{"version":3,"file":"shared-lib.CxTFF019.mjs","names":["fonts","css","className","t","x","y","n","d","to","i","e","className","Lenis","useRef","_Lenis","_Fragment","useMemo","useMemo","useMemo","useRef","useCallback","useState","useMemo","e","v","t","I","e","n","r","x","N","R","P","q","i","s","a","o","C","J","u","l","h","c","d","g","p","U","S","L","B","E","y","c","e","u","t","a","f","l","d","p","n","o","r","i"],"sources":["https:/framerusercontent.com/modules/9tbleeARZKK4WCyVTUSl/uZcRDllF2DJwDgDZAS1w/R4bJKYfBm.js","https:/unpkg.com/lenis@1.3.4/dist/lenis.mjs","https:/framerusercontent.com/modules/bSeEZJm22jsjERCOGQvq/vrNQPHqQW0TudAO1Gj3a/Lenis.js","https:/framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js","https:/framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js","https:/framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js","https:/framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js","https:/framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js","https:/framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js","https:/framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js","https:/framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js","https:/framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js","https:/framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js","https:/framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js","https:/framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js","https:/framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js","https:/framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js","https:/framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js","https:/framerusercontent.com/modules/lRDHiNWNVWmE0lqtoVHP/7qT0r3So12155VV5Jq5x/Video.js","https:/framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm-0.js","https:/framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm-1.js","https:/framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js","https:/framerusercontent.com/modules/hvbOmhmztdOTuu18ONcF/KZWFKPR40Zi6ksEG8FIw/WP6eAjcnm.js","https:/framerusercontent.com/modules/fnugWr0671olTnaRMm74/IJJ4etuH11kvCIsHnOig/siteMetadata.js"],"sourcesContent":["// Generated by Framer (2f96024)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;DM Sans-regular\",\"GF;DM Sans-700\",\"GF;DM Sans-700italic\",\"GF;DM Sans-italic\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"DM Sans\",source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/dmsans/v16/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxhS2f3ZGMZpg.woff2\",weight:\"400\"},{family:\"DM Sans\",source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/dmsans/v16/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwARZthS2f3ZGMZpg.woff2\",weight:\"700\"},{family:\"DM Sans\",source:\"google\",style:\"italic\",url:\"https://fonts.gstatic.com/s/dmsans/v16/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9uCm32RmYJpso5.woff2\",weight:\"700\"},{family:\"DM Sans\",source:\"google\",style:\"italic\",url:\"https://fonts.gstatic.com/s/dmsans/v16/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDW32RmYJpso5.woff2\",weight:\"400\"}]}];export const css=['.framer-mMexl .framer-styles-preset-1yg8h9f:not(.rich-text-wrapper), .framer-mMexl .framer-styles-preset-1yg8h9f.rich-text-wrapper p { --framer-font-family: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-bold: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-bold-italic: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-italic: \"DM Sans\", \"DM Sans 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.1px; --framer-line-height: 1.3em; --framer-paragraph-spacing: 16px; --framer-text-alignment: left; --framer-text-color: var(--token-0ba7cc43-9dd6-43f5-bf85-fd56e07a2fea, #2a3132); --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-mMexl .framer-styles-preset-1yg8h9f:not(.rich-text-wrapper), .framer-mMexl .framer-styles-preset-1yg8h9f.rich-text-wrapper p { --framer-font-family: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-bold: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-bold-italic: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-italic: \"DM Sans\", \"DM Sans 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: 0px; --framer-line-height: 1.3em; --framer-paragraph-spacing: 16px; --framer-text-alignment: left; --framer-text-color: var(--token-0ba7cc43-9dd6-43f5-bf85-fd56e07a2fea, #2a3132); --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-mMexl .framer-styles-preset-1yg8h9f:not(.rich-text-wrapper), .framer-mMexl .framer-styles-preset-1yg8h9f.rich-text-wrapper p { --framer-font-family: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-bold: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-bold-italic: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-italic: \"DM Sans\", \"DM Sans 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: 0px; --framer-line-height: 1.4em; --framer-paragraph-spacing: 16px; --framer-text-alignment: left; --framer-text-color: var(--token-0ba7cc43-9dd6-43f5-bf85-fd56e07a2fea, #2a3132); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-mMexl\";\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\"}}}","// package.json\nvar version = \"1.3.4\";\n\n// packages/core/src/maths.ts\nfunction clamp(min, input, max) {\n  return Math.max(min, Math.min(input, max));\n}\nfunction lerp(x, y, t) {\n  return (1 - t) * x + t * y;\n}\nfunction damp(x, y, lambda, deltaTime) {\n  return lerp(x, y, 1 - Math.exp(-lambda * deltaTime));\n}\nfunction modulo(n, d) {\n  return (n % d + d) % d;\n}\n\n// packages/core/src/animate.ts\nvar Animate = class {\n  isRunning = false;\n  value = 0;\n  from = 0;\n  to = 0;\n  currentTime = 0;\n  // These are instanciated in the fromTo method\n  lerp;\n  duration;\n  easing;\n  onUpdate;\n  /**\n   * Advance the animation by the given delta time\n   *\n   * @param deltaTime - The time in seconds to advance the animation\n   */\n  advance(deltaTime) {\n    if (!this.isRunning) return;\n    let completed = false;\n    if (this.duration && this.easing) {\n      this.currentTime += deltaTime;\n      const linearProgress = clamp(0, this.currentTime / this.duration, 1);\n      completed = linearProgress >= 1;\n      const easedProgress = completed ? 1 : this.easing(linearProgress);\n      this.value = this.from + (this.to - this.from) * easedProgress;\n    } else if (this.lerp) {\n      this.value = damp(this.value, this.to, this.lerp * 60, deltaTime);\n      if (Math.round(this.value) === this.to) {\n        this.value = this.to;\n        completed = true;\n      }\n    } else {\n      this.value = this.to;\n      completed = true;\n    }\n    if (completed) {\n      this.stop();\n    }\n    this.onUpdate?.(this.value, completed);\n  }\n  /** Stop the animation */\n  stop() {\n    this.isRunning = false;\n  }\n  /**\n   * Set up the animation from a starting value to an ending value\n   * with optional parameters for lerping, duration, easing, and onUpdate callback\n   *\n   * @param from - The starting value\n   * @param to - The ending value\n   * @param options - Options for the animation\n   */\n  fromTo(from, to, { lerp: lerp2, duration, easing, onStart, onUpdate }) {\n    this.from = this.value = from;\n    this.to = to;\n    this.lerp = lerp2;\n    this.duration = duration;\n    this.easing = easing;\n    this.currentTime = 0;\n    this.isRunning = true;\n    onStart?.();\n    this.onUpdate = onUpdate;\n  }\n};\n\n// packages/core/src/debounce.ts\nfunction debounce(callback, delay) {\n  let timer;\n  return function(...args) {\n    let context = this;\n    clearTimeout(timer);\n    timer = setTimeout(() => {\n      timer = void 0;\n      callback.apply(context, args);\n    }, delay);\n  };\n}\n\n// packages/core/src/dimensions.ts\nvar Dimensions = class {\n  constructor(wrapper, content, { autoResize = true, debounce: debounceValue = 250 } = {}) {\n    this.wrapper = wrapper;\n    this.content = content;\n    if (autoResize) {\n      this.debouncedResize = debounce(this.resize, debounceValue);\n      if (this.wrapper instanceof Window) {\n        window.addEventListener(\"resize\", this.debouncedResize, false);\n      } else {\n        this.wrapperResizeObserver = new ResizeObserver(this.debouncedResize);\n        this.wrapperResizeObserver.observe(this.wrapper);\n      }\n      this.contentResizeObserver = new ResizeObserver(this.debouncedResize);\n      this.contentResizeObserver.observe(this.content);\n    }\n    this.resize();\n  }\n  width = 0;\n  height = 0;\n  scrollHeight = 0;\n  scrollWidth = 0;\n  // These are instanciated in the constructor as they need information from the options\n  debouncedResize;\n  wrapperResizeObserver;\n  contentResizeObserver;\n  destroy() {\n    this.wrapperResizeObserver?.disconnect();\n    this.contentResizeObserver?.disconnect();\n    if (this.wrapper === window && this.debouncedResize) {\n      window.removeEventListener(\"resize\", this.debouncedResize, false);\n    }\n  }\n  resize = () => {\n    this.onWrapperResize();\n    this.onContentResize();\n  };\n  onWrapperResize = () => {\n    if (this.wrapper instanceof Window) {\n      this.width = window.innerWidth;\n      this.height = window.innerHeight;\n    } else {\n      this.width = this.wrapper.clientWidth;\n      this.height = this.wrapper.clientHeight;\n    }\n  };\n  onContentResize = () => {\n    if (this.wrapper instanceof Window) {\n      this.scrollHeight = this.content.scrollHeight;\n      this.scrollWidth = this.content.scrollWidth;\n    } else {\n      this.scrollHeight = this.wrapper.scrollHeight;\n      this.scrollWidth = this.wrapper.scrollWidth;\n    }\n  };\n  get limit() {\n    return {\n      x: this.scrollWidth - this.width,\n      y: this.scrollHeight - this.height\n    };\n  }\n};\n\n// packages/core/src/emitter.ts\nvar Emitter = class {\n  events = {};\n  /**\n   * Emit an event with the given data\n   * @param event Event name\n   * @param args Data to pass to the event handlers\n   */\n  emit(event, ...args) {\n    let callbacks = this.events[event] || [];\n    for (let i = 0, length = callbacks.length; i < length; i++) {\n      callbacks[i]?.(...args);\n    }\n  }\n  /**\n   * Add a callback to the event\n   * @param event Event name\n   * @param cb Callback function\n   * @returns Unsubscribe function\n   */\n  on(event, cb) {\n    this.events[event]?.push(cb) || (this.events[event] = [cb]);\n    return () => {\n      this.events[event] = this.events[event]?.filter((i) => cb !== i);\n    };\n  }\n  /**\n   * Remove a callback from the event\n   * @param event Event name\n   * @param callback Callback function\n   */\n  off(event, callback) {\n    this.events[event] = this.events[event]?.filter((i) => callback !== i);\n  }\n  /**\n   * Remove all event listeners and clean up\n   */\n  destroy() {\n    this.events = {};\n  }\n};\n\n// packages/core/src/virtual-scroll.ts\nvar LINE_HEIGHT = 100 / 6;\nvar listenerOptions = { passive: false };\nvar VirtualScroll = class {\n  constructor(element, options = { wheelMultiplier: 1, touchMultiplier: 1 }) {\n    this.element = element;\n    this.options = options;\n    window.addEventListener(\"resize\", this.onWindowResize, false);\n    this.onWindowResize();\n    this.element.addEventListener(\"wheel\", this.onWheel, listenerOptions);\n    this.element.addEventListener(\n      \"touchstart\",\n      this.onTouchStart,\n      listenerOptions\n    );\n    this.element.addEventListener(\n      \"touchmove\",\n      this.onTouchMove,\n      listenerOptions\n    );\n    this.element.addEventListener(\"touchend\", this.onTouchEnd, listenerOptions);\n  }\n  touchStart = {\n    x: 0,\n    y: 0\n  };\n  lastDelta = {\n    x: 0,\n    y: 0\n  };\n  window = {\n    width: 0,\n    height: 0\n  };\n  emitter = new Emitter();\n  /**\n   * Add an event listener for the given event and callback\n   *\n   * @param event Event name\n   * @param callback Callback function\n   */\n  on(event, callback) {\n    return this.emitter.on(event, callback);\n  }\n  /** Remove all event listeners and clean up */\n  destroy() {\n    this.emitter.destroy();\n    window.removeEventListener(\"resize\", this.onWindowResize, false);\n    this.element.removeEventListener(\"wheel\", this.onWheel, listenerOptions);\n    this.element.removeEventListener(\n      \"touchstart\",\n      this.onTouchStart,\n      listenerOptions\n    );\n    this.element.removeEventListener(\n      \"touchmove\",\n      this.onTouchMove,\n      listenerOptions\n    );\n    this.element.removeEventListener(\n      \"touchend\",\n      this.onTouchEnd,\n      listenerOptions\n    );\n  }\n  /**\n   * Event handler for 'touchstart' event\n   *\n   * @param event Touch event\n   */\n  onTouchStart = (event) => {\n    const { clientX, clientY } = event.targetTouches ? event.targetTouches[0] : event;\n    this.touchStart.x = clientX;\n    this.touchStart.y = clientY;\n    this.lastDelta = {\n      x: 0,\n      y: 0\n    };\n    this.emitter.emit(\"scroll\", {\n      deltaX: 0,\n      deltaY: 0,\n      event\n    });\n  };\n  /** Event handler for 'touchmove' event */\n  onTouchMove = (event) => {\n    const { clientX, clientY } = event.targetTouches ? event.targetTouches[0] : event;\n    const deltaX = -(clientX - this.touchStart.x) * this.options.touchMultiplier;\n    const deltaY = -(clientY - this.touchStart.y) * this.options.touchMultiplier;\n    this.touchStart.x = clientX;\n    this.touchStart.y = clientY;\n    this.lastDelta = {\n      x: deltaX,\n      y: deltaY\n    };\n    this.emitter.emit(\"scroll\", {\n      deltaX,\n      deltaY,\n      event\n    });\n  };\n  onTouchEnd = (event) => {\n    this.emitter.emit(\"scroll\", {\n      deltaX: this.lastDelta.x,\n      deltaY: this.lastDelta.y,\n      event\n    });\n  };\n  /** Event handler for 'wheel' event */\n  onWheel = (event) => {\n    let { deltaX, deltaY, deltaMode } = event;\n    const multiplierX = deltaMode === 1 ? LINE_HEIGHT : deltaMode === 2 ? this.window.width : 1;\n    const multiplierY = deltaMode === 1 ? LINE_HEIGHT : deltaMode === 2 ? this.window.height : 1;\n    deltaX *= multiplierX;\n    deltaY *= multiplierY;\n    deltaX *= this.options.wheelMultiplier;\n    deltaY *= this.options.wheelMultiplier;\n    this.emitter.emit(\"scroll\", { deltaX, deltaY, event });\n  };\n  onWindowResize = () => {\n    this.window = {\n      width: window.innerWidth,\n      height: window.innerHeight\n    };\n  };\n};\n\n// packages/core/src/lenis.ts\nvar defaultEasing = (t) => Math.min(1, 1.001 - Math.pow(2, -10 * t));\nvar Lenis = class {\n  _isScrolling = false;\n  // true when scroll is animating\n  _isStopped = false;\n  // true if user should not be able to scroll - enable/disable programmatically\n  _isLocked = false;\n  // same as isStopped but enabled/disabled when scroll reaches target\n  _preventNextNativeScrollEvent = false;\n  _resetVelocityTimeout = null;\n  __rafID = null;\n  /**\n   * Whether or not the user is touching the screen\n   */\n  isTouching;\n  /**\n   * The time in ms since the lenis instance was created\n   */\n  time = 0;\n  /**\n   * User data that will be forwarded through the scroll event\n   *\n   * @example\n   * lenis.scrollTo(100, {\n   *   userData: {\n   *     foo: 'bar'\n   *   }\n   * })\n   */\n  userData = {};\n  /**\n   * The last velocity of the scroll\n   */\n  lastVelocity = 0;\n  /**\n   * The current velocity of the scroll\n   */\n  velocity = 0;\n  /**\n   * The direction of the scroll\n   */\n  direction = 0;\n  /**\n   * The options passed to the lenis instance\n   */\n  options;\n  /**\n   * The target scroll value\n   */\n  targetScroll;\n  /**\n   * The animated scroll value\n   */\n  animatedScroll;\n  // These are instanciated here as they don't need information from the options\n  animate = new Animate();\n  emitter = new Emitter();\n  // These are instanciated in the constructor as they need information from the options\n  dimensions;\n  // This is not private because it's used in the Snap class\n  virtualScroll;\n  constructor({\n    wrapper = window,\n    content = document.documentElement,\n    eventsTarget = wrapper,\n    smoothWheel = true,\n    syncTouch = false,\n    syncTouchLerp = 0.075,\n    touchInertiaMultiplier = 35,\n    duration,\n    // in seconds\n    easing,\n    lerp: lerp2 = 0.1,\n    infinite = false,\n    orientation = \"vertical\",\n    // vertical, horizontal\n    gestureOrientation = \"vertical\",\n    // vertical, horizontal, both\n    touchMultiplier = 1,\n    wheelMultiplier = 1,\n    autoResize = true,\n    prevent,\n    virtualScroll,\n    overscroll = true,\n    autoRaf = false,\n    anchors = false,\n    autoToggle = false,\n    // https://caniuse.com/?search=transition-behavior\n    allowNestedScroll = false,\n    __experimental__naiveDimensions = false\n  } = {}) {\n    window.lenisVersion = version;\n    if (!wrapper || wrapper === document.documentElement) {\n      wrapper = window;\n    }\n    if (typeof duration === \"number\" && typeof easing !== \"function\") {\n      easing = defaultEasing;\n    } else if (typeof easing === \"function\" && typeof duration !== \"number\") {\n      duration = 1;\n    }\n    this.options = {\n      wrapper,\n      content,\n      eventsTarget,\n      smoothWheel,\n      syncTouch,\n      syncTouchLerp,\n      touchInertiaMultiplier,\n      duration,\n      easing,\n      lerp: lerp2,\n      infinite,\n      gestureOrientation,\n      orientation,\n      touchMultiplier,\n      wheelMultiplier,\n      autoResize,\n      prevent,\n      virtualScroll,\n      overscroll,\n      autoRaf,\n      anchors,\n      autoToggle,\n      allowNestedScroll,\n      __experimental__naiveDimensions\n    };\n    this.dimensions = new Dimensions(wrapper, content, { autoResize });\n    this.updateClassName();\n    this.targetScroll = this.animatedScroll = this.actualScroll;\n    this.options.wrapper.addEventListener(\"scroll\", this.onNativeScroll, false);\n    this.options.wrapper.addEventListener(\"scrollend\", this.onScrollEnd, {\n      capture: true\n    });\n    if (this.options.anchors && this.options.wrapper === window) {\n      this.options.wrapper.addEventListener(\n        \"click\",\n        this.onClick,\n        false\n      );\n    }\n    this.options.wrapper.addEventListener(\n      \"pointerdown\",\n      this.onPointerDown,\n      false\n    );\n    this.virtualScroll = new VirtualScroll(eventsTarget, {\n      touchMultiplier,\n      wheelMultiplier\n    });\n    this.virtualScroll.on(\"scroll\", this.onVirtualScroll);\n    if (this.options.autoToggle) {\n      this.rootElement.addEventListener(\"transitionend\", this.onTransitionEnd, {\n        passive: true\n      });\n    }\n    if (this.options.autoRaf) {\n      this.__rafID = requestAnimationFrame(this.raf);\n    }\n  }\n  /**\n   * Destroy the lenis instance, remove all event listeners and clean up the class name\n   */\n  destroy() {\n    this.emitter.destroy();\n    this.options.wrapper.removeEventListener(\n      \"scroll\",\n      this.onNativeScroll,\n      false\n    );\n    this.options.wrapper.removeEventListener(\"scrollend\", this.onScrollEnd, {\n      capture: true\n    });\n    this.options.wrapper.removeEventListener(\n      \"pointerdown\",\n      this.onPointerDown,\n      false\n    );\n    if (this.options.anchors && this.options.wrapper === window) {\n      this.options.wrapper.removeEventListener(\n        \"click\",\n        this.onClick,\n        false\n      );\n    }\n    this.virtualScroll.destroy();\n    this.dimensions.destroy();\n    this.cleanUpClassName();\n    if (this.__rafID) {\n      cancelAnimationFrame(this.__rafID);\n    }\n  }\n  on(event, callback) {\n    return this.emitter.on(event, callback);\n  }\n  off(event, callback) {\n    return this.emitter.off(event, callback);\n  }\n  onScrollEnd = (e) => {\n    if (!(e instanceof CustomEvent)) {\n      if (this.isScrolling === \"smooth\" || this.isScrolling === false) {\n        e.stopPropagation();\n      }\n    }\n  };\n  dispatchScrollendEvent = () => {\n    this.options.wrapper.dispatchEvent(\n      new CustomEvent(\"scrollend\", {\n        bubbles: this.options.wrapper === window,\n        // cancelable: false,\n        detail: {\n          lenisScrollEnd: true\n        }\n      })\n    );\n  };\n  onTransitionEnd = (event) => {\n    if (event.propertyName.includes(\"overflow\")) {\n      const property = this.isHorizontal ? \"overflow-x\" : \"overflow-y\";\n      const overflow = getComputedStyle(this.rootElement)[property];\n      if ([\"hidden\", \"clip\"].includes(overflow)) {\n        this.stop();\n      } else {\n        this.start();\n      }\n    }\n  };\n  setScroll(scroll) {\n    if (this.isHorizontal) {\n      this.options.wrapper.scrollTo({ left: scroll, behavior: \"instant\" });\n    } else {\n      this.options.wrapper.scrollTo({ top: scroll, behavior: \"instant\" });\n    }\n  }\n  onClick = (event) => {\n    const path = event.composedPath();\n    const anchor = path.find(\n      (node) => node instanceof HTMLAnchorElement && (node.getAttribute(\"href\")?.startsWith(\"#\") || node.getAttribute(\"href\")?.startsWith(\"/#\") || node.getAttribute(\"href\")?.startsWith(\"./#\"))\n    );\n    if (anchor) {\n      const id = anchor.getAttribute(\"href\");\n      if (id) {\n        const options = typeof this.options.anchors === \"object\" && this.options.anchors ? this.options.anchors : void 0;\n        let target = `#${id.split(\"#\")[1]}`;\n        if ([\"#\", \"/#\", \"./#\", \"#top\", \"/#top\", \"./#top\"].includes(id)) {\n          target = 0;\n        }\n        this.scrollTo(target, options);\n      }\n    }\n  };\n  onPointerDown = (event) => {\n    if (event.button === 1) {\n      this.reset();\n    }\n  };\n  onVirtualScroll = (data) => {\n    if (typeof this.options.virtualScroll === \"function\" && this.options.virtualScroll(data) === false)\n      return;\n    const { deltaX, deltaY, event } = data;\n    this.emitter.emit(\"virtual-scroll\", { deltaX, deltaY, event });\n    if (event.ctrlKey) return;\n    if (event.lenisStopPropagation) return;\n    const isTouch = event.type.includes(\"touch\");\n    const isWheel = event.type.includes(\"wheel\");\n    this.isTouching = event.type === \"touchstart\" || event.type === \"touchmove\";\n    const isClickOrTap = deltaX === 0 && deltaY === 0;\n    const isTapToStop = this.options.syncTouch && isTouch && event.type === \"touchstart\" && isClickOrTap && !this.isStopped && !this.isLocked;\n    if (isTapToStop) {\n      this.reset();\n      return;\n    }\n    const isUnknownGesture = this.options.gestureOrientation === \"vertical\" && deltaY === 0 || this.options.gestureOrientation === \"horizontal\" && deltaX === 0;\n    if (isClickOrTap || isUnknownGesture) {\n      return;\n    }\n    let composedPath = event.composedPath();\n    composedPath = composedPath.slice(0, composedPath.indexOf(this.rootElement));\n    const prevent = this.options.prevent;\n    if (!!composedPath.find(\n      (node) => node instanceof HTMLElement && (typeof prevent === \"function\" && prevent?.(node) || node.hasAttribute?.(\"data-lenis-prevent\") || isTouch && node.hasAttribute?.(\"data-lenis-prevent-touch\") || isWheel && node.hasAttribute?.(\"data-lenis-prevent-wheel\") || this.options.allowNestedScroll && this.checkNestedScroll(node, { deltaX, deltaY }))\n    ))\n      return;\n    if (this.isStopped || this.isLocked) {\n      event.preventDefault();\n      return;\n    }\n    const isSmooth = this.options.syncTouch && isTouch || this.options.smoothWheel && isWheel;\n    if (!isSmooth) {\n      this.isScrolling = \"native\";\n      this.animate.stop();\n      event.lenisStopPropagation = true;\n      return;\n    }\n    let delta = deltaY;\n    if (this.options.gestureOrientation === \"both\") {\n      delta = Math.abs(deltaY) > Math.abs(deltaX) ? deltaY : deltaX;\n    } else if (this.options.gestureOrientation === \"horizontal\") {\n      delta = deltaX;\n    }\n    if (!this.options.overscroll || this.options.infinite || this.options.wrapper !== window && (this.animatedScroll > 0 && this.animatedScroll < this.limit || this.animatedScroll === 0 && deltaY > 0 || this.animatedScroll === this.limit && deltaY < 0)) {\n      event.lenisStopPropagation = true;\n    }\n    event.preventDefault();\n    const isSyncTouch = isTouch && this.options.syncTouch;\n    const isTouchEnd = isTouch && event.type === \"touchend\";\n    const hasTouchInertia = isTouchEnd && Math.abs(delta) > 5;\n    if (hasTouchInertia) {\n      delta = this.velocity * this.options.touchInertiaMultiplier;\n    }\n    this.scrollTo(this.targetScroll + delta, {\n      programmatic: false,\n      ...isSyncTouch ? {\n        lerp: hasTouchInertia ? this.options.syncTouchLerp : 1\n        // immediate: !hasTouchInertia,\n      } : {\n        lerp: this.options.lerp,\n        duration: this.options.duration,\n        easing: this.options.easing\n      }\n    });\n  };\n  /**\n   * Force lenis to recalculate the dimensions\n   */\n  resize() {\n    this.dimensions.resize();\n    this.animatedScroll = this.targetScroll = this.actualScroll;\n    this.emit();\n  }\n  emit() {\n    this.emitter.emit(\"scroll\", this);\n  }\n  onNativeScroll = () => {\n    if (this._resetVelocityTimeout !== null) {\n      clearTimeout(this._resetVelocityTimeout);\n      this._resetVelocityTimeout = null;\n    }\n    if (this._preventNextNativeScrollEvent) {\n      this._preventNextNativeScrollEvent = false;\n      return;\n    }\n    if (this.isScrolling === false || this.isScrolling === \"native\") {\n      const lastScroll = this.animatedScroll;\n      this.animatedScroll = this.targetScroll = this.actualScroll;\n      this.lastVelocity = this.velocity;\n      this.velocity = this.animatedScroll - lastScroll;\n      this.direction = Math.sign(\n        this.animatedScroll - lastScroll\n      );\n      if (!this.isStopped) {\n        this.isScrolling = \"native\";\n      }\n      this.emit();\n      if (this.velocity !== 0) {\n        this._resetVelocityTimeout = setTimeout(() => {\n          this.lastVelocity = this.velocity;\n          this.velocity = 0;\n          this.isScrolling = false;\n          this.emit();\n        }, 400);\n      }\n    }\n  };\n  reset() {\n    this.isLocked = false;\n    this.isScrolling = false;\n    this.animatedScroll = this.targetScroll = this.actualScroll;\n    this.lastVelocity = this.velocity = 0;\n    this.animate.stop();\n  }\n  /**\n   * Start lenis scroll after it has been stopped\n   */\n  start() {\n    if (!this.isStopped) return;\n    this.reset();\n    this.isStopped = false;\n    this.emit();\n  }\n  /**\n   * Stop lenis scroll\n   */\n  stop() {\n    if (this.isStopped) return;\n    this.reset();\n    this.isStopped = true;\n    this.emit();\n  }\n  /**\n   * RequestAnimationFrame for lenis\n   *\n   * @param time The time in ms from an external clock like `requestAnimationFrame` or Tempus\n   */\n  raf = (time) => {\n    const deltaTime = time - (this.time || time);\n    this.time = time;\n    this.animate.advance(deltaTime * 1e-3);\n    if (this.options.autoRaf) {\n      this.__rafID = requestAnimationFrame(this.raf);\n    }\n  };\n  /**\n   * Scroll to a target value\n   *\n   * @param target The target value to scroll to\n   * @param options The options for the scroll\n   *\n   * @example\n   * lenis.scrollTo(100, {\n   *   offset: 100,\n   *   duration: 1,\n   *   easing: (t) => 1 - Math.cos((t * Math.PI) / 2),\n   *   lerp: 0.1,\n   *   onStart: () => {\n   *     console.log('onStart')\n   *   },\n   *   onComplete: () => {\n   *     console.log('onComplete')\n   *   },\n   * })\n   */\n  scrollTo(target, {\n    offset = 0,\n    immediate = false,\n    lock = false,\n    duration = this.options.duration,\n    easing = this.options.easing,\n    lerp: lerp2 = this.options.lerp,\n    onStart,\n    onComplete,\n    force = false,\n    // scroll even if stopped\n    programmatic = true,\n    // called from outside of the class\n    userData\n  } = {}) {\n    if ((this.isStopped || this.isLocked) && !force) return;\n    if (typeof target === \"string\" && [\"top\", \"left\", \"start\"].includes(target)) {\n      target = 0;\n    } else if (typeof target === \"string\" && [\"bottom\", \"right\", \"end\"].includes(target)) {\n      target = this.limit;\n    } else {\n      let node;\n      if (typeof target === \"string\") {\n        node = document.querySelector(target);\n      } else if (target instanceof HTMLElement && target?.nodeType) {\n        node = target;\n      }\n      if (node) {\n        if (this.options.wrapper !== window) {\n          const wrapperRect = this.rootElement.getBoundingClientRect();\n          offset -= this.isHorizontal ? wrapperRect.left : wrapperRect.top;\n        }\n        const rect = node.getBoundingClientRect();\n        target = (this.isHorizontal ? rect.left : rect.top) + this.animatedScroll;\n      }\n    }\n    if (typeof target !== \"number\") return;\n    target += offset;\n    target = Math.round(target);\n    if (this.options.infinite) {\n      if (programmatic) {\n        this.targetScroll = this.animatedScroll = this.scroll;\n        const distance = target - this.animatedScroll;\n        if (distance > this.limit / 2) {\n          target = target - this.limit;\n        } else if (distance < -this.limit / 2) {\n          target = target + this.limit;\n        }\n      }\n    } else {\n      target = clamp(0, target, this.limit);\n    }\n    if (target === this.targetScroll) {\n      onStart?.(this);\n      onComplete?.(this);\n      return;\n    }\n    this.userData = userData ?? {};\n    if (immediate) {\n      this.animatedScroll = this.targetScroll = target;\n      this.setScroll(this.scroll);\n      this.reset();\n      this.preventNextNativeScrollEvent();\n      this.emit();\n      onComplete?.(this);\n      this.userData = {};\n      requestAnimationFrame(() => {\n        this.dispatchScrollendEvent();\n      });\n      return;\n    }\n    if (!programmatic) {\n      this.targetScroll = target;\n    }\n    if (typeof duration === \"number\" && typeof easing !== \"function\") {\n      easing = defaultEasing;\n    } else if (typeof easing === \"function\" && typeof duration !== \"number\") {\n      duration = 1;\n    }\n    this.animate.fromTo(this.animatedScroll, target, {\n      duration,\n      easing,\n      lerp: lerp2,\n      onStart: () => {\n        if (lock) this.isLocked = true;\n        this.isScrolling = \"smooth\";\n        onStart?.(this);\n      },\n      onUpdate: (value, completed) => {\n        this.isScrolling = \"smooth\";\n        this.lastVelocity = this.velocity;\n        this.velocity = value - this.animatedScroll;\n        this.direction = Math.sign(this.velocity);\n        this.animatedScroll = value;\n        this.setScroll(this.scroll);\n        if (programmatic) {\n          this.targetScroll = value;\n        }\n        if (!completed) this.emit();\n        if (completed) {\n          this.reset();\n          this.emit();\n          onComplete?.(this);\n          this.userData = {};\n          requestAnimationFrame(() => {\n            this.dispatchScrollendEvent();\n          });\n          this.preventNextNativeScrollEvent();\n        }\n      }\n    });\n  }\n  preventNextNativeScrollEvent() {\n    this._preventNextNativeScrollEvent = true;\n    requestAnimationFrame(() => {\n      this._preventNextNativeScrollEvent = false;\n    });\n  }\n  checkNestedScroll(node, { deltaX, deltaY }) {\n    const time = Date.now();\n    const cache = node._lenis ??= {};\n    let hasOverflowX, hasOverflowY, isScrollableX, isScrollableY, scrollWidth, scrollHeight, clientWidth, clientHeight;\n    const gestureOrientation = this.options.gestureOrientation;\n    if (time - (cache.time ?? 0) > 2e3) {\n      cache.time = Date.now();\n      const computedStyle = window.getComputedStyle(node);\n      cache.computedStyle = computedStyle;\n      const overflowXString = computedStyle.overflowX;\n      const overflowYString = computedStyle.overflowY;\n      hasOverflowX = [\"auto\", \"overlay\", \"scroll\"].includes(overflowXString);\n      hasOverflowY = [\"auto\", \"overlay\", \"scroll\"].includes(overflowYString);\n      cache.hasOverflowX = hasOverflowX;\n      cache.hasOverflowY = hasOverflowY;\n      if (!hasOverflowX && !hasOverflowY) return false;\n      if (gestureOrientation === \"vertical\" && !hasOverflowY) return false;\n      if (gestureOrientation === \"horizontal\" && !hasOverflowX) return false;\n      scrollWidth = node.scrollWidth;\n      scrollHeight = node.scrollHeight;\n      clientWidth = node.clientWidth;\n      clientHeight = node.clientHeight;\n      isScrollableX = scrollWidth > clientWidth;\n      isScrollableY = scrollHeight > clientHeight;\n      cache.isScrollableX = isScrollableX;\n      cache.isScrollableY = isScrollableY;\n      cache.scrollWidth = scrollWidth;\n      cache.scrollHeight = scrollHeight;\n      cache.clientWidth = clientWidth;\n      cache.clientHeight = clientHeight;\n    } else {\n      isScrollableX = cache.isScrollableX;\n      isScrollableY = cache.isScrollableY;\n      hasOverflowX = cache.hasOverflowX;\n      hasOverflowY = cache.hasOverflowY;\n      scrollWidth = cache.scrollWidth;\n      scrollHeight = cache.scrollHeight;\n      clientWidth = cache.clientWidth;\n      clientHeight = cache.clientHeight;\n    }\n    if (!hasOverflowX && !hasOverflowY || !isScrollableX && !isScrollableY) {\n      return false;\n    }\n    if (gestureOrientation === \"vertical\" && (!hasOverflowY || !isScrollableY))\n      return false;\n    if (gestureOrientation === \"horizontal\" && (!hasOverflowX || !isScrollableX))\n      return false;\n    let orientation;\n    if (gestureOrientation === \"horizontal\") {\n      orientation = \"x\";\n    } else if (gestureOrientation === \"vertical\") {\n      orientation = \"y\";\n    } else {\n      const isScrollingX = deltaX !== 0;\n      const isScrollingY = deltaY !== 0;\n      if (isScrollingX && hasOverflowX && isScrollableX) {\n        orientation = \"x\";\n      }\n      if (isScrollingY && hasOverflowY && isScrollableY) {\n        orientation = \"y\";\n      }\n    }\n    if (!orientation) return false;\n    let scroll, maxScroll, delta, hasOverflow, isScrollable;\n    if (orientation === \"x\") {\n      scroll = node.scrollLeft;\n      maxScroll = scrollWidth - clientWidth;\n      delta = deltaX;\n      hasOverflow = hasOverflowX;\n      isScrollable = isScrollableX;\n    } else if (orientation === \"y\") {\n      scroll = node.scrollTop;\n      maxScroll = scrollHeight - clientHeight;\n      delta = deltaY;\n      hasOverflow = hasOverflowY;\n      isScrollable = isScrollableY;\n    } else {\n      return false;\n    }\n    const willScroll = delta > 0 ? scroll < maxScroll : scroll > 0;\n    return willScroll && hasOverflow && isScrollable;\n  }\n  /**\n   * The root element on which lenis is instanced\n   */\n  get rootElement() {\n    return this.options.wrapper === window ? document.documentElement : this.options.wrapper;\n  }\n  /**\n   * The limit which is the maximum scroll value\n   */\n  get limit() {\n    if (this.options.__experimental__naiveDimensions) {\n      if (this.isHorizontal) {\n        return this.rootElement.scrollWidth - this.rootElement.clientWidth;\n      } else {\n        return this.rootElement.scrollHeight - this.rootElement.clientHeight;\n      }\n    } else {\n      return this.dimensions.limit[this.isHorizontal ? \"x\" : \"y\"];\n    }\n  }\n  /**\n   * Whether or not the scroll is horizontal\n   */\n  get isHorizontal() {\n    return this.options.orientation === \"horizontal\";\n  }\n  /**\n   * The actual scroll value\n   */\n  get actualScroll() {\n    const wrapper = this.options.wrapper;\n    return this.isHorizontal ? wrapper.scrollX ?? wrapper.scrollLeft : wrapper.scrollY ?? wrapper.scrollTop;\n  }\n  /**\n   * The current scroll value\n   */\n  get scroll() {\n    return this.options.infinite ? modulo(this.animatedScroll, this.limit) : this.animatedScroll;\n  }\n  /**\n   * The progress of the scroll relative to the limit\n   */\n  get progress() {\n    return this.limit === 0 ? 1 : this.scroll / this.limit;\n  }\n  /**\n   * Current scroll state\n   */\n  get isScrolling() {\n    return this._isScrolling;\n  }\n  set isScrolling(value) {\n    if (this._isScrolling !== value) {\n      this._isScrolling = value;\n      this.updateClassName();\n    }\n  }\n  /**\n   * Check if lenis is stopped\n   */\n  get isStopped() {\n    return this._isStopped;\n  }\n  set isStopped(value) {\n    if (this._isStopped !== value) {\n      this._isStopped = value;\n      this.updateClassName();\n    }\n  }\n  /**\n   * Check if lenis is locked\n   */\n  get isLocked() {\n    return this._isLocked;\n  }\n  set isLocked(value) {\n    if (this._isLocked !== value) {\n      this._isLocked = value;\n      this.updateClassName();\n    }\n  }\n  /**\n   * Check if lenis is smooth scrolling\n   */\n  get isSmooth() {\n    return this.isScrolling === \"smooth\";\n  }\n  /**\n   * The class name applied to the wrapper element\n   */\n  get className() {\n    let className = \"lenis\";\n    if (this.options.autoToggle) className += \" lenis-autoToggle\";\n    if (this.isStopped) className += \" lenis-stopped\";\n    if (this.isLocked) className += \" lenis-locked\";\n    if (this.isScrolling) className += \" lenis-scrolling\";\n    if (this.isScrolling === \"smooth\") className += \" lenis-smooth\";\n    return className;\n  }\n  updateClassName() {\n    this.cleanUpClassName();\n    this.rootElement.className = `${this.rootElement.className} ${this.className}`.trim();\n  }\n  cleanUpClassName() {\n    this.rootElement.className = this.rootElement.className.replace(/lenis(-\\w+)?/g, \"\").trim();\n  }\n};\nexport {\n  Lenis as default\n};\n//# sourceMappingURL=lenis.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.4/dist/lenis.mjs\";import{useEffect,useRef}from\"react\";/**\n * @framerSupportedLayoutHeight any\n * @framerSupportedLayoutHeight any\n * @framerDisableUnlink\n */export default function Lenis({smooth,easing,infinite,orientation,intensity,children}){const wrapperRef=useRef();const contentRef=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,infinite,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\"});window.lenis=lenis;return()=>{lenis.destroy();};},[children]);return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"link\",{href:\"https://unpkg.com/lenis@1.3.3/dist/lenis.css\",rel:\"stylesheet\"}),/*#__PURE__*/_jsx(\"style\",{children:`.lenis-content * {\n                    width: 100% !important;\n                }`}),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%\"},className:\"lenis-content\",children:children})})]});}addPropertyControls(Lenis,{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;}},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\",description:\"Cooked and served by [darkroom.engineering](https://darkroom.engineering).\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Lenis\",\"slots\":[\"children\"],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Lenis.map","import { ControlType } from \"framer\";\nexport const fontStack = `\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;\nexport const containerStyles = {\n    position: \"relative\",\n    width: \"100%\",\n    height: \"100%\",\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nexport const emptyStateStyle = {\n    ...containerStyles,\n    borderRadius: 6,\n    background: \"rgba(136, 85, 255, 0.3)\",\n    color: \"#85F\",\n    border: \"1px dashed #85F\",\n    flexDirection: \"column\"\n};\nexport const defaultEvents = {\n    onClick: {\n        type: ControlType.EventHandler\n    },\n    onMouseEnter: {\n        type: ControlType.EventHandler\n    },\n    onMouseLeave: {\n        type: ControlType.EventHandler\n    }\n};\nexport const fontSizeOptions = {\n    type: ControlType.Number,\n    title: \"Font Size\",\n    min: 2,\n    max: 200,\n    step: 1,\n    displayStepper: true\n};\nexport const fontControls = {\n    font: {\n        type: ControlType.Boolean,\n        title: \"Font\",\n        defaultValue: false,\n        disabledTitle: \"Default\",\n        enabledTitle: \"Custom\"\n    },\n    fontFamily: {\n        type: ControlType.String,\n        title: \"Family\",\n        placeholder: \"Inter\",\n        hidden: ({ font  })=>!font\n    },\n    fontWeight: {\n        type: ControlType.Enum,\n        title: \"Weight\",\n        options: [\n            100,\n            200,\n            300,\n            400,\n            500,\n            600,\n            700,\n            800,\n            900\n        ],\n        optionTitles: [\n            \"Thin\",\n            \"Extra-light\",\n            \"Light\",\n            \"Regular\",\n            \"Medium\",\n            \"Semi-bold\",\n            \"Bold\",\n            \"Extra-bold\",\n            \"Black\", \n        ],\n        hidden: ({ font  })=>!font\n    }\n};\n// @TODO check if we're missing anything here — there doesn't seem to be a reliable browser API for this\nexport const localeOptions = {\n    af: \"Afrikaans\",\n    sq: \"Albanian\",\n    an: \"Aragonese\",\n    ar: \"Arabic (Standard)\",\n    \"ar-dz\": \"Arabic (Algeria)\",\n    \"ar-bh\": \"Arabic (Bahrain)\",\n    \"ar-eg\": \"Arabic (Egypt)\",\n    \"ar-iq\": \"Arabic (Iraq)\",\n    \"ar-jo\": \"Arabic (Jordan)\",\n    \"ar-kw\": \"Arabic (Kuwait)\",\n    \"ar-lb\": \"Arabic (Lebanon)\",\n    \"ar-ly\": \"Arabic (Libya)\",\n    \"ar-ma\": \"Arabic (Morocco)\",\n    \"ar-om\": \"Arabic (Oman)\",\n    \"ar-qa\": \"Arabic (Qatar)\",\n    \"ar-sa\": \"Arabic (Saudi Arabia)\",\n    \"ar-sy\": \"Arabic (Syria)\",\n    \"ar-tn\": \"Arabic (Tunisia)\",\n    \"ar-ae\": \"Arabic (U.A.E.)\",\n    \"ar-ye\": \"Arabic (Yemen)\",\n    hy: \"Armenian\",\n    as: \"Assamese\",\n    ast: \"Asturian\",\n    az: \"Azerbaijani\",\n    eu: \"Basque\",\n    bg: \"Bulgarian\",\n    be: \"Belarusian\",\n    bn: \"Bengali\",\n    bs: \"Bosnian\",\n    br: \"Breton\",\n    my: \"Burmese\",\n    ca: \"Catalan\",\n    ch: \"Chamorro\",\n    ce: \"Chechen\",\n    zh: \"Chinese\",\n    \"zh-hk\": \"Chinese (Hong Kong)\",\n    \"zh-cn\": \"Chinese (PRC)\",\n    \"zh-sg\": \"Chinese (Singapore)\",\n    \"zh-tw\": \"Chinese (Taiwan)\",\n    cv: \"Chuvash\",\n    co: \"Corsican\",\n    cr: \"Cree\",\n    hr: \"Croatian\",\n    cs: \"Czech\",\n    da: \"Danish\",\n    nl: \"Dutch (Standard)\",\n    \"nl-be\": \"Dutch (Belgian)\",\n    en: \"English\",\n    \"en-au\": \"English (Australia)\",\n    \"en-bz\": \"English (Belize)\",\n    \"en-ca\": \"English (Canada)\",\n    \"en-ie\": \"English (Ireland)\",\n    \"en-jm\": \"English (Jamaica)\",\n    \"en-nz\": \"English (New Zealand)\",\n    \"en-ph\": \"English (Philippines)\",\n    \"en-za\": \"English (South Africa)\",\n    \"en-tt\": \"English (Trinidad & Tobago)\",\n    \"en-gb\": \"English (United Kingdom)\",\n    \"en-us\": \"English (United States)\",\n    \"en-zw\": \"English (Zimbabwe)\",\n    eo: \"Esperanto\",\n    et: \"Estonian\",\n    fo: \"Faeroese\",\n    fa: \"Farsi\",\n    fj: \"Fijian\",\n    fi: \"Finnish\",\n    fr: \"French (Standard)\",\n    \"fr-be\": \"French (Belgium)\",\n    \"fr-ca\": \"French (Canada)\",\n    \"fr-fr\": \"French (France)\",\n    \"fr-lu\": \"French (Luxembourg)\",\n    \"fr-mc\": \"French (Monaco)\",\n    \"fr-ch\": \"French (Switzerland)\",\n    fy: \"Frisian\",\n    fur: \"Friulian\",\n    gd: \"Gaelic (Scots)\",\n    \"gd-ie\": \"Gaelic (Irish)\",\n    gl: \"Galacian\",\n    ka: \"Georgian\",\n    de: \"German (Standard)\",\n    \"de-at\": \"German (Austria)\",\n    \"de-de\": \"German (Germany)\",\n    \"de-li\": \"German (Liechtenstein)\",\n    \"de-lu\": \"German (Luxembourg)\",\n    \"de-ch\": \"German (Switzerland)\",\n    el: \"Greek\",\n    gu: \"Gujurati\",\n    ht: \"Haitian\",\n    he: \"Hebrew\",\n    hi: \"Hindi\",\n    hu: \"Hungarian\",\n    is: \"Icelandic\",\n    id: \"Indonesian\",\n    iu: \"Inuktitut\",\n    ga: \"Irish\",\n    it: \"Italian (Standard)\",\n    \"it-ch\": \"Italian (Switzerland)\",\n    ja: \"Japanese\",\n    kn: \"Kannada\",\n    ks: \"Kashmiri\",\n    kk: \"Kazakh\",\n    km: \"Khmer\",\n    ky: \"Kirghiz\",\n    tlh: \"Klingon\",\n    ko: \"Korean\",\n    \"ko-kp\": \"Korean (North Korea)\",\n    \"ko-kr\": \"Korean (South Korea)\",\n    la: \"Latin\",\n    lv: \"Latvian\",\n    lt: \"Lithuanian\",\n    lb: \"Luxembourgish\",\n    mk: \"FYRO Macedonian\",\n    ms: \"Malay\",\n    ml: \"Malayalam\",\n    mt: \"Maltese\",\n    mi: \"Maori\",\n    mr: \"Marathi\",\n    mo: \"Moldavian\",\n    nv: \"Navajo\",\n    ng: \"Ndonga\",\n    ne: \"Nepali\",\n    no: \"Norwegian\",\n    nb: \"Norwegian (Bokmal)\",\n    nn: \"Norwegian (Nynorsk)\",\n    oc: \"Occitan\",\n    or: \"Oriya\",\n    om: \"Oromo\",\n    \"fa-ir\": \"Persian/Iran\",\n    pl: \"Polish\",\n    pt: \"Portuguese\",\n    \"pt-br\": \"Portuguese (Brazil)\",\n    pa: \"Punjabi\",\n    \"pa-in\": \"Punjabi (India)\",\n    \"pa-pk\": \"Punjabi (Pakistan)\",\n    qu: \"Quechua\",\n    rm: \"Rhaeto-Romanic\",\n    ro: \"Romanian\",\n    \"ro-mo\": \"Romanian (Moldavia)\",\n    ru: \"Russian\",\n    \"ru-mo\": \"Russian (Moldavia)\",\n    sz: \"Sami (Lappish)\",\n    sg: \"Sango\",\n    sa: \"Sanskrit\",\n    sc: \"Sardinian\",\n    sd: \"Sindhi\",\n    si: \"Singhalese\",\n    sr: \"Serbian\",\n    sk: \"Slovak\",\n    sl: \"Slovenian\",\n    so: \"Somani\",\n    sb: \"Sorbian\",\n    es: \"Spanish\",\n    \"es-ar\": \"Spanish (Argentina)\",\n    \"es-bo\": \"Spanish (Bolivia)\",\n    \"es-cl\": \"Spanish (Chile)\",\n    \"es-co\": \"Spanish (Colombia)\",\n    \"es-cr\": \"Spanish (Costa Rica)\",\n    \"es-do\": \"Spanish (Dominican Republic)\",\n    \"es-ec\": \"Spanish (Ecuador)\",\n    \"es-sv\": \"Spanish (El Salvador)\",\n    \"es-gt\": \"Spanish (Guatemala)\",\n    \"es-hn\": \"Spanish (Honduras)\",\n    \"es-mx\": \"Spanish (Mexico)\",\n    \"es-ni\": \"Spanish (Nicaragua)\",\n    \"es-pa\": \"Spanish (Panama)\",\n    \"es-py\": \"Spanish (Paraguay)\",\n    \"es-pe\": \"Spanish (Peru)\",\n    \"es-pr\": \"Spanish (Puerto Rico)\",\n    \"es-es\": \"Spanish (Spain)\",\n    \"es-uy\": \"Spanish (Uruguay)\",\n    \"es-ve\": \"Spanish (Venezuela)\",\n    sx: \"Sutu\",\n    sw: \"Swahili\",\n    sv: \"Swedish\",\n    \"sv-fi\": \"Swedish (Finland)\",\n    \"sv-sv\": \"Swedish (Sweden)\",\n    ta: \"Tamil\",\n    tt: \"Tatar\",\n    te: \"Teluga\",\n    th: \"Thai\",\n    tig: \"Tigre\",\n    ts: \"Tsonga\",\n    tn: \"Tswana\",\n    tr: \"Turkish\",\n    tk: \"Turkmen\",\n    uk: \"Ukrainian\",\n    hsb: \"Upper Sorbian\",\n    ur: \"Urdu\",\n    ve: \"Venda\",\n    vi: \"Vietnamese\",\n    vo: \"Volapuk\",\n    wa: \"Walloon\",\n    cy: \"Welsh\",\n    xh: \"Xhosa\",\n    ji: \"Yiddish\",\n    zu: \"Zulu\"\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./constants.map","import { useIsInCurrentNavigationTarget } from \"framer\";\nimport { useEffect } from \"react\";\nexport function useOnEnter(onEnter, enabled) {\n    return useOnSpecificTargetChange(true, onEnter, enabled);\n}\nexport function useOnExit(onExit, enabled) {\n    return useOnSpecificTargetChange(false, onExit, enabled);\n}\nfunction useOnSpecificTargetChange(goal, callback, enabled = true) {\n    const isInTarget = useIsInCurrentNavigationTarget();\n    useEffect(()=>{\n        if (enabled && isInTarget === goal) callback();\n    }, [\n        isInTarget\n    ]);\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useOnEnter\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnNavigationTargetChange.map","import { useRef } from \"react\";\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */ export function useConstant(init) {\n    const ref = useRef(null);\n    if (ref.current === null) {\n        ref.current = init();\n    }\n    return ref.current;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useConstant.map","import { Color } from \"framer\";\nexport function colorFromToken(color) {\n    if (color.startsWith(\"var(--token-\")) return \"rgb\" + color.split(\") /*\")[0].split(\", rgb\")[1];\n    return color;\n}\nexport function colorTokentoValue(color) {\n    return Color(colorFromToken(color)).toValue();\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"colorFromToken\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./colorFromToken.map","import { MotionValue } from \"framer\";\nexport const isMotionValue = (v)=>v instanceof MotionValue\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isMotionValue.map","import * as React from \"react\";\nconst letters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\nconst l = ()=>letters[Math.floor(Math.random() * letters.length)]\n;\nexport const randomID = ()=>l() + l() + l() + l() + l() + l() + l() + l() + l()\n;\nfunction createUniqueClass(suffix) {\n    return `framer-${suffix}-${randomID()}`;\n}\nexport function useUniqueClassName(suffix, deps) {\n    const [className, setClassName] = React.useState(createUniqueClass(suffix));\n    React.useEffect(()=>{\n        setClassName(createUniqueClass(suffix));\n    }, [\n        suffix,\n        ...deps\n    ]);\n    return className;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useUniqueClassName\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useUniqueClassName.map","import { ControlType } from \"framer\";\n// I realize this only applies to select right now\n// but we can work on it in here\nexport function getVariantControls(Component, variant, additionalControls = {\n}) {\n    return {\n        [`${variant}TextColor`]: {\n            type: ControlType.Color,\n            title: \"Text Color\",\n            defaultValue: Component.defaultProps[`${variant}TextColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}IconColor`]: {\n            type: ControlType.Color,\n            title: \"Icon Color\",\n            defaultValue: Component.defaultProps[`${variant}IconColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BackgroundColor`]: {\n            type: ControlType.Color,\n            title: \"Bg Color\",\n            defaultValue: Component.defaultProps[`${variant}BackgroundColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderColor`]: {\n            type: ControlType.Color,\n            title: \"Border Color\",\n            defaultValue: Component.defaultProps[`${variant}BorderColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderWidth`]: {\n            type: ControlType.Number,\n            title: \" \",\n            min: 0,\n            max: 5,\n            displayStepper: true,\n            defaultValue: Component.defaultProps[`${variant}BorderWidth`],\n            hidden: (props)=>props.variant !== variant\n        },\n        ...additionalControls\n    };\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"getVariantControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./variantUtils.map","import { useMemo } from \"react\";\nexport const isBrowserSafari = ()=>{\n    if (typeof navigator !== `undefined`) {\n        const userAgent = navigator.userAgent.toLowerCase();\n        const isSafari = (userAgent.indexOf(\"safari\") > -1 || userAgent.indexOf(\"framermobile\") > -1 || userAgent.indexOf(\"framerx\") > -1) && userAgent.indexOf(\"chrome\") < 0;\n        return isSafari;\n    } else return false;\n};\nexport const useIsBrowserSafari = ()=>useMemo(()=>isBrowserSafari()\n    , [])\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isBrowser.map","import { useEffect } from \"react\";\n//@ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\nexport function useOnChange(value, callback) {\n    useEffect(()=>// @ts-ignore this should be detected as a MV :shrug:\n        isMotionValue(value) ? value.onChange(callback) : undefined\n    );\n}\nexport function useMultiOnChange(values, handler) {\n    useEffect(()=>{\n        const subscriptions = values.map((value)=>value.onChange(handler)\n        );\n        return ()=>subscriptions.forEach((unsubscribe)=>unsubscribe()\n            )\n        ;\n    });\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"Subscriber\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnChange.map","import { useCallback, useEffect, useRef } from \"react\";\nimport { motionValue, animate, RenderTarget } from \"framer\";\n// @ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\n// @ts-ignore\nimport { useConstant } from \"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";\nexport function useAutoMotionValue(inputValue, options) {\n    var ref;\n    // Put options on a local ref\n    // Might wanna just memo instead but it works for now\n    const optionsRef = useRef(options);\n    const animation = useRef();\n    const didInitialMount = useRef(false);\n    const isOnCanvas = RenderTarget.current() === RenderTarget.canvas;\n    // in-progress - trying to figure out effect hooks\n    const onChangeDeps = (options === null || options === void 0 ? void 0 : options.onChangeDeps) ? options.onChangeDeps : [];\n    // Memoize the onChange handler\n    const onChange = useCallback(options === null || options === void 0 ? void 0 : options.onChange, [\n        ...onChangeDeps, \n    ]);\n    // Optionally scale the value from props\n    const transformer = useCallback((value)=>((ref = optionsRef.current) === null || ref === void 0 ? void 0 : ref.transform) ? optionsRef.current.transform(value) : value\n    , []);\n    // Create new MotionValue from inputValue\n    const value = useConstant(()=>isMotionValue(inputValue) ? inputValue : motionValue(transformer(inputValue))\n    );\n    // Setting value from prop change\n    useEffect(()=>{\n        if (!isMotionValue(inputValue) && didInitialMount.current) {\n            var ref1, ref2;\n            const newValue = transformer(inputValue);\n            (ref1 = animation.current) === null || ref1 === void 0 ? void 0 : ref1.stop();\n            // Call change callback\n            if (onChange) onChange(newValue, value);\n            // Trigger animation to new value\n            if (((ref2 = optionsRef.current) === null || ref2 === void 0 ? void 0 : ref2.animate) && !isOnCanvas) {\n                var ref3;\n                // @ts-ignore\n                animation.current = animate(value, newValue, (ref3 = optionsRef.current) === null || ref3 === void 0 ? void 0 : ref3.transition);\n            } else {\n                value.set(newValue);\n            }\n        }\n        didInitialMount.current = true;\n    }, [\n        inputValue,\n        ...onChangeDeps\n    ]);\n    return value;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useAutoMotionValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","// @ts-ignore\nimport{fontStore}from\"framer\";import{useEffect}from\"react\";import{fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";const fontWeights={100:\"Thin\",200:\"Extra-light\",300:\"Light\",400:\"Regular\",500:\"Medium\",600:\"Semi-bold\",700:\"Bold\",800:\"Extra-bold\",900:\"Black\"};export function useFontControls(props){const{fontFamily=\"Inter\",fontSize=16,fontWeight=400,font=false}=props;const fontWeightName=fontWeights[fontWeight];const customFontStack=`\"${fontFamily} ${fontWeightName}\", \"${fontFamily}\", ${fontStack}`;const fontFamilyStyle=fontFamily?{fontSize,fontWeight,fontFamily:customFontStack}:{fontSize,fontWeight};const fetchCustomFonts=async()=>{await fontStore.loadWebFontsFromSelectors([`CUSTOM;${fontFamily}`,`CUSTOM;${fontFamily} ${fontWeightName}`,`GF;${fontFamily}-${fontWeightName.toLowerCase()}`,]).catch(e=>console.error(e));};useEffect(()=>{if(font)fetchCustomFonts();},[font,fontFamily,fontWeight]);return fontFamilyStyle;}\nexport const __FramerMetadata__ = {\"exports\":{\"useFontControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useFontControls.map","import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n    const currentRenderTarget = useMemo(()=>RenderTarget.current()\n    , []);\n    return currentRenderTarget;\n}\nexport function useIsInPreview() {\n    const inPreview = useMemo(()=>RenderTarget.current() === RenderTarget.preview\n    , []);\n    return inPreview;\n}\nexport function useIsOnCanvas() {\n    const onCanvas = useMemo(()=>RenderTarget.current() === RenderTarget.canvas\n    , []);\n    return onCanvas;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsInPreview\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useRenderTarget.map","import * as React from \"react\";\nexport function useControlledState(value) {\n    const [controlledValue, setValue] = React.useState(value);\n    React.useEffect(()=>{\n        setValue(value);\n    }, [\n        value\n    ]);\n    return [\n        controlledValue,\n        setValue\n    ];\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useControlledState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useControlledState.map","import { useMemo } from \"react\";\nimport { ControlType } from \"framer\";\nexport function useRadius(props) {\n    const { borderRadius , isMixedBorderRadius , topLeftRadius , topRightRadius , bottomRightRadius , bottomLeftRadius ,  } = props;\n    const radiusValue = useMemo(()=>isMixedBorderRadius ? `${topLeftRadius}px ${topRightRadius}px ${bottomRightRadius}px ${bottomLeftRadius}px` : `${borderRadius}px`\n    , [\n        borderRadius,\n        isMixedBorderRadius,\n        topLeftRadius,\n        topRightRadius,\n        bottomRightRadius,\n        bottomLeftRadius, \n    ]);\n    return radiusValue;\n}\nexport const borderRadiusControl = {\n    borderRadius: {\n        title: \"Radius\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"isMixedBorderRadius\",\n        toggleTitles: [\n            \"Radius\",\n            \"Radius per corner\"\n        ],\n        valueKeys: [\n            \"topLeftRadius\",\n            \"topRightRadius\",\n            \"bottomRightRadius\",\n            \"bottomLeftRadius\", \n        ],\n        valueLabels: [\n            \"TL\",\n            \"TR\",\n            \"BR\",\n            \"BL\"\n        ],\n        min: 0\n    }\n};\nexport function usePadding(props) {\n    const { padding , paddingPerSide , paddingTop , paddingRight , paddingBottom , paddingLeft ,  } = props;\n    const paddingValue = useMemo(()=>paddingPerSide ? `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px` : padding\n    , [\n        padding,\n        paddingPerSide,\n        paddingTop,\n        paddingRight,\n        paddingBottom,\n        paddingLeft, \n    ]);\n    return paddingValue;\n}\nexport const paddingControl = {\n    padding: {\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\n            \"Padding\",\n            \"Padding per side\"\n        ],\n        valueKeys: [\n            \"paddingTop\",\n            \"paddingRight\",\n            \"paddingBottom\",\n            \"paddingLeft\", \n        ],\n        valueLabels: [\n            \"T\",\n            \"R\",\n            \"B\",\n            \"L\"\n        ],\n        min: 0,\n        title: \"Padding\"\n    }\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RadiusProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PaddingProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./propUtils.map","import{defaultEvents,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";import{useOnEnter,useOnExit}from\"https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";import{colorTokentoValue,colorFromToken}from\"https://framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";import{useUniqueClassName,randomID}from\"https://framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js\";import{getVariantControls}from\"https://framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js\";import{useIsBrowserSafari}from\"https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js\";import{useMultiOnChange,useOnChange}from\"https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js\";import{mstoMinAndSec,secondsToMinutes}from\"https://framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js\";import{useAutoMotionValue}from\"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js\";import{useFontControls}from\"https://framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js\";import{useRenderTarget,useIsInPreview,useIsOnCanvas}from\"https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js\";import{useControlledState}from\"https://framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js\";import{usePadding,useRadius,paddingControl,borderRadiusControl}from\"https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js\";import{detectAutoSizingAxis}from\"https://framerusercontent.com/modules/8CkHAZatUz1UR8jNTcfD/HwbnIAZlUmQ2oTpcLkaH/detectAutoSizingAxis.js\";export{useOnEnter,useOnExit,defaultEvents,isMotionValue,colorFromToken,colorTokentoValue,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack,useUniqueClassName,getVariantControls,useIsBrowserSafari,randomID,useConstant,useMultiOnChange,useOnChange,usePadding,useRadius,paddingControl,borderRadiusControl,mstoMinAndSec,useFontControls,secondsToMinutes,useAutoMotionValue,useRenderTarget,useIsInPreview,useControlledState,detectAutoSizingAxis,useIsOnCanvas,};\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useUniqueClassName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariantControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorFromToken\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useControlledState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAutoMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsInPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectAutoSizingAxis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mstoMinAndSec\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnEnter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsInCurrentNavigationTarget,RenderTarget}from\"framer\";import{isMotionValue,useInView}from\"framer-motion\";import{borderRadiusControl,defaultEvents,useIsBrowserSafari,useIsOnCanvas,useOnEnter,useOnExit,useRadius,useRenderTarget}from\"https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js\";// https://framer.com/m/framer/default-utils.js@^0.45.0\nimport{memo,useCallback,useEffect,useMemo,useRef,useState}from\"react\";var ObjectFitType;(function(ObjectFitType){ObjectFitType[\"Fill\"]=\"fill\";ObjectFitType[\"Contain\"]=\"contain\";ObjectFitType[\"Cover\"]=\"cover\";ObjectFitType[\"None\"]=\"none\";ObjectFitType[\"ScaleDown\"]=\"scale-down\";})(ObjectFitType||(ObjectFitType={}));var SrcType;(function(SrcType){SrcType[\"Video\"]=\"Upload\";SrcType[\"Url\"]=\"URL\";})(SrcType||(SrcType={}));const defaultVideo=\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\";// Reduce renders\nfunction getProps(props){const{width,height,topLeft,topRight,bottomRight,bottomLeft,id,children,...rest}=props;return rest;}/**\n * VIDEO\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 112\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export function Video(props){const newProps=getProps(props);return /*#__PURE__*/_jsx(VideoMemo,{...newProps});}function usePlaybackControls(videoRef){const isInCurrentNavigationTarget=useIsInCurrentNavigationTarget();const requestingPlay=useRef(false);const isPlayingRef=useRef(false);const setProgress=useCallback(rawProgress=>{if(!videoRef.current)return;const newProgress=(rawProgress===1?.999:rawProgress)*videoRef.current.duration;const isAlreadySet=Math.abs(videoRef.current.currentTime-newProgress)<.1;if(videoRef.current.duration>0&&!isAlreadySet){videoRef.current.currentTime=newProgress;}},[]);const play=useCallback(()=>{const video=videoRef.current;if(!video)return;video.preload=\"auto\"// makes sure browsers don't throttle: https://html.spec.whatwg.org/multipage/media.html#:~:text=When%20the%20media%20resource%20is%20playing%2C%20hints%20to%20the%20user%20agent%20that%20bandwidth%20is%20to%20be%20considered%20scarce%2C%20e.g.%20suggesting%20throttling%20the%20download%20so%20that%20the%20media%20data%20is%20obtained%20at%20the%20slowest%20possible%20rate%20that%20still%20maintains%20consistent%20playback.\n;const isPlaying=video.currentTime>0&&video.onplaying&&!video.paused&&!video.ended&&video.readyState>=video.HAVE_CURRENT_DATA;if(!isPlaying&&video&&!requestingPlay.current&&isInCurrentNavigationTarget){requestingPlay.current=true;isPlayingRef.current=true;video.play().catch(e=>{})// It's likely fine, swallow error\n.finally(()=>requestingPlay.current=false);}},[]);const pause=useCallback(()=>{if(!videoRef.current||requestingPlay.current)return;videoRef.current.pause();isPlayingRef.current=false;},[]);return{play,pause,setProgress,isPlaying:isPlayingRef};}function useAutoplayBehavior({playingProp,muted,loop,playsinline,controls}){const[initialPlayingProp]=useState(()=>playingProp);const[hasPlayingPropChanged,setHasPlayingPropChanged]=useState(false);if(playingProp!==initialPlayingProp&&!hasPlayingPropChanged){setHasPlayingPropChanged(true);}const behavesAsGif=// passing `playing === true` on mount indicates that the video should\n// autoplay, like a GIF\ninitialPlayingProp&&muted&&loop&&playsinline&&!controls&&// Some users of the <Video> component use it by wrapping it with\n// another smart component and adding their own controls on top. (The\n// controls use transitions to control the video: e.g., when clicking\n// the play button, the smart component will transition to a state with\n// <Video playing={true} />.) In this case, we don't want the video to\n// behave as a gif, as it will be weird if the video suddenly started\n// acting as such (and auto-pausing when leaving the viewport) as soon\n// as the site visitor mutes it and clicks “Play”.\n!hasPlayingPropChanged;let autoplay;if(behavesAsGif)autoplay=\"on-viewport\";else if(initialPlayingProp)autoplay=\"on-mount\";else autoplay=\"no-autoplay\";return autoplay;}const VideoMemo=/*#__PURE__*/memo(function VideoInner(props){const{// default props\nsrcType=\"URL\",srcUrl,srcFile=\"\",posterEnabled=false,controls=false,playing=true,loop=true,muted=true,playsinline=true,restartOnEnter=false,objectFit=\"cover\",backgroundColor=\"rgba(0,0,0,0)\",radius=0,volume=25,startTime:startTimeProp=0,poster,playing:playingProp,progress,onSeeked,onPause,onPlay,onEnd,onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp}=props;const videoRef=useRef();const isSafari=useIsBrowserSafari();const wasPausedOnLeave=useRef(null);const wasEndedOnLeave=useRef(null);const isOnCanvas=useIsOnCanvas();const renderTarget=useRenderTarget();const isStaticRenderer=isOnCanvas||renderTarget===RenderTarget.export;const borderRadius=useRadius(props);// Hard-coding `autoplayBehavior` and `isInViewport` when on canvas as a\n// tiny perf optimization. isStaticRenderer won’t change through the lifecycle of\n// the component, so using these hooks conditionally should be safe\nconst autoplayBehavior=isStaticRenderer?\"no-autoplay\":useAutoplayBehavior({playingProp,muted,loop,playsinline,controls});const isInViewport=isStaticRenderer?true:useInView(videoRef);const isCloseToViewport=isStaticRenderer?false:useInView(videoRef,{margin:\"10%\",once:true});// Video elements behave oddly at 100% duration\nconst startTime=startTimeProp===100?99.9:startTimeProp;const{play,pause,setProgress,isPlaying}=usePlaybackControls(videoRef);// Pause/play via props\nuseEffect(()=>{if(isStaticRenderer)return;if(autoplayBehavior===\"on-viewport\")return;if(playingProp)play();else pause();},[autoplayBehavior,playingProp]);// Pause/play via viewport\nuseEffect(()=>{if(isStaticRenderer)return;// this also explicitly retries playing for videos that play on-mount, which could fail if they're not muted for example\nif(isInViewport&&playingProp&&autoplayBehavior!==\"no-autoplay\")play();if(autoplayBehavior!==\"on-viewport\")return;pause();},[autoplayBehavior,isInViewport,playingProp]);useEffect(()=>{if(!isOnCanvas||poster||posterEnabled||startTime||!videoRef.current)return;// forces a poster to show up when the video is in an iframe; this is needed when `poster` changes\nvideoRef.current.currentTime=.01;},[posterEnabled,poster,startTime]);/**\n     * The Video component has some effects that sync the video element with props\n     * like `startTime`, `progress`, etc. React calls these effects whenever these\n     * props change. However, it also calls them on the first mount, and this is\n     * troublesome – if we’re doing SSR, and the user changed the video state before\n     * the video was hydrated, the initial `useEffect` call will reset the video\n     * state. To avoid this, we use this flag.\n     */const isMountedAndReadyForProgressChanges=useRef(false);// Allow scrubbling via progress prop\n// 1) Handle cases when the progress prop itself changes\nuseEffect(()=>{if(!isMountedAndReadyForProgressChanges.current){isMountedAndReadyForProgressChanges.current=true;return;}const rawProgressValue=isMotionValue(progress)?progress.get():(progress??0)*.01;setProgress(// When the progress value exists (e.g. <Video startTime={10}\n// progress={50} />), we respect the `progress` value over\n// `startTime`, even if `startTime` changes. That’s because\n// `startTime` == start == changing it shouldn’t affect the current\n// progress\n(rawProgressValue??0)||// Then why fall back to `startTime` when `progress` doesn’t exist,\n// you might ask? Now, that’s for\n// - canvas UX: we want the video progress to change when the user\n//   is scrobbling the “Start Time” in component settings.\n// - backwards compatibility: maybe some users *are* scrobbling\n//   using `startTime` instead of `progress`? We don’t know, and it\n//   always supported it, so let’s not break it\n(startTime??0)/100);},[startTime,srcFile,srcUrl,progress]);// 2) Handle cases when the motion value inside the progress prop changes\nuseEffect(()=>{if(!isMotionValue(progress))return;return progress.on(\"change\",value=>setProgress(value));},[progress]);// (Prototyping) Checking if we need to play on navigation enter\nuseOnEnter(()=>{if(wasPausedOnLeave.current===null)return;if(videoRef.current){// if (restartOnEnter) setProgress(0)\nif(!wasEndedOnLeave&&loop||!wasPausedOnLeave.current)play();}});// (Prototyping) Pausing & saving playing state on navigation exit\nuseOnExit(()=>{if(videoRef.current){wasEndedOnLeave.current=videoRef.current.ended;wasPausedOnLeave.current=videoRef.current.paused;pause();}});const src=useMemo(()=>{let fragment=\"\";// if (\n//     startTime > 0 &&\n//     videoRef.current &&\n//     !isNaN(videoRef.current.duration) &&\n//     !isStaticRenderer\n// ) {\n//     console.log(startTime, videoRef.current.duration)\n//     fragment = `#t=${startTime * videoRef.current.duration}`\n// }\nif(srcType===\"URL\")return srcUrl+fragment;if(srcType===\"Upload\")return srcFile+fragment;},[srcType,srcFile,srcUrl,startTime]);// Autoplay via JS to work in Safari\nuseEffect(()=>{if(isSafari&&videoRef.current&&autoplayBehavior===\"on-mount\"){setTimeout(()=>play(),50);}},[]);// Volume Control\nuseEffect(()=>{if(videoRef.current&&!muted)videoRef.current.volume=(volume??0)/100;},[volume]);// When video is ready, set start-time, then autoplay if needed\nconst handleReady=()=>{const video=videoRef.current;if(!video)return;if(video.currentTime<.3&&startTime>0)setProgress((startTime??0)*.01);if(// when the component updates (e.g. only srcFile/url changes), and the video was already playing, keep playing\nisPlaying.current||autoplayBehavior===\"on-mount\"||playingProp&&autoplayBehavior===\"on-viewport\"&&isInViewport)play();};return /*#__PURE__*/_jsx(\"video\",{onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,src:src,loop:loop,ref:videoRef,onSeeked:e=>onSeeked?.(e),onPause:e=>onPause?.(e),onPlay:e=>onPlay?.(e),onEnded:e=>onEnd?.(e),autoPlay:isPlaying.current||autoplayBehavior===\"on-mount\"||playingProp&&autoplayBehavior===\"on-viewport\"&&isInViewport,preload:isPlaying.current?\"auto\":isStaticRenderer&&!poster?\"metadata\":autoplayBehavior!==\"on-mount\"&&!isCloseToViewport?\"none\":// `autoplay` overrides this too\n\"metadata\",poster:posterEnabled&&!srcFile&&srcUrl===defaultVideo?\"https://framerusercontent.com/images/5ILRvlYXf72kHSVHqpa3snGzjU.jpg\":posterEnabled&&poster?poster:undefined,onLoadedData:handleReady,controls:controls,muted:isStaticRenderer?true:muted,playsInline:playsinline,style:{cursor:!!onClick?\"pointer\":\"auto\",width:\"100%\",height:\"100%\",borderRadius,display:\"block\",objectFit:objectFit,backgroundColor:backgroundColor,objectPosition:\"50% 50%\"}});});Video.displayName=\"Video\";function capitalizeFirstLetter(value){return value.charAt(0).toUpperCase()+value.slice(1);}export function titleCase(value){const groups=value.match(/[A-Z]{2,}|[A-Z][a-z]+|[a-z]+|[A-Z]|\\d+/gu)||[];return groups.map(capitalizeFirstLetter).join(\" \");}const objectFitOptions=[\"cover\",\"fill\",\"contain\",\"scale-down\",\"none\"];addPropertyControls(Video,{srcType:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Source\",options:[\"URL\",\"Upload\"]},srcUrl:{type:ControlType.String,title:\"URL\",defaultValue:\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",hidden(props){return props.srcType===\"Upload\";}},srcFile:{type:ControlType.File,title:\"File\",allowedFileTypes:[\"mp4\",\"webm\"],hidden(props){return props.srcType===\"URL\";}},playing:{type:ControlType.Boolean,title:\"Playing\",enabledTitle:\"Yes\",disabledTitle:\"No\"},...borderRadiusControl,posterEnabled:{type:ControlType.Boolean,title:\"Poster\",enabledTitle:\"Yes\",disabledTitle:\"No\"},poster:{type:ControlType.Image,title:\"Image\",hidden:({posterEnabled})=>!posterEnabled,description:\"We recommend adding a poster. [Learn more](https://www.framer.com/help/articles/how-are-videos-optimized-in-framer/).\"},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgba(0,0,0,0)\"},startTime:{title:\"Start Time\",type:ControlType.Number,min:0,max:100,step:.1,unit:\"%\"},loop:{type:ControlType.Boolean,title:\"Loop\",enabledTitle:\"Yes\",disabledTitle:\"No\"},objectFit:{type:ControlType.Enum,title:\"Fit\",options:objectFitOptions,optionTitles:objectFitOptions.map(titleCase)},// restartOnEnter: {\n//     type: ControlType.Boolean,\n//     title: \"On ReEnter\",\n//     enabledTitle: \"Restart\",\n//     disabledTitle: \"Resume\",\n// },\ncontrols:{type:ControlType.Boolean,title:\"Controls\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false},muted:{type:ControlType.Boolean,title:\"Muted\",enabledTitle:\"Yes\",disabledTitle:\"No\"},volume:{type:ControlType.Number,max:100,min:0,unit:\"%\",hidden:({muted})=>muted,defaultValue:25},onEnd:{type:ControlType.EventHandler},onSeeked:{type:ControlType.EventHandler},onPause:{type:ControlType.EventHandler},onPlay:{type:ControlType.EventHandler},...defaultEvents});\nexport const __FramerMetadata__ = {\"exports\":{\"VideoProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"titleCase\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Video\":{\"type\":\"reactComponent\",\"name\":\"Video\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"112\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicWidth\":\"200\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Video.map","var t,e=Object.create,r=Object.defineProperty,n=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,s=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(t,e,n)=>e in t?r(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,u=(t,e)=>function(){return e||(0,t[i(t)[0]])((e={exports:{}}).exports,e),e.exports;},l=(t,e,s,o)=>{if(e&&\"object\"==typeof e||\"function\"==typeof e)for(let u of i(e))a.call(t,u)||u===s||r(t,u,{get:()=>e[u],enumerable:!(o=n(e,u))||o.enumerable});return t;},h=(t,n,i)=>(i=null!=t?e(s(t)):{},l(// If the importer is in node compatibility mode or this is not an ESM\n    // file that has been converted to a CommonJS file using a Babel-\n    // compatible transform (i.e. \"__esModule\" has not been set), then set\n    // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n    !n&&t&&t.__esModule?i:r(i,\"default\",{value:t,enumerable:!0}),t)),c=(t,e,r)=>o(t,\"symbol\"!=typeof e?e+\"\":e,r),f=u({\"../../../node_modules/dataloader/index.js\"(t,e){var r,n=/* @__PURE__ */function(){function t(t,e){if(\"function\"!=typeof t)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but got: \"+t+\".\");this._batchLoadFn=t,this._maxBatchSize=function(t){if(!(!t||!1!==t.batch))return 1;var e=t&&t.maxBatchSize;if(void 0===e)return 1/0;if(\"number\"!=typeof e||e<1)throw TypeError(\"maxBatchSize must be a positive number: \"+e);return e;}(e),this._batchScheduleFn=function(t){var e=t&&t.batchScheduleFn;if(void 0===e)return i;if(\"function\"!=typeof e)throw TypeError(\"batchScheduleFn must be a function: \"+e);return e;}(e),this._cacheKeyFn=function(t){var e=t&&t.cacheKeyFn;if(void 0===e)return function(t){return t;};if(\"function\"!=typeof e)throw TypeError(\"cacheKeyFn must be a function: \"+e);return e;}(e),this._cacheMap=function(t){if(!(!t||!1!==t.cache))return null;var e=t&&t.cacheMap;if(void 0===e)return /* @__PURE__ */new Map;if(null!==e){var r=[\"get\",\"set\",\"delete\",\"clear\"].filter(function(t){return e&&\"function\"!=typeof e[t];});if(0!==r.length)throw TypeError(\"Custom cacheMap missing methods: \"+r.join(\", \"));}return e;}(e),this._batch=null,this.name=e&&e.name?e.name:null;}var e=t.prototype;return e.load=function(t){if(null==t)throw TypeError(\"The loader.load() function must be called with a value, but got: \"+String(t)+\".\");var e=function(t){var e=t._batch;if(null!==e&&!e.hasDispatched&&e.keys.length<t._maxBatchSize)return e;var r={hasDispatched:!1,keys:[],callbacks:[]};return t._batch=r,t._batchScheduleFn(function(){(function(t,e){var r;if(e.hasDispatched=!0,0===e.keys.length){a(e);return;}try{r=t._batchLoadFn(e.keys);}catch(r){return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function errored synchronously: \"+String(r)+\".\"));}if(!r||\"function\"!=typeof r.then)return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise: \"+String(r)+\".\"));r.then(function(t){if(!o(t))throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array: \"+String(t)+\".\");if(t.length!==e.keys.length)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array of the same length as the Array of keys.\\n\\nKeys:\\n\"+String(e.keys)+\"\\n\\nValues:\\n\"+String(t));a(e);for(var r=0;r<e.callbacks.length;r++){var n=t[r];n instanceof Error?e.callbacks[r].reject(n):e.callbacks[r].resolve(n);}}).catch(function(r){s(t,e,r);});})(t,r);}),r;}(this),r=this._cacheMap,n=this._cacheKeyFn(t);if(r){var i=r.get(n);if(i){var u=e.cacheHits||(e.cacheHits=[]);return new Promise(function(t){u.push(function(){t(i);});});}}e.keys.push(t);var l=new Promise(function(t,r){e.callbacks.push({resolve:t,reject:r});});return r&&r.set(n,l),l;},e.loadMany=function(t){if(!o(t))throw TypeError(\"The loader.loadMany() function must be called with Array<key> but got: \"+t+\".\");for(var e=[],r=0;r<t.length;r++)e.push(this.load(t[r]).catch(function(t){return t;}));return Promise.all(e);},e.clear=function(t){var e=this._cacheMap;if(e){var r=this._cacheKeyFn(t);e.delete(r);}return this;},e.clearAll=function(){var t=this._cacheMap;return t&&t.clear(),this;},e.prime=function(t,e){var r=this._cacheMap;if(r){var n,i=this._cacheKeyFn(t);void 0===r.get(i)&&(e instanceof Error?(n=Promise.reject(e)).catch(function(){}):n=Promise.resolve(e),r.set(i,n));}return this;},t;}(),i=\"object\"==typeof process&&\"function\"==typeof process.nextTick?function(t){r||(r=Promise.resolve()),r.then(function(){process.nextTick(t);});}:\"function\"==typeof setImmediate?function(t){setImmediate(t);}:function(t){setTimeout(t);};function s(t,e,r){a(e);for(var n=0;n<e.keys.length;n++)t.clear(e.keys[n]),e.callbacks[n].reject(r);}function a(t){if(t.cacheHits)for(var e=0;e<t.cacheHits.length;e++)t.cacheHits[e]();}function o(t){return\"object\"==typeof t&&null!==t&&\"number\"==typeof t.length&&(0===t.length||t.length>0&&Object.prototype.hasOwnProperty.call(t,t.length-1));}e.exports=n;}}),d=h(f(),1),g={Uint8:1,Uint16:2,Uint32:4,BigUint64:8,Int8:1,Int16:2,Int32:4,BigInt64:8,Float32:4,Float64:8},p=class{getOffset(){return this.offset;}ensureLength(t){let e=this.bytes.length;if(!(this.offset+t<=e))throw Error(\"Reading out of bounds\");}readUint8(){let t=g.Uint8;this.ensureLength(t);let e=this.view.getUint8(this.offset);return this.offset+=t,e;}readUint16(){let t=g.Uint16;this.ensureLength(t);let e=this.view.getUint16(this.offset);return this.offset+=t,e;}readUint32(){let t=g.Uint32;this.ensureLength(t);let e=this.view.getUint32(this.offset);return this.offset+=t,e;}readUint64(){let t=this.readBigUint64();return Number(t);}readBigUint64(){let t=g.BigUint64;this.ensureLength(t);let e=this.view.getBigUint64(this.offset);return this.offset+=t,e;}readInt8(){let t=g.Int8;this.ensureLength(t);let e=this.view.getInt8(this.offset);return this.offset+=t,e;}readInt16(){let t=g.Int16;this.ensureLength(t);let e=this.view.getInt16(this.offset);return this.offset+=t,e;}readInt32(){let t=g.Int32;this.ensureLength(t);let e=this.view.getInt32(this.offset);return this.offset+=t,e;}readInt64(){let t=this.readBigInt64();return Number(t);}readBigInt64(){let t=g.BigInt64;this.ensureLength(t);let e=this.view.getBigInt64(this.offset);return this.offset+=t,e;}readFloat32(){let t=g.Float32;this.ensureLength(t);let e=this.view.getFloat32(this.offset);return this.offset+=t,e;}readFloat64(){let t=g.Float64;this.ensureLength(t);let e=this.view.getFloat64(this.offset);return this.offset+=t,e;}readBytes(t){let e=this.offset,r=e+t,n=this.bytes.subarray(e,r);return this.offset=r,n;}readString(){let t=this.readUint32(),e=this.readBytes(t);return this.decoder.decode(e);}readJson(){let t=this.readString();return JSON.parse(t);}constructor(t){this.bytes=t,c(this,\"offset\",0),c(this,\"view\"),c(this,\"decoder\",new TextDecoder),this.view=v(this.bytes);}};function v(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as y}from\"framer\";// ../../library/src/utils/utils.ts\nvar m=\"undefined\"!=typeof window,w=m&&\"function\"==typeof window.requestIdleCallback;// src/code-generation/components/cms/bundled/assert.ts\nfunction I(t,...e){if(!t)throw Error(\"Assertion Error\"+(e.length>0?\": \"+e.join(\" \"):\"\"));}function b(t){throw Error(`Unexpected value: ${t}`);}// src/code-generation/components/cms/bundled/BufferWriter.ts\nvar U=1024,S=1.5,k=t=>2**t-1,L=t=>-(2**(t-1)),B=t=>2**(t-1)-1,E={Uint8:0,Uint16:0,Uint32:0,Uint64:0,BigUint64:0,Int8:L(8),Int16:L(16),Int32:L(32),Int64:Number.MIN_SAFE_INTEGER,BigInt64:-(BigInt(2)**BigInt(63))},M={Uint8:k(8),Uint16:k(16),Uint32:k(32),Uint64:Number.MAX_SAFE_INTEGER,BigUint64:BigInt(2)**BigInt(64)-BigInt(1),Int8:B(8),Int16:B(16),Int32:B(32),Int64:Number.MAX_SAFE_INTEGER,BigInt64:BigInt(2)**BigInt(63)-BigInt(1)};function T(t,e,r,n){I(t>=e,t,\"outside lower bound for\",n),I(t<=r,t,\"outside upper bound for\",n);}var F=class{getOffset(){return this.offset;}slice(t=0,e=this.offset){return this.bytes.slice(t,e);}subarray(t=0,e=this.offset){return this.bytes.subarray(t,e);}ensureLength(t){let e=this.bytes.length;if(this.offset+t<=e)return;let r=new Uint8Array(Math.ceil(e*S)+t);r.set(this.bytes),this.bytes=r,this.view=v(r);}writeUint8(t){T(t,E.Uint8,M.Uint8,\"Uint8\");let e=g.Uint8;this.ensureLength(e),this.view.setUint8(this.offset,t),this.offset+=e;}writeUint16(t){T(t,E.Uint16,M.Uint16,\"Uint16\");let e=g.Uint16;this.ensureLength(e),this.view.setUint16(this.offset,t),this.offset+=e;}writeUint32(t){T(t,E.Uint32,M.Uint32,\"Uint32\");let e=g.Uint32;this.ensureLength(e),this.view.setUint32(this.offset,t),this.offset+=e;}writeUint64(t){T(t,E.Uint64,M.Uint64,\"Uint64\");let e=BigInt(t);this.writeBigUint64(e);}writeBigUint64(t){T(t,E.BigUint64,M.BigUint64,\"BigUint64\");let e=g.BigUint64;this.ensureLength(e),this.view.setBigUint64(this.offset,t),this.offset+=e;}writeInt8(t){T(t,E.Int8,M.Int8,\"Int8\");let e=g.Int8;this.ensureLength(e),this.view.setInt8(this.offset,t),this.offset+=e;}writeInt16(t){T(t,E.Int16,M.Int16,\"Int16\");let e=g.Int16;this.ensureLength(e),this.view.setInt16(this.offset,t),this.offset+=e;}writeInt32(t){T(t,E.Int32,M.Int32,\"Int32\");let e=g.Int32;this.ensureLength(e),this.view.setInt32(this.offset,t),this.offset+=e;}writeInt64(t){T(t,E.Int64,M.Int64,\"Int64\");let e=BigInt(t);this.writeBigInt64(e);}writeBigInt64(t){T(t,E.BigInt64,M.BigInt64,\"BigInt64\");let e=g.BigInt64;this.ensureLength(e),this.view.setBigInt64(this.offset,t),this.offset+=e;}writeFloat32(t){let e=g.Float32;this.ensureLength(e),this.view.setFloat32(this.offset,t),this.offset+=e;}writeFloat64(t){let e=g.Float64;this.ensureLength(e),this.view.setFloat64(this.offset,t),this.offset+=e;}writeBytes(t){let e=t.length;this.ensureLength(e),this.bytes.set(t,this.offset),this.offset+=e;}encodeString(t){let e=this.encodedStrings.get(t);if(e)return e;let r=this.encoder.encode(t);return this.encodedStrings.set(t,r),r;}writeString(t){let e=this.encodeString(t),r=e.length;this.writeUint32(r),this.writeBytes(e);}writeJson(t){let e=JSON.stringify(t);this.writeString(e);}constructor(){c(this,\"offset\",0),c(this,\"bytes\",new Uint8Array(U)),c(this,\"view\",v(this.bytes)),c(this,\"encoder\",new TextEncoder),c(this,\"encodedStrings\",/* @__PURE__ */new Map);}};// src/utils/typeChecks.ts\nfunction x(t){return\"string\"==typeof t;}function N(t){return Number.isFinite(t);}function A(t){return null===t;}// src/code-generation/components/cms/bundled/models/DatabaseItemPointerModel.ts\nvar O=class t{static fromString(e){let[r,n,i]=e.split(\"/\").map(Number);return I(N(r),\"Invalid chunkId\"),I(N(n),\"Invalid offset\"),I(N(i),\"Invalid length\"),new t(r,n,i);}toString(){return`${this.chunkId}/${this.offset}/${this.length}`;}static read(e){let r=e.readUint16(),n=e.readUint32(),i=e.readUint32();return new t(r,n,i);}write(t){t.writeUint16(this.chunkId),t.writeUint32(this.offset),t.writeUint32(this.length);}compare(t){return this.chunkId<t.chunkId?-1:this.chunkId>t.chunkId?1:this.offset<t.offset?-1:this.offset>t.offset?1:(I(this.length===t.length),0);}constructor(t,e,r){this.chunkId=t,this.offset=e,this.length=r;}};// src/code-generation/components/cms/bundled/models/DatabaseValueModel.ts\nimport{ControlType as P}from\"framer\";function R(t){if(A(t))return 0/* Null */;switch(t.type){case P.Array:return 1/* Array */;case P.Boolean:return 2/* Boolean */;case P.Color:return 3/* Color */;case P.Date:return 4/* Date */;case P.Enum:return 5/* Enum */;case P.File:return 6/* File */;case P.ResponsiveImage:return 10/* ResponsiveImage */;case P.Link:return 7/* Link */;case P.Number:return 8/* Number */;case P.Object:return 9/* Object */;case P.RichText:return 11/* RichText */;case P.String:return 12/* String */;case P.VectorSetItem:return 13/* VectorSetItem */;default:b(t);}}function q(e){let r=e.readUint16(),n=[];for(let i=0;i<r;i++){let r=t.read(e);n.push(r);}return{type:P.Array,value:n};}function _(e,r){for(let n of(e.writeUint16(r.value.length),r.value))t.write(e,n);}function D(e,r,n){let i=e.value.length,s=r.value.length;if(i<s)return -1;if(i>s)return 1;for(let s=0;s<i;s++){let i=e.value[s],a=r.value[s],o=t.compare(i,a,n);if(0!==o)return o;}return 0;}function j(t){return{type:P.Boolean,value:0!==t.readUint8()};}function C(t,e){t.writeUint8(e.value?1:0);}function J(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function V(t){return{type:P.Color,value:t.readString()};}function W(t,e){t.writeString(e.value);}function $(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function z(t){let e=t.readInt64(),r=new Date(e);return{type:P.Date,value:r.toISOString()};}function G(t,e){let r=new Date(e.value),n=r.getTime();t.writeInt64(n);}function K(t,e){let r=new Date(t.value),n=new Date(e.value);return r<n?-1:r>n?1:0;}function H(t){return{type:P.Enum,value:t.readString()};}function X(t,e){t.writeString(e.value);}function Q(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function Y(t){return{type:P.File,value:t.readString()};}function Z(t,e){t.writeString(e.value);}function tt(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function te(t){return{type:P.Link,value:t.readJson()};}function tr(t,e){t.writeJson(e.value);}function tn(t,e){let r=JSON.stringify(t.value),n=JSON.stringify(e.value);return r<n?-1:r>n?1:0;}function ti(t){return{type:P.Number,value:t.readFloat64()};}function ts(t,e){t.writeFloat64(e.value);}function ta(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function to(e){let r=e.readUint16(),n={};for(let i=0;i<r;i++){let r=e.readString();n[r]=t.read(e);}return{type:P.Object,value:n};}function tu(e,r){let n=Object.entries(r.value);for(let[r,i]of(e.writeUint16(n.length),n))e.writeString(r),t.write(e,i);}function tl(e,r,n){let i=Object.keys(e.value).sort(),s=Object.keys(r.value).sort();if(i.length<s.length)return -1;if(i.length>s.length)return 1;for(let a=0;a<i.length;a++){let o=i[a],u=s[a];if(o<u)return -1;if(o>u)return 1;let l=e.value[o]??null,h=r.value[u]??null,c=t.compare(l,h,n);if(0!==c)return c;}return 0;}function th(t){return{type:P.ResponsiveImage,value:t.readJson()};}function tc(t,e){t.writeJson(e.value);}function tf(t,e){let r=JSON.stringify(t.value),n=JSON.stringify(e.value);return r<n?-1:r>n?1:0;}function td(t){let e=t.readInt8();if(0===e)return{type:P.RichText,value:t.readUint32()};if(1===e)return{type:P.RichText,value:t.readString()};throw Error(\"Invalid rich text pointer\");}function tg(t,e){if(N(e.value)){t.writeInt8(0),t.writeUint32(e.value);return;}if(x(e.value)){t.writeInt8(1),t.writeString(e.value);return;}throw Error(\"Invalid rich text pointer\");}function tp(t,e){let r=t.value,n=e.value;if(N(r)&&N(n)||x(r)&&x(n))return r<n?-1:r>n?1:0;throw Error(\"Invalid rich text pointer\");}function tv(t){return{type:P.String,value:t.readString()};}function ty(t,e){t.writeString(e.value);}function tm(t,e,r){let n=t.value,i=e.value;return(0/* CaseInsensitive */===r.type&&(n=t.value.toLowerCase(),i=e.value.toLowerCase()),n<i)?-1:n>i?1:0;}function tw(t){return{type:P.VectorSetItem,value:t.readUint32()};}function tI(t,e){t.writeUint32(e.value);}function tb(t,e){let r=t.value,n=e.value;return r<n?-1:r>n?1:0;}(t=>{t.read=function(t){let e=t.readUint8();switch(e){case 0/* Null */:return null;case 1/* Array */:return q(t);case 2/* Boolean */:return j(t);case 3/* Color */:return V(t);case 4/* Date */:return z(t);case 5/* Enum */:return H(t);case 6/* File */:return Y(t);case 7/* Link */:return te(t);case 8/* Number */:return ti(t);case 9/* Object */:return to(t);case 10/* ResponsiveImage */:return th(t);case 11/* RichText */:return td(t);case 12/* String */:return tv(t);case 13/* VectorSetItem */:return tw(t);default:b(e);}},t.write=function(t,e){let r=R(e);if(t.writeUint8(r),!A(e))switch(e.type){case P.Array:return _(t,e);case P.Boolean:return C(t,e);case P.Color:return W(t,e);case P.Date:return G(t,e);case P.Enum:return X(t,e);case P.File:return Z(t,e);case P.Link:return tr(t,e);case P.Number:return ts(t,e);case P.Object:return tu(t,e);case P.ResponsiveImage:return tc(t,e);case P.RichText:return tg(t,e);case P.VectorSetItem:return tI(t,e);case P.String:return ty(t,e);default:b(e);}},t.compare=function(t,e,r){let n=R(t),i=R(e);if(n<i)return -1;if(n>i)return 1;if(A(t)||A(e))return 0;switch(t.type){case P.Array:return I(e.type===P.Array),D(t,e,r);case P.Boolean:return I(e.type===P.Boolean),J(t,e);case P.Color:return I(e.type===P.Color),$(t,e);case P.Date:return I(e.type===P.Date),K(t,e);case P.Enum:return I(e.type===P.Enum),Q(t,e);case P.File:return I(e.type===P.File),tt(t,e);case P.Link:return I(e.type===P.Link),tn(t,e);case P.Number:return I(e.type===P.Number),ta(t,e);case P.Object:return I(e.type===P.Object),tl(t,e,r);case P.ResponsiveImage:return I(e.type===P.ResponsiveImage),tf(t,e);case P.RichText:return I(e.type===P.RichText),tp(t,e);case P.VectorSetItem:return I(e.type===P.VectorSetItem),tb(t,e);case P.String:return I(e.type===P.String),tm(t,e,r);default:b(t);}};})(t||(t={}));// src/code-generation/components/cms/bundled/models/DatabaseDictionaryIndexModel.ts\nvar tU=class e{sortEntries(){this.entries.sort((e,r)=>{for(let n=0;n<this.fieldNames.length;n++){let i=e.values[n],s=r.values[n],a=t.compare(i,s,this.options.collation);if(0!==a)return a;}return e.pointer.compare(r.pointer);});}static deserialize(r){let n=new p(r),i=n.readJson(),s=n.readUint8(),a=[];for(let t=0;t<s;t++){let t=n.readString();a.push(t);}let o=new e(a,{collation:i}),u=n.readUint32();for(let e=0;e<u;e++){let e=[];for(let r=0;r<s;r++){let r=t.read(n);e.push(r);}let r=O.read(n);o.entries.push({values:e,pointer:r});}return o;}serialize(){let e=new F;for(let t of(e.writeJson(this.options.collation),e.writeUint8(this.fieldNames.length),this.fieldNames))e.writeString(t);for(let r of(this.sortEntries(),e.writeUint32(this.entries.length),this.entries)){let{values:n,pointer:i}=r;for(let r of n)t.write(e,r);i.write(e);}return e.subarray();}addItem(t,e){let r=this.fieldNames.map(e=>t.getField(e)??null);this.entries.push({values:r,pointer:e});}constructor(t,e){this.fieldNames=t,this.options=e,c(this,\"entries\",[]);}},tS=3,tk=250,tL=[408,// Request Timeout\n429,// Too Many Requests\n500,// Internal Server Error\n502,// Bad Gateway\n503,// Service Unavailable\n504],tB=async(t,e)=>{let r=0;for(;;){try{let n=await fetch(t,e);if(!tL.includes(n.status)||++r>tS)return n;}catch(t){if(e?.signal?.aborted||++r>tS)throw t;}await tE(r);}};async function tE(t){let e=Math.floor(tk*(Math.random()+1)*2**(t-1));await new Promise(t=>{setTimeout(t,e);});}// src/code-generation/components/cms/bundled/rangeRequest.ts\nasync function tM(t,e){let r=tx(e),n=[],i=0;for(let t of r)n.push(`${t.from}-${t.to-1}`),i+=t.to-t.from;let s=new URL(t),a=n.join(\",\");s.searchParams.set(\"range\",a);let o=await tB(s);if(200!==o.status)throw Error(`Request failed: ${o.status} ${o.statusText}`);let u=await o.arrayBuffer(),l=new Uint8Array(u);if(l.length!==i)throw Error(\"Request failed: Unexpected response length\");let h=new tT,c=0;for(let t of r){let e=t.to-t.from,r=c+e,n=l.subarray(c,r);h.write(t.from,n),c=r;}return e.map(t=>h.read(t.from,t.to-t.from));}var tT=class{read(t,e){for(let r of this.chunks){if(t<r.start)break;if(t>r.end)continue;if(t+e>r.end)break;let n=t-r.start,i=n+e;return r.data.slice(n,i);}throw Error(\"Missing data\");}write(t,e){let r=t,n=r+e.length,i=0,s=this.chunks.length;for(;i<s;i++){let t=this.chunks[i];if(I(t,\"Missing chunk\"),!(r>t.end)){if(r>t.start){let n=r-t.start,i=t.data.subarray(0,n);e=tF(i,e),r=t.start;}break;}}for(;s>i;s--){let t=this.chunks[s-1];if(I(t,\"Missing chunk\"),!(n<t.start)){if(n<t.end){let r=n-t.start,i=t.data.subarray(r);e=tF(e,i),n=t.end;}break;}}let a={start:r,end:n,data:e},o=s-i;this.chunks.splice(i,o,a);}constructor(){c(this,\"chunks\",[]);}};function tF(t,e){let r=t.length+e.length,n=new Uint8Array(r);return n.set(t,0),n.set(e,t.length),n;}function tx(t){I(t.length>0,\"Must have at least one range\");let e=[...t].sort((t,e)=>t.from-e.from),r=[];for(let t of e){let e=r.length-1,n=r[e];n&&t.from<=n.to?r[e]={from:n.from,to:Math.max(n.to,t.to)}:r.push(t);}return r;}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nvar tN=class{async loadModel(){let[t]=await tM(this.options.url,[this.options.range]);return I(t,\"Failed to load model\"),tU.deserialize(t);}async getModel(){return this.modelPromise??=this.loadModel(),this.model??=await this.modelPromise,this.model;}async lookupItems(t){I(t.length===this.fields.length,\"Invalid query length\");let e=await this.getModel(),r=t.reduce((t,e,r)=>t.flatMap(t=>{switch(e.type){case\"All\"/* All */:return[t];case\"Equals\"/* Equals */:return this.queryEquals(t,e,r);case\"NotEquals\"/* NotEquals */:return this.queryNotEquals(t,e,r);case\"LessThan\"/* LessThan */:return this.queryLessThan(t,e,r);case\"GreaterThan\"/* GreaterThan */:return this.queryGreaterThan(t,e,r);case\"Contains\"/* Contains */:return this.queryContains(t,e,r);case\"StartsWith\"/* StartsWith */:return this.queryStartsWith(t,e,r);case\"EndsWith\"/* EndsWith */:return this.queryEndsWith(t,e,r);default:b(e);}}),[e.entries]),n=[];for(let t of r)for(let e of t){let t={};for(let r=0;r<this.options.fieldNames.length;r++){let n=this.options.fieldNames[r],i=e.values[r];t[n]=i;}n.push({pointer:e.pointer.toString(),data:t});}return n;}queryEquals(t,e,r){let n=this.getLeftMost(t,r,e.value),i=this.getRightMost(t,r,e.value),s=t.slice(n,i+1);return s.length>0?[s]:[];}queryNotEquals(t,e,r){let n=this.getLeftMost(t,r,e.value),i=this.getRightMost(t,r,e.value),s=[],a=t.slice(0,n);a.length>0&&s.push(a);let o=t.slice(i+1);return o.length>0&&s.push(o),s;}queryLessThan(t,e,r){let n=this.getRightMost(t,r,null);if(t=t.slice(n+1),e.inclusive){let n=this.getRightMost(t,r,e.value),i=t.slice(0,n+1);return i.length>0?[i]:[];}let i=this.getLeftMost(t,r,e.value),s=t.slice(0,i);return s.length>0?[s]:[];}queryGreaterThan(t,e,r){let n=this.getRightMost(t,r,null);if(t=t.slice(n+1),e.inclusive){let n=this.getLeftMost(t,r,e.value),i=t.slice(n);return i.length>0?[i]:[];}let i=this.getRightMost(t,r,e.value),s=t.slice(i+1);return s.length>0?[s]:[];}queryContains(t,e,r){return this.findItems(t,r,t=>{if(t?.type!==y.String||e.value?.type!==y.String)return!1;let r=t.value,n=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),n=n.toLowerCase()),r.includes(n);});}queryStartsWith(t,e,r){return this.findItems(t,r,t=>{if(t?.type!==y.String||e.value?.type!==y.String)return!1;let r=t.value,n=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),n=n.toLowerCase()),r.startsWith(n);});}queryEndsWith(t,e,r){return this.findItems(t,r,t=>{if(t?.type!==y.String||e.value?.type!==y.String)return!1;let r=t.value,n=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),n=n.toLowerCase()),r.endsWith(n);});}/**\n   * Returns the index of the left most entry that is equal to the target.\n   *\n   * ```text\n   *   Left most\n   *       ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the left most entry that is equal to the target.\n   */getLeftMost(e,r,n){let i=0,s=e.length;for(;i<s;){let a=i+s>>1,o=e[a],u=o.values[r];0>t.compare(u,n,this.collation)?i=a+1:s=a;}return i;}/**\n   * Returns the index of the right most entry that is equal to the target.\n   *\n   * ```text\n   *              Right most\n   *                   ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the right most entry that is equal to the target.\n   */getRightMost(e,r,n){let i=0,s=e.length;for(;i<s;){let a=i+s>>1,o=e[a],u=o.values[r];t.compare(u,n,this.collation)>0?s=a:i=a+1;}return s-1;}/**\n   * Finds all items that are matching the predicate and groups adjacent items together.\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param predicate The predicate to match the values against.\n   * @returns An array of chunks that match the predicate.\n   */findItems(t,e,r){let n=[],i=0;for(let s=0;s<t.length;s++){let a=t[s],o=a.values[e],u=r(o);if(!u){if(i<s){let e=t.slice(i,s);n.push(e);}i=s+1;}}if(i<t.length){let e=t.slice(i);n.push(e);}return n;}constructor(t){this.options=t,c(this,\"schema\"),c(this,\"fields\"),c(this,\"supportedLookupTypes\",[\"All\"/* All */,\"Equals\"/* Equals */,\"NotEquals\"/* NotEquals */,\"LessThan\"/* LessThan */,\"GreaterThan\"/* GreaterThan */,\"Contains\"/* Contains */,\"StartsWith\"/* StartsWith */,\"EndsWith\"/* EndsWith */]),c(this,\"modelPromise\"),c(this,\"model\"),c(this,\"collation\");let e={},r=[];for(let t of this.options.fieldNames){let n=this.options.collectionSchema[t];I(n,\"Missing definition for field\",t),e[t]=n,r.push({type:\"Identifier\",name:t});}this.schema=e,this.fields=r,this.collation=this.options.collation;}},tA=class e{static read(r){let n=new e,i=r.readUint16();for(let e=0;e<i;e++){let e=r.readString(),i=t.read(r);n.setField(e,i);}return n;}write(e){for(let[r,n]of(e.writeUint16(this.fields.size),this.fields))e.writeString(r),t.write(e,n);}getData(){let t={};for(let[e,r]of this.fields)t[e]=r;return t;}setField(t,e){this.fields.set(t,e);}getField(t){return this.fields.get(t);}constructor(){c(this,\"fields\",/* @__PURE__ */new Map);}},tO=class{scanItems(){return this.itemsPromise??=tB(this.url).then(async t=>{if(!t.ok)throw Error(`Request failed: ${t.status} ${t.statusText}`);let e=await t.arrayBuffer(),r=new Uint8Array(e),n=new p(r),i=[],s=n.readUint32();for(let t=0;t<s;t++){let t=n.getOffset(),e=tA.read(n),r=n.getOffset()-t,s=new O(this.id,t,r),a=s.toString(),o={pointer:a,data:e.getData()};this.itemLoader.prime(a,o),i.push(o);}return i;}),this.itemsPromise;}resolveItem(t){return this.itemLoader.load(t);}constructor(t,e){this.id=t,this.url=e,c(this,\"itemsPromise\"),c(this,\"itemLoader\",new d.default(async t=>{let e=t.map(t=>{let e=O.fromString(t);return{from:e.offset,to:e.offset+e.length};}),r=await tM(this.url,e);return r.map((e,r)=>{let n=new p(e),i=tA.read(n),s=t[r];return I(s,\"Missing pointer\"),{pointer:s,data:i.getData()};});},{maxBatchSize:250}));}},tP=class{async scanItems(){let t=await Promise.all(this.chunks.map(async t=>t.scanItems()));return t.flat();}resolveItems(t){return Promise.all(t.map(t=>{let e=O.fromString(t),r=this.chunks[e.chunkId];return I(r,\"Missing chunk\"),r.resolveItem(t);}));}compareItems(t,e){let r=O.fromString(t.pointer),n=O.fromString(e.pointer);return r.compare(n);}compareValues(e,r,n){return t.compare(e,r,n);}constructor(t){this.options=t,c(this,\"id\"),c(this,\"schema\"),c(this,\"indexes\"),c(this,\"resolveRichText\"),c(this,\"resolveVectorSetItem\"),c(this,\"chunks\"),this.chunks=this.options.chunks.map((t,e)=>new tO(e,t)),this.schema=t.schema,this.indexes=t.indexes,this.resolveRichText=t.resolveRichText,this.resolveVectorSetItem=t.resolveVectorSetItem,this.id=t.id;}};export{tP as DatabaseCollection,tN as DatabaseDictionaryIndex};\nexport const __FramerMetadata__ = {\"exports\":{\"DatabaseDictionaryIndex\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DatabaseCollection\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{jsx as e}from\"react/jsx-runtime\";import{AutoBreakpointVariant as t,ComponentPresetsConsumer as r,Link as n,motion as o}from\"framer\";// ../../library/src/router/lazy.tsx\nimport{isValidElement as i}from\"react\";// ../../library/src/utils/utils.ts\nvar a,l=\"undefined\"!=typeof window,f=l&&\"function\"==typeof window.requestIdleCallback,u=\"preload\";function c(e){return\"object\"==typeof e&&null!==e&&!/*#__PURE__*/i(e)&&u in e;}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{Fragment as p,createElement as s}from\"react\";// src/code-generation/components/cms/bundled/assert.ts\nfunction m(e,...t){if(!e)throw Error(\"Assertion Error\"+(t.length>0?\": \"+t.join(\" \"):\"\"));}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nvar d=((a=d||{})[a.Fragment=1]=\"Fragment\",a[a.Link=2]=\"Link\",a[a.Module=3]=\"Module\",a[a.Tag=4]=\"Tag\",a[a.Text=5]=\"Text\",a);function g(i){let a=/* @__PURE__ */new Map;return l=>{let f=a.get(l);if(f)return f;let u=JSON.parse(l),d=function a(l){switch(l[0]){case 1/* Fragment */:{let[,...e]=l,t=e.map(a);return /*#__PURE__*/s(p,void 0,...t);}case 2/* Link */:{let[,e,...t]=l,r=t.map(a);return /*#__PURE__*/s(n,e,...r);}case 3/* Module */:{let[,n,o,f,u]=l;for(let e of f){let t=o[e];t&&(o[e]=a(t));}for(let e of u){let t=o[e];if(\"string\"!=typeof t)continue;let r=i[t];r&&(c(r)&&r.preload(),o[e]=r);}let p=i[n];return m(p,\"Module not found\"),c(p)&&p.preload(),/*#__PURE__*/e(r,{componentIdentifier:n,children:r=>/*#__PURE__*/e(t,{component:p,props:{...r,...o}})});}case 4/* Tag */:{let[,e,t,...r]=l,n=r.map(a);if(\"a\"===e)return /*#__PURE__*/s(o.a,t,...n);return /*#__PURE__*/s(e,t,...n);}case 5/* Text */:{let[,e]=l;return e;}}}(u);return a.set(l,d),d;};}export{d as RichTextJsonType,g as getRichTextJsonResolver};\nexport const __FramerMetadata__ = {\"exports\":{\"getRichTextJsonResolver\":{\"type\":\"reactComponent\",\"name\":\"getRichTextJsonResolver\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"RichTextJsonType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (0ea0c8c)\nimport{addPropertyControls as e,ControlType as t,lazy as l,QueryEngine as a}from\"framer\";import{DatabaseCollection as r,DatabaseDictionaryIndex as o}from\"./Jo_ECrywm-0.js\";import{getRichTextJsonResolver as m}from\"./Jo_ECrywm-1.js\";let i=l(()=>import(\"https://framerusercontent.com/modules/VKZwX904KZ4JJg8sMi80/ef61bMmMfuTKUcMoPtlX/OdPq90N5x.js\")),n=l(()=>import(\"https://framerusercontent.com/modules/HinzHCqaQGqFlrMw0ZC8/eV5woyoyL4yeQ6p64qS9/q8XPhoxmo.js\")),c=l(()=>import(\"https://framerusercontent.com/modules/8woIvqOJFINUQ4nZjmhP/uqlBvGa4Q5IvTjyLApSA/qll27GKwW.js\")),d=l(()=>import(\"https://framerusercontent.com/modules/HRfzYFBHTDmWBGq59hT6/27yPM226Qu2j5qy5KNQo/r5KOW_E8G.js\")),u=l(()=>import(\"https://framerusercontent.com/modules/w8ZH9AzfiCQcYJFdIhdX/Aoq1hHcP3Cx56LWu11xB/wNwkeHFQi.js\")),f={createdAt:{isNullable:!0,type:t.Date},cUGfm0XTC:{isNullable:!0,type:t.String},He0aHNdPH:{isNullable:!0,type:t.RichText},id:{isNullable:!1,type:t.String},nextItemId:{isNullable:!0,type:t.String},previousItemId:{isNullable:!0,type:t.String},q1Do62CvP:{isNullable:!0,type:t.String},q9mXGa4GX:{isNullable:!0,type:t.ResponsiveImage},updatedAt:{isNullable:!0,type:t.Date},xpeftzq6h:{isNullable:!0,type:t.String}},p=[\"id\"],s={type:1},y=[\"previousItemId\"],w=[\"nextItemId\"],C=[\"id\",\"cUGfm0XTC\"],h=[\"cUGfm0XTC\",\"id\"],g=[\"xpeftzq6h\"],N={type:0},x=[\"q9mXGa4GX\"],v=[\"q1Do62CvP\"],I=[\"He0aHNdPH\"],S=[\"cUGfm0XTC\"],U=[],R=e=>{let t=U[e];if(t)return t().then(e=>e.default);},G={\"local-module:canvasComponent/OdPq90N5x:default\":i,\"local-module:canvasComponent/q8XPhoxmo:default\":n,\"local-module:canvasComponent/qll27GKwW:default\":c,\"local-module:canvasComponent/r5KOW_E8G:default\":d,\"local-module:canvasComponent/wNwkeHFQi:default\":u},q=m(G),E=new a,L={collectionByLocaleId:{default:new r({chunks:[new URL(\"./Jo_ECrywm-chunk-default-0.framercms\",\"https://framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js\").href.replace(\"/modules/\",\"/cms/\")],id:\"d94b0237-f86b-4704-83d9-49c860777943default\",indexes:[new o({collation:s,collectionSchema:f,fieldNames:p,range:{from:0,to:121},url:new URL(\"./Jo_ECrywm-indexes-default-0.framercms\",\"https://framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js\").href.replace(\"/modules/\",\"/cms/\")}),new o({collation:s,collectionSchema:f,fieldNames:y,range:{from:121,to:241},url:new URL(\"./Jo_ECrywm-indexes-default-0.framercms\",\"https://framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js\").href.replace(\"/modules/\",\"/cms/\")}),new o({collation:s,collectionSchema:f,fieldNames:w,range:{from:241,to:357},url:new URL(\"./Jo_ECrywm-indexes-default-0.framercms\",\"https://framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js\").href.replace(\"/modules/\",\"/cms/\")}),new o({collation:s,collectionSchema:f,fieldNames:C,range:{from:357,to:557},url:new URL(\"./Jo_ECrywm-indexes-default-0.framercms\",\"https://framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js\").href.replace(\"/modules/\",\"/cms/\")}),new o({collation:s,collectionSchema:f,fieldNames:h,range:{from:557,to:757},url:new URL(\"./Jo_ECrywm-indexes-default-0.framercms\",\"https://framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js\").href.replace(\"/modules/\",\"/cms/\")}),new o({collation:N,collectionSchema:f,fieldNames:g,range:{from:757,to:889},url:new URL(\"./Jo_ECrywm-indexes-default-0.framercms\",\"https://framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js\").href.replace(\"/modules/\",\"/cms/\")}),new o({collation:N,collectionSchema:f,fieldNames:x,range:{from:889,to:1950},url:new URL(\"./Jo_ECrywm-indexes-default-0.framercms\",\"https://framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js\").href.replace(\"/modules/\",\"/cms/\")}),new o({collation:N,collectionSchema:f,fieldNames:v,range:{from:1950,to:2763},url:new URL(\"./Jo_ECrywm-indexes-default-0.framercms\",\"https://framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js\").href.replace(\"/modules/\",\"/cms/\")}),new o({collation:N,collectionSchema:f,fieldNames:I,range:{from:2763,to:15111},url:new URL(\"./Jo_ECrywm-indexes-default-0.framercms\",\"https://framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js\").href.replace(\"/modules/\",\"/cms/\")}),new o({collation:N,collectionSchema:f,fieldNames:S,range:{from:15111,to:15249},url:new URL(\"./Jo_ECrywm-indexes-default-0.framercms\",\"https://framerusercontent.com/modules/2K2v5njnH98UlXm0gbs6/zFCd3W5D8TtMWZJxIXA3/Jo_ECrywm.js\").href.replace(\"/modules/\",\"/cms/\")})],resolveRichText:q,resolveVectorSetItem:R,schema:f})},displayName:\"Works\",id:\"d94b0237-f86b-4704-83d9-49c860777943\"};export default L;e(L,{xpeftzq6h:{defaultValue:\"\",title:\"Title\",type:t.String},q9mXGa4GX:{title:\"Cover image\",type:t.ResponsiveImage},q1Do62CvP:{defaultValue:\"\",placeholder:\"\",title:\"Summary\",type:t.String},He0aHNdPH:{defaultValue:\"\",title:\"Content\",type:t.RichText},cUGfm0XTC:{preventLocalization:!0,title:\"Slug\",type:t.String},createdAt:{title:\"Created\",type:t.Date},updatedAt:{title:\"Updated\",type:t.Date},previousItemId:{dataIdentifier:\"local-module:collection/Jo_ECrywm:default\",title:\"Previous\",type:t.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/Jo_ECrywm:default\",title:\"Next\",type:t.CollectionReference}});export const enumToDisplayNameFunctions={};export const utils={async getSlugByRecordId(e,t){let[l]=await E.query({from:{data:L,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"cUGfm0XTC\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.cUGfm0XTC;},async getRecordIdBySlug(e,t){let[l]=await E.query({from:{data:L,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"cUGfm0XTC\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerSlug\":\"cUGfm0XTC\",\"framerData\":\"true\",\"framerCollectionId\":\"Jo_ECrywm\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerRecordIdKey\":\"id\",\"framerCollectionUtils\":\"1\",\"framerEnumToDisplayNameUtils\":\"2\",\"framerColorSyntax\":\"false\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (de48785)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;Libre Baskerville-italic\",\"GF;Libre Baskerville-italic\"]);export const fonts=[{explicitInter:true,fonts:[{family:\"Libre Baskerville\",openType:true,source:\"google\",style:\"italic\",url:\"https://fonts.gstatic.com/s/librebaskerville/v16/kmKhZrc3Hgbbcjq75U4uslyuy4kn0qNcaxMaDc2V2ro.woff2\",weight:\"400\"}]}];export const css=[\".framer-JJcGY .framer-styles-preset-3z8xb3:not(.rich-text-wrapper), .framer-JJcGY .framer-styles-preset-3z8xb3.rich-text-wrapper h1 { --framer-font-family: \\\"Libre Baskerville\\\", \\\"Libre Baskerville Placeholder\\\", serif; --framer-font-family-italic: \\\"Libre Baskerville\\\", \\\"Libre Baskerville Placeholder\\\", serif; --framer-font-open-type-features: 'dlig' on, 'frac' on, 'sups' on, 'sinf' on; --framer-font-size: 80px; --framer-font-style: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-italic: 400; --framer-letter-spacing: -2px; --framer-line-height: 1.2em; --framer-paragraph-spacing: 0px; --framer-text-alignment: left; --framer-text-color: var(--token-0ba7cc43-9dd6-43f5-bf85-fd56e07a2fea, #2a3132); --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-JJcGY .framer-styles-preset-3z8xb3:not(.rich-text-wrapper), .framer-JJcGY .framer-styles-preset-3z8xb3.rich-text-wrapper h1 { --framer-font-family: \\\"Libre Baskerville\\\", \\\"Libre Baskerville Placeholder\\\", serif; --framer-font-family-italic: \\\"Libre Baskerville\\\", \\\"Libre Baskerville Placeholder\\\", serif; --framer-font-open-type-features: 'dlig' on, 'frac' on, 'sups' on, 'sinf' on; --framer-font-size: 64px; --framer-font-style: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-italic: 400; --framer-letter-spacing: -2px; --framer-line-height: 1.2em; --framer-paragraph-spacing: 0px; --framer-text-alignment: left; --framer-text-color: var(--token-0ba7cc43-9dd6-43f5-bf85-fd56e07a2fea, #2a3132); --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-JJcGY .framer-styles-preset-3z8xb3:not(.rich-text-wrapper), .framer-JJcGY .framer-styles-preset-3z8xb3.rich-text-wrapper h1 { --framer-font-family: \\\"Libre Baskerville\\\", \\\"Libre Baskerville Placeholder\\\", serif; --framer-font-family-italic: \\\"Libre Baskerville\\\", \\\"Libre Baskerville Placeholder\\\", serif; --framer-font-open-type-features: 'dlig' on, 'frac' on, 'sups' on, 'sinf' on; --framer-font-size: 42px; --framer-font-style: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-italic: 400; --framer-letter-spacing: -1px; --framer-line-height: 1.2em; --framer-paragraph-spacing: 0px; --framer-text-alignment: left; --framer-text-color: var(--token-0ba7cc43-9dd6-43f5-bf85-fd56e07a2fea, #2a3132); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }\"];export const className=\"framer-JJcGY\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (bbed9c4)\nexport default function metadata(params,activeLocale){return{description:\"Hector Banuelos is a seasoned graphic and motion designer with over 12 years of experience developing brand identities. He specializes in marketing and social media for clients such as Timex, U.S. Soccer and Uber. \\n\",favicon:\"https://framerusercontent.com/assets/51gd59yp7MaI6mHGVX8rOheLCDo.png\",robots:\"max-image-preview:large\",socialImage:\"https://framerusercontent.com/assets/SPdKJuJmP0A7BcGKbCCSPPTPo.png\",title:\"Hector Banuelos\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}