{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/RFM6zI5MxOiqwwNiQep4/g46SbqOSBOGIULlND7xM/gtm.js", "ssg:https://framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/HMvbWm8DYGjaZ8u68pI6/utils.js", "ssg:https://framerusercontent.com/modules/zvf2WTzc98u6EX2y7YDj/V4Q7HrNs7yipqQfhEhc9/consent.js", "ssg:https://framerusercontent.com/modules/HKzIAGtbudIGLRAteuFH/CCpUsPPKoqHrXP3zvE2C/inEU.js", "ssg:https://framerusercontent.com/modules/0oeZpJVursioGAbwgB9e/A4ld94elrQNddtXvgzeQ/region.js", "ssg:https://framerusercontent.com/modules/80EyUU0Nk6u7skW3IlHH/tkWTloReAPu2itGir1L5/Icons.js", "ssg:https://framer.com/m/Toggle-zGbN.js@phy2eFc7N84QBgE1yepP", "ssg:https://framerusercontent.com/modules/EkwkxVF9vkTs720qqBC8/zCKXKufS1PpbGVlIDuPE/Banner.js", "ssg:https://framerusercontent.com/modules/GbX8S6ghmyszcS2GLR2F/MkSJT6jOyPQYljBpRuaa/Cookies.js"],
  "sourcesContent": ["import { isBrowser } from \"framer-motion\";\nexport const DEFAULT_DOMAIN = \"https://www.googletagmanager.com\";\nexport const DEFAULT_SCRIPT_NAME = \"gtm.js\"; /**\n                                             * Function to get and set dataLayer\n                                             * @param dataLayer - The dataLayer\n                                             * @param dataLayerName - The dataLayer name\n                                             */\nconst getDataLayerSnippet = (dataLayer, dataLayerName = \"dataLayer\") => `window.${dataLayerName} = window.${dataLayerName} || [];` + (dataLayer ? `window.${dataLayerName}.push(${JSON.stringify(dataLayer)})` : \"\"); /**\n                                                                                                                                                                                                                      * Function to get the Iframe snippet\n                                                                                                                                                                                                                      * @param environment - The parameters to use a custom environment\n                                                                                                                                                                                                                      * @param customDomain - Custom domain for gtm\n                                                                                                                                                                                                                      * @param id - The id of the container\n                                                                                                                                                                                                                      */\nconst getIframeSnippet = (id, environment, customDomain = DEFAULT_DOMAIN) => {\n  let params = ``;\n  if (environment) {\n    const {\n      gtm_auth,\n      gtm_preview\n    } = environment;\n    params = `&gtm_auth=${gtm_auth}&gtm_preview=${gtm_preview}&gtm_cookies_win=x`;\n  }\n  return `<iframe src=\"${customDomain}/ns.html?id=${id}${params}\" height=\"0\" width=\"0\" style=\"display:none;visibility:hidden\" id=\"tag-manager\"></iframe>`;\n}; /**\n   * Function to get the GTM script\n   * @param dataLayerName - The name of the dataLayer\n   * @param customDomain - Custom domain for gtm\n   * @param customScriptName - Custom script file name for gtm\n   * @param environment - The parameters to use a custom environment\n   * @param id - The id of the container\n   */\nconst getGTMScript = (dataLayerName, id, environment, customDomain = DEFAULT_DOMAIN, customScriptName = DEFAULT_SCRIPT_NAME) => {\n  let params = ``;\n  if (environment) {\n    const {\n      gtm_auth,\n      gtm_preview\n    } = environment;\n    params = `+\"&gtm_auth=${gtm_auth}&gtm_preview=${gtm_preview}&gtm_cookies_win=x\"`;\n  }\n  return `\n    (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n      new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n      j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n      '${customDomain}/${customScriptName}?id='+i+dl${params};f.parentNode.insertBefore(j,f);\n    })(window,document,'script','${dataLayerName}','${id}');\n  `;\n}; /**\n   * Function to setup the Google Tag Manager\n   * @param params - The snippets params\n   */\nconst setupGTM = params => {\n  const getDataLayerScript = () => {\n    const dataLayerScript = document.createElement(\"script\");\n    if (params.nonce) {\n      dataLayerScript.setAttribute(\"nonce\", params.nonce);\n    }\n    dataLayerScript.innerHTML = getDataLayerSnippet(params.dataLayer, params.dataLayerName);\n    return dataLayerScript;\n  };\n  const getNoScript = () => {\n    const noScript = document.createElement(\"noscript\");\n    noScript.innerHTML = getIframeSnippet(params.id, params.environment, params.customDomain);\n    return noScript;\n  };\n  const getScript = () => {\n    const script = document.createElement(\"script\");\n    if (params.nonce) {\n      script.setAttribute(\"nonce\", params.nonce);\n    }\n    script.innerHTML = getGTMScript(params.dataLayerName, params.id, params.environment, params.customDomain, params.customScriptName);\n    return script;\n  };\n  return {\n    getDataLayerScript,\n    getNoScript,\n    getScript\n  };\n}; /**\n   * Function to init the GTM\n   * @param dataLayer - The dataLayer\n   * @param dataLayerName - The dataLayer name\n   * @param environment - Specify the custom environment to use\n   * @param nonce - Server-generated nonce\n   * @param id - The ID of the GTM\n   */\nexport const initGTM = ({\n  dataLayer,\n  dataLayerName,\n  environment,\n  nonce,\n  id,\n  customDomain,\n  customScriptName\n}) => {\n  const gtm = setupGTM({\n    dataLayer,\n    dataLayerName,\n    environment,\n    nonce,\n    id,\n    customDomain,\n    customScriptName\n  });\n  const dataLayerScript = gtm.getDataLayerScript();\n  const script = gtm.getScript();\n  const noScript = gtm.getNoScript();\n  document.head.insertBefore(dataLayerScript, document.head.childNodes[0]);\n  document.head.insertBefore(script, document.head.childNodes[1]);\n  document.body.insertBefore(noScript, document.body.childNodes[0]);\n}; /**\n   * Function to send the events to the GTM\n   * I can't find how to type a function using the \"arguments\" keyword so I've setup\n   * a wrapper function that mutes typescript.\n   */\nfunction gtag() {\n  if (isBrowser) {\n    window[\"dataLayer\"] = window[\"dataLayer\"] || [];\n    window[\"dataLayer\"].push(arguments);\n  }\n}\nexport function sendToGTM(...args) {\n  // @ts-ignore\n  gtag(...args);\n}\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"DEFAULT_SCRIPT_NAME\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"sendToGTM\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"initGTM\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"DEFAULT_DOMAIN\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};\n//# sourceMappingURL=./gtm.map", "export const DEFAULT_FONT_FAMILY = `\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;\nexport function getFlexboxValues(position) {\n  const positionParts = position.split(\"-\");\n  let justifyContent, alignItems;\n  switch (positionParts[0]) {\n    case \"top\":\n      alignItems = \"flex-start\";\n      break;\n    case \"bottom\":\n      alignItems = \"flex-end\";\n      break;\n    case \"center\":\n      alignItems = \"center\";\n      break;\n    default:\n      alignItems = \"initial\";\n      break;\n  }\n  switch (positionParts[1]) {\n    case \"left\":\n      justifyContent = \"flex-start\";\n      break;\n    case \"right\":\n      justifyContent = \"flex-end\";\n      break;\n    case \"center\":\n      justifyContent = \"center\";\n      break;\n    default:\n      justifyContent = \"initial\";\n      break;\n  }\n  return {\n    justifyContent,\n    alignItems\n  };\n}\nexport function getMultipleShadows(...shadows) {\n  const output = [];\n  shadows.forEach(shadow => {\n    return shadow && output.push(shadow);\n  });\n  return output.join(\", \");\n}\nexport function getShadow(shadow) {\n  if (shadow) {\n    return `${shadow.shadowX}px ${shadow.shadowY}px ${shadow.shadowBlur}px ${shadow.shadowColor}`;\n  } else return null;\n}\nexport function safeJSONParse(jsonString, onError) {\n  try {\n    return JSON.parse(jsonString);\n  } catch {\n    if (onError) onError();\n  }\n}\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"getFlexboxValues\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"safeJSONParse\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"DEFAULT_FONT_FAMILY\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"getMultipleShadows\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"getShadow\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"FlexboxPosition\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};\n//# sourceMappingURL=./utils.map", "import { useEffect, useReducer } from \"react\";\nimport { isBrowser } from \"framer-motion\";\nimport { useIsOnFramerCanvas } from \"framer\";\nimport { sendToGTM, initGTM } from \"https://framerusercontent.com/modules/RFM6zI5MxOiqwwNiQep4/g46SbqOSBOGIULlND7xM/gtm.js\";\nimport { safeJSONParse } from \"https://framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/HMvbWm8DYGjaZ8u68pI6/utils.js\";\nfunction toGTMConsent(consent) {\n  return {\n    functionality_storage: consent.necessary ? \"granted\" : \"denied\",\n    security_storage: consent.necessary ? \"granted\" : \"denied\",\n    ad_storage: consent.marketing ? \"granted\" : \"denied\",\n    analytics_storage: consent.analytics ? \"granted\" : \"denied\",\n    personalization_storage: consent.preferences ? \"granted\" : \"denied\"\n  };\n}\nfunction reducer(state, action) {\n  switch (action.type) {\n    case \"autoAccept\":\n      return {\n        ...state,\n        sync: true,\n        modes: {\n          analytics: true,\n          marketing: true,\n          necessary: true,\n          preferences: true\n        }\n      };\n    case \"acceptAll\":\n      return {\n        ...state,\n        sync: true,\n        dismissed: true,\n        modes: {\n          analytics: true,\n          marketing: true,\n          necessary: true,\n          preferences: true\n        }\n      };\n    case \"rejectAll\":\n      return {\n        ...state,\n        sync: true,\n        dismissed: true,\n        modes: {\n          analytics: false,\n          marketing: false,\n          necessary: false,\n          preferences: false\n        }\n      };\n    case \"acceptCurrent\":\n      return {\n        ...state,\n        dismissed: true,\n        sync: true\n      };\n    case \"update\":\n      return {\n        ...state,\n        modes: {\n          ...state.modes,\n          ...action.modes\n        },\n        sync: action.sync\n      };\n    case \"toggle\":\n      return {\n        ...state,\n        modes: {\n          ...state.modes,\n          [action.mode]: !state.modes[action.mode]\n        }\n      };\n    case \"initFromLocalStorage\":\n      return {\n        ...state,\n        modes: action.modes,\n        dismissed: action.dismissed,\n        initializedFromLocalStorage: true,\n        sync: true\n      };\n    case \"dismiss\":\n      return {\n        ...state,\n        dismissed: true\n      };\n    case \"synced\":\n      return {\n        ...state,\n        sync: false,\n        hasSynced: true\n      };\n    default:\n      return state;\n  }\n}\nconst initialState = {\n  dismissed: false,\n  modes: null,\n  sync: false,\n  initializedFromLocalStorage: false,\n  hasSynced: false\n};\nexport const defaultConsent = {\n  necessary: false,\n  analytics: false,\n  marketing: false,\n  preferences: false\n};\nexport function useConsent({\n  gtmId,\n  defaultConsent\n}) {\n  const [state, dispatch] = useReducer(reducer, initialState);\n  const isOnFramerCanvas = useIsOnFramerCanvas();\n  const consentModeLocalStorageKey = \"framerCookiesConsentMode\";\n  const dismissedLocalStorageKey = \"framerCookiesDismissed\";\n  function getStateFromLocalStorage() {\n    const consentFromLocalStorage = localStorage.getItem(consentModeLocalStorageKey);\n    const dismissedFromLocalStorage = localStorage.getItem(dismissedLocalStorageKey);\n    const hasDismissed = dismissedFromLocalStorage !== null;\n    dispatch({\n      type: \"initFromLocalStorage\",\n      dismissed: hasDismissed,\n      modes: consentFromLocalStorage !== null && hasDismissed ? safeJSONParse(consentFromLocalStorage, () => localStorage.removeItem(consentModeLocalStorageKey)) : defaultConsent\n    });\n  }\n  function syncToGTM() {\n    if (gtmId) {\n      const isFirstSync = !state.hasSynced;\n      if (isFirstSync) {\n        // This is the first time we sync consent, so we save it as \"default\" and initialize tag manager.\n        // This order is important, because we need to have set the default consent BEFORE we initialize GTM.\n        // https://developers.google.com/tag-platform/devguides/consent?tab=tag-manager&sjid=11348191096952324675-EU#implementation_example\n        sendToGTM(\"consent\", \"default\", toGTMConsent(state.modes));\n        initGTM({\n          dataLayer: undefined,\n          dataLayerName: \"dataLayer\",\n          environment: undefined,\n          nonce: undefined,\n          injectScript: true,\n          id: gtmId\n        });\n      } else {\n        sendToGTM(\"consent\", \"update\", toGTMConsent(state.modes));\n      }\n    }\n  }\n  useEffect(() => {\n    getStateFromLocalStorage();\n  }, []); // Anytime the dismissed value is updated, we need to persist it in local storage.\n  useEffect(() => {\n    if (state.dismissed) {\n      localStorage.setItem(dismissedLocalStorageKey, \"true\");\n    }\n  }, [state.dismissed]); // Sync data to dataLayer and localStorage.\n  useEffect(() => {\n    const shouldSync = state.sync && isBrowser && !isOnFramerCanvas && state.modes !== null;\n    if (!shouldSync) {\n      return;\n    }\n    syncToGTM(); // Save locally\n    localStorage.setItem(consentModeLocalStorageKey, JSON.stringify(state.modes));\n    dispatch({\n      type: \"synced\"\n    });\n  }, [state.sync]);\n  function dismiss() {\n    dispatch({\n      type: \"dismiss\"\n    });\n    localStorage.setItem(dismissedLocalStorageKey, \"true\");\n  }\n  function autoAccept() {\n    dispatch({\n      type: \"autoAccept\"\n    });\n  }\n  function acceptAll() {\n    dispatch({\n      type: \"acceptAll\"\n    });\n  }\n  function rejectAll() {\n    dispatch({\n      type: \"rejectAll\"\n    });\n  }\n  function acceptCurrent() {\n    dispatch({\n      type: \"acceptCurrent\"\n    });\n  }\n  function toggleMode(mode) {\n    dispatch({\n      type: \"toggle\",\n      mode\n    });\n  }\n  return {\n    modes: state.modes,\n    isInitialized: state.hasSynced,\n    isDismissed: state.dismissed,\n    dismiss,\n    autoAccept,\n    acceptAll,\n    rejectAll,\n    acceptCurrent,\n    toggleMode\n  };\n}\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"ConsentModeName\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"defaultConsent\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"useConsent\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"ConsentModes\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};\n//# sourceMappingURL=./consent.map", "// Check if visitor is in EU\nconst countries = [\"BE\", \"EL\", \"LT\", \"PT\", \"BG\", \"ES\", \"LU\", \"RO\", \"CZ\", \"FR\", \"RE\", \"GP\", \"MQ\", \"GF\", \"YT\", \"BL\", \"MF\", \"PM\", \"WF\", \"PF\", \"NC\", \"HU\", \"SI\", \"DK\", \"FO\", \"GL\", \"HR\", \"MT\", \"SK\", \"DE\", \"IT\", \"NL\", \"AW\", \"CW\", \"SX\", \"FI\", \"AX\", \"EE\", \"CY\", \"AT\", \"SE\", \"IE\", \"LV\", \"PL\", \"UK\", \"GB\", \"AI\", \"BM\", \"IO\", \"VG\", \"KY\", \"FK\", \"GI\", \"MS\", \"PN\", \"SH\", \"TC\", \"GG\", \"JE\", \"IM\"];\nconst isInEUTimezone = () => {\n  var ref, ref1, ref2;\n  return (ref1 = (ref = Intl === null || Intl === void 0 ? void 0 : Intl.DateTimeFormat()) === null || ref === void 0 ? void 0 : ref.resolvedOptions()) === null || ref1 === void 0 ? void 0 : (ref2 = ref1.timeZone) === null || ref2 === void 0 ? void 0 : ref2.startsWith(\"Europe\");\n};\nconst isEULocale = () => {\n  var ref;\n  var _language;\n  const locale = (_language = navigator.language) !== null && _language !== void 0 ? _language : (ref = navigator.languages) === null || ref === void 0 ? void 0 : ref[0];\n  return countries.some(country => {\n    var ref;\n    return (ref = locale === null || locale === void 0 ? void 0 : locale.toUpperCase()) === null || ref === void 0 ? void 0 : ref.includes(country);\n  });\n};\nexport const inEU = () => {\n  return isInEUTimezone() || isEULocale();\n};\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"inEU\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};\n//# sourceMappingURL=./inEU.map", "import { isBrowser } from \"framer-motion\";\nimport { inEU } from \"https://framerusercontent.com/modules/HKzIAGtbudIGLRAteuFH/CCpUsPPKoqHrXP3zvE2C/inEU.js\";\nexport function useRegion({\n  content,\n  useRegionFromProps\n}) {\n  const isInEUBasedOnLocation = isBrowser ? inEU() : false;\n  const regionBasedOnLocation = isInEUBasedOnLocation ? \"EU\" : \"World\";\n  const regionFromProps = content.isEU ? \"EU\" : \"World\";\n  const regionContent = {\n    EU: {\n      title: content.euTitle,\n      description: content.euDescription,\n      type: content.euType,\n      defaults: content.euDefaults,\n      policy: content.euPolicy,\n      blocking: content.euBlocking\n    },\n    World: {\n      title: content.worldTitle,\n      description: content.worldDescription,\n      type: content.worldType,\n      defaults: content.worldDefaults,\n      policy: content.worldPolicy,\n      blocking: content.worldBlocking\n    }\n  };\n  return regionContent[useRegionFromProps ? regionFromProps : regionBasedOnLocation];\n}\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"RegionType\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"RegionContent\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"useRegion\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};", "import { jsx as _jsx } from \"react/jsx-runtime\";\nexport const IconCookie = props => /*#__PURE__*/_jsx(\"svg\", {\n  xmlns: \"http://www.w3.org/2000/svg\",\n  viewBox: \"0 0 256 256\",\n  width: props.width,\n  height: props.height,\n  style: {\n    ...props.style,\n    color: props.color,\n    fill: props.color\n  },\n  children: /*#__PURE__*/_jsx(\"path\", {\n    d: \"M164.49,163.51a12,12,0,1,1-17,0A12,12,0,0,1,164.49,163.51Zm-81-8a12,12,0,1,0,17,0A12,12,0,0,0,83.51,155.51Zm9-39a12,12,0,1,0-17,0A12,12,0,0,0,92.49,116.49Zm48-1a12,12,0,1,0,0,17A12,12,0,0,0,140.49,115.51ZM232,128A104,104,0,1,1,128,24a8,8,0,0,1,8,8,40,40,0,0,0,40,40,8,8,0,0,1,8,8,40,40,0,0,0,40,40A8,8,0,0,1,232,128Zm-16.31,7.39A56.13,56.13,0,0,1,168.5,87.5a56.13,56.13,0,0,1-47.89-47.19,88,88,0,1,0,95.08,95.08Z\"\n  })\n});\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"IconCookie\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};\n//# sourceMappingURL=./Icons.map", "// Generated by Framer (1445756)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";const cycleOrder=[\"zReINw005\",\"n1Lxx4QSl\"];const variantClassNames={n1Lxx4QSl:\"framer-v-ydz03l\",zReINw005:\"framer-v-35610y\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const humanReadableVariantMap={Off:\"zReINw005\",On:\"n1Lxx4QSl\"};const transitions={default:{damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"}};const Component=/*#__PURE__*/ React.forwardRef(function({id,style,className,width,height,layoutId,variant:outerVariant=\"zReINw005\",background:oep5aWG90=\"rgb(0, 153, 255)\",backgroundInactive:wdGQJh0F_=\"rgba(0, 0, 0, 0.1)\",...restProps},ref){const outerVariantId=humanReadableVariantMap[outerVariant];const variant=outerVariantId||outerVariant;const{baseVariant,classNames,gestureVariant,setGestureState,setVariant,transition,variants}=useVariantState({cycleOrder,defaultVariant:\"zReINw005\",transitions,variant,variantClassNames});const layoutDependency=variants.join(\"-\")+restProps.layoutDependency;const defaultLayoutId=React.useId();return /*#__PURE__*/ _jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/ _jsx(motion.div,{initial:variant,animate:variants,onHoverStart:()=>setGestureState({isHovered:true}),onHoverEnd:()=>setGestureState({isHovered:false}),onTapStart:()=>setGestureState({isPressed:true}),onTap:()=>setGestureState({isPressed:false}),onTapCancel:()=>setGestureState({isPressed:false}),className:cx(\"framer-4aJ9g\",classNames),style:{display:\"contents\"},children:/*#__PURE__*/ _jsx(motion.div,{...restProps,className:cx(\"framer-35610y\",className),\"data-framer-name\":\"Off\",layoutDependency:layoutDependency,layoutId:\"zReINw005\",ref:ref,style:{backgroundColor:wdGQJh0F_,borderBottomLeftRadius:20,borderBottomRightRadius:20,borderTopLeftRadius:20,borderTopRightRadius:20,...style},transition:transition,variants:{n1Lxx4QSl:{backgroundColor:oep5aWG90}},...addPropertyOverrides({n1Lxx4QSl:{\"data-framer-name\":\"On\"}},baseVariant,gestureVariant),children:/*#__PURE__*/ _jsx(motion.div,{className:\"framer-u7n9zz\",layoutDependency:layoutDependency,layoutId:\"O3uKgVodv\",style:{backgroundColor:\"rgb(255, 255, 255)\",borderBottomLeftRadius:\"50%\",borderBottomRightRadius:\"50%\",borderTopLeftRadius:\"50%\",borderTopRightRadius:\"50%\"},transition:transition})})})});});const css=['.framer-4aJ9g [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }',\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-4aJ9g .framer-15sckd1 { display: block; }\",\".framer-4aJ9g .framer-35610y { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 14px; justify-content: flex-start; overflow: hidden; padding: 2px 2px 2px 2px; position: relative; width: 24px; will-change: transform; }\",\".framer-4aJ9g .framer-u7n9zz { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 10px); overflow: visible; position: relative; width: 10px; z-index: 2; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-4aJ9g .framer-35610y { gap: 0px; } .framer-4aJ9g .framer-35610y > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-4aJ9g .framer-35610y > :first-child { margin-left: 0px; } .framer-4aJ9g .framer-35610y > :last-child { margin-right: 0px; } }\",\".framer-4aJ9g.framer-v-ydz03l .framer-35610y { justify-content: flex-end; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 14\n * @framerIntrinsicWidth 24\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"n1Lxx4QSl\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"oep5aWG90\":\"background\",\"wdGQJh0F_\":\"backgroundInactive\"}\n */ const FramerBlf0sjosZ=withCSS(Component,css,\"framer-4aJ9g\");export default FramerBlf0sjosZ;FramerBlf0sjosZ.displayName=\"Toggle\";FramerBlf0sjosZ.defaultProps={height:14,width:24};addPropertyControls(FramerBlf0sjosZ,{variant:{options:[\"zReINw005\",\"n1Lxx4QSl\"],optionTitles:[\"Off\",\"On\"],title:\"Variant\",type:ControlType.Enum},oep5aWG90:{defaultValue:\"rgb(0, 153, 255)\",title:\"Background\",type:ControlType.Color},wdGQJh0F_:{defaultValue:\"rgba(0, 0, 0, 0.1)\",title:\"Background Inactive\",type:ControlType.Color}});addFonts(FramerBlf0sjosZ,[]);\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerBlf0sjosZ\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"n1Lxx4QSl\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerVariables\":\"{\\\"oep5aWG90\\\":\\\"background\\\",\\\"wdGQJh0F_\\\":\\\"backgroundInactive\\\"}\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"24\",\"framerIntrinsicHeight\":\"14\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Blf0sjosZ.map", "import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { useState } from \"react\";\nimport { AnimatePresence, motion } from \"framer-motion\";\nimport { DEFAULT_FONT_FAMILY, getMultipleShadows, getShadow } from \"https://framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/HMvbWm8DYGjaZ8u68pI6/utils.js\";\nimport Toggle from \"https://framer.com/m/Toggle-zGbN.js@phy2eFc7N84QBgE1yepP\";\nconst SPACING = 20;\nexport function Banner({\n  banner,\n  button,\n  region,\n  options,\n  previewOptions,\n  consentModes,\n  onDismiss,\n  onAcceptAll,\n  onRejectAll,\n  onAcceptCurrent,\n  onToggleConsent,\n  animateOnMount\n}) {\n  var ref;\n  const maxHeightReduction = banner.insetPerSide ? banner.insetTop + banner.insetBottom : banner.inset * 2;\n  const linkColor = banner.style.link || button.primary.fill;\n  const paddingValue = banner.paddingPerSide ? `${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px` : `${banner.padding}px`;\n  const bannerShadow = getShadow(banner.style.shadow);\n  const borderShadow = ((ref = banner.style.border) === null || ref === void 0 ? void 0 : ref.width) ? `inset 0 0 0 ${banner.style.border.width}px ${banner.style.border.color}` : null;\n  const bannerStyle = {\n    background: banner.style.fill,\n    boxShadow: getMultipleShadows(bannerShadow, borderShadow),\n    overflow: \"hidden\",\n    borderRadius: banner.style.border.radius\n  };\n  return /*#__PURE__*/_jsx(motion.div, {\n    initial: animateOnMount && {\n      x: banner.animation.x,\n      y: banner.animation.y,\n      scale: banner.animation.scale,\n      opacity: 0\n    },\n    animate: {\n      y: 0,\n      x: 0,\n      scale: 1,\n      opacity: 1\n    },\n    exit: {\n      x: banner.animation.x,\n      y: banner.animation.y,\n      scale: banner.animation.scale,\n      opacity: 0\n    },\n    transition: animateOnMount ? banner.animation.transition : {\n      duration: 0\n    },\n    style: {\n      fontFamily: DEFAULT_FONT_FAMILY,\n      maxHeight: `calc(100vh - ${maxHeightReduction}px)`,\n      flexDirection: \"column\",\n      gap: 12,\n      position: \"relative\",\n      display: \"flex\",\n      zIndex: 100,\n      pointerEvents: \"auto\"\n    },\n    children: /*#__PURE__*/_jsx(\"div\", {\n      style: {\n        ...bannerStyle,\n        overflow: \"scroll\",\n        width: \"100%\",\n        maxWidth: banner.width\n      },\n      children: region.type === \"simple\" ? /*#__PURE__*/_jsx(SimpleBanner, {\n        banner: banner,\n        button: button,\n        linkColor: linkColor,\n        description: region.description,\n        policy: region.policy,\n        onDismiss: onDismiss\n      }) : region.type === \"medium\" ? /*#__PURE__*/_jsx(AcceptRejectBanner, {\n        banner: banner,\n        button: button,\n        linkColor: linkColor,\n        title: region.title,\n        description: region.description,\n        policy: region.policy,\n        onAccept: onAcceptAll,\n        onReject: onRejectAll\n      }) : /*#__PURE__*/_jsx(OptionsBanner, {\n        banner: banner,\n        button: button,\n        options: options,\n        previewOptions: previewOptions,\n        linkColor: linkColor,\n        title: region.title,\n        description: region.description,\n        policy: region.policy,\n        onOptionToggle: onToggleConsent,\n        consent: consentModes,\n        onAcceptAll: onAcceptAll,\n        onRejectAll: onRejectAll,\n        onAcceptCurrent: onAcceptCurrent\n      })\n    })\n  });\n}\nfunction SimpleBanner({\n  banner,\n  button,\n  description,\n  policy,\n  onDismiss,\n  linkColor\n}) {\n  const padding = banner.paddingPerSide ? `${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px` : `${banner.padding}px`;\n  return /*#__PURE__*/_jsxs(\"div\", {\n    style: {\n      display: \"flex\",\n      flexDirection: \"row\",\n      padding,\n      gap: SPACING\n    },\n    children: [/*#__PURE__*/_jsx(Description, {\n      style: {\n        ...banner.style.fontBody,\n        flex: 1,\n        alignItems: \"center\",\n        color: banner.style.colorBody\n      },\n      linkColor: linkColor,\n      description: description,\n      policy: policy\n    }), /*#__PURE__*/_jsx(motion.div, {\n      style: {\n        display: \"flex\",\n        justifyContent: \"center\",\n        alignItems: \"center\"\n      },\n      children: /*#__PURE__*/_jsx(Button, {\n        onClick: onDismiss,\n        settings: {\n          ...button,\n          fluid: false\n        },\n        children: button.labels.confirm\n      })\n    })]\n  });\n}\nfunction AcceptRejectBanner({\n  banner,\n  button,\n  title,\n  linkColor,\n  description,\n  policy,\n  onAccept,\n  onReject\n}) {\n  const padding = banner.paddingPerSide ? `${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px` : `${banner.padding}px`;\n  return /*#__PURE__*/_jsxs(\"div\", {\n    style: {\n      padding\n    },\n    children: [/*#__PURE__*/_jsxs(\"div\", {\n      children: [title && /*#__PURE__*/_jsx(Headline, {\n        style: {\n          ...banner.style.fontTitle,\n          color: banner.style.colorTitle\n        },\n        children: title\n      }), /*#__PURE__*/_jsx(Description, {\n        style: {\n          ...banner.style.fontBody,\n          color: banner.style.colorBody\n        },\n        linkColor: linkColor,\n        description: description,\n        policy: policy\n      })]\n    }), /*#__PURE__*/_jsxs(Buttons, {\n      direction: button.direction,\n      children: [/*#__PURE__*/_jsx(Button, {\n        settings: button,\n        onClick: onReject,\n        children: button.labels.reject\n      }), /*#__PURE__*/_jsx(Button, {\n        settings: button,\n        primary: true,\n        onClick: onAccept,\n        children: button.labels.accept\n      })]\n    })]\n  });\n}\nfunction OptionsBanner({\n  banner,\n  button,\n  options,\n  previewOptions,\n  title,\n  description,\n  policy,\n  linkColor,\n  consent,\n  onAcceptCurrent,\n  onAcceptAll,\n  onRejectAll,\n  onOptionToggle\n}) {\n  const [showOptions, setShowOptions] = useState(false);\n  const optionTheme = {\n    ...options.style,\n    color: banner.style.colorBody\n  };\n  const padding = banner.paddingPerSide ? `${banner.paddingTop}px ${banner.paddingRight}px ${banner.paddingBottom}px ${banner.paddingLeft}px` : `${banner.padding}px`; // const optionNames = consent && Object.keys(consent)\n  const optionNames = [\"necessary\", \"preferences\", \"analytics\", \"marketing\"];\n  const shouldShowOptions = showOptions || previewOptions;\n  return /*#__PURE__*/_jsxs(\"div\", {\n    style: {\n      padding\n    },\n    children: [/*#__PURE__*/_jsxs(\"div\", {\n      children: [title && /*#__PURE__*/_jsx(Headline, {\n        style: {\n          ...banner.style.fontTitle,\n          color: banner.style.colorTitle\n        },\n        children: title\n      }), /*#__PURE__*/_jsx(Description, {\n        style: {\n          ...banner.style.fontBody,\n          color: banner.style.colorBody\n        },\n        linkColor: linkColor,\n        description: description,\n        policy: policy\n      }), /*#__PURE__*/_jsx(AnimatePresence, {\n        children: shouldShowOptions && /*#__PURE__*/_jsx(motion.div, {\n          initial: previewOptions ? null : {\n            opacity: 0,\n            height: 0\n          },\n          animate: {\n            opacity: 1,\n            height: \"auto\"\n          },\n          exit: {\n            opacity: 0,\n            height: 0\n          },\n          style: {\n            display: \"flex\",\n            flexDirection: \"column\",\n            gap: 10,\n            marginTop: SPACING,\n            overflow: \"hidden\"\n          },\n          children: optionNames && optionNames.map(option => /*#__PURE__*/_jsx(Option, {\n            title: options[option].title,\n            description: options[option].description,\n            titleColor: banner.style.colorTitle,\n            descriptionColor: banner.style.colorBody,\n            showDescription: options.descriptions,\n            enabled: consent[option],\n            onClick: () => onOptionToggle(option),\n            theme: optionTheme\n          }))\n        }, \"modal\")\n      })]\n    }), /*#__PURE__*/_jsx(Buttons, {\n      direction: button.direction,\n      children: shouldShowOptions ? /*#__PURE__*/_jsx(Button, {\n        settings: button,\n        primary: true,\n        onClick: onAcceptCurrent,\n        children: button.labels.save\n      }) : /*#__PURE__*/_jsxs(_Fragment, {\n        children: [/*#__PURE__*/_jsx(Button, {\n          settings: button,\n          onClick: onRejectAll,\n          children: button.labels.rejectAll\n        }), /*#__PURE__*/_jsx(Button, {\n          settings: button,\n          onClick: () => {\n            setShowOptions(true);\n          },\n          children: button.labels.customize\n        }), /*#__PURE__*/_jsx(Button, {\n          settings: button,\n          primary: true,\n          onClick: onAcceptAll,\n          children: button.labels.acceptAll\n        })]\n      })\n    })]\n  });\n}\nfunction Option({\n  title,\n  titleColor,\n  description,\n  descriptionColor,\n  showDescription,\n  enabled,\n  onClick,\n  theme\n}) {\n  const paddingValue = theme.paddingPerSide ? `${theme.paddingTop}px ${theme.paddingRight}px ${theme.paddingBottom}px ${theme.paddingLeft}px` : `${theme.padding}px`;\n  const borderShadow = theme.border ? `inset 0 0 0 ${theme.border.width}px ${theme.border.color}` : null;\n  return /*#__PURE__*/_jsxs(motion.div, {\n    style: {\n      boxShadow: borderShadow,\n      background: theme.background,\n      borderRadius: theme.border.radius,\n      padding: paddingValue,\n      cursor: \"pointer\",\n      userSelect: \"none\",\n      pointerEvents: \"all\"\n    },\n    onClick: onClick,\n    whileHover: {\n      opacity: .5\n    },\n    children: [/*#__PURE__*/_jsxs(\"div\", {\n      style: {\n        display: \"flex\",\n        justifyContent: \"space-between\"\n      },\n      children: [/*#__PURE__*/_jsx(\"p\", {\n        style: {\n          margin: 0,\n          fontWeight: 600,\n          fontSize: 12,\n          color: titleColor,\n          ...theme.fontTitle\n        },\n        children: title\n      }), /*#__PURE__*/_jsx(Toggle, {\n        variant: enabled ? \"On\" : \"Off\",\n        background: theme.toggleColor,\n        backgroundInactive: theme.toggleColorInactive\n      })]\n    }), description && /*#__PURE__*/_jsx(\"p\", {\n      style: {\n        margin: 0,\n        marginTop: 10,\n        fontSize: 12,\n        lineHeight: 1.5,\n        color: descriptionColor,\n        ...theme.fontBody\n      },\n      children: description\n    })]\n  });\n}\nfunction Headline({\n  children,\n  style\n}) {\n  return /*#__PURE__*/_jsx(\"h6\", {\n    style: {\n      fontSize: 14,\n      margin: \"0px 0px 10px 0px\",\n      padding: 0,\n      ...style\n    },\n    children: children\n  });\n}\nfunction Description({\n  style,\n  description,\n  policy,\n  linkColor\n}) {\n  const shouldShow = description || (policy === null || policy === void 0 ? void 0 : policy.link);\n  return shouldShow && /*#__PURE__*/_jsxs(\"p\", {\n    style: {\n      lineHeight: 1.5,\n      margin: 0,\n      padding: 0,\n      fontSize: 14,\n      ...style\n    },\n    children: [description, \" \", (policy === null || policy === void 0 ? void 0 : policy.link) && /*#__PURE__*/_jsxs(\"span\", {\n      children: [policy === null || policy === void 0 ? void 0 : policy.prefix, \" \", /*#__PURE__*/_jsx(\"a\", {\n        href: policy === null || policy === void 0 ? void 0 : policy.link,\n        target: \"_blank\",\n        style: {\n          color: linkColor,\n          textDecoration: \"none\"\n        },\n        children: policy === null || policy === void 0 ? void 0 : policy.label\n      }), \".\"]\n    })]\n  });\n}\nfunction Buttons({\n  children,\n  direction\n}) {\n  return /*#__PURE__*/_jsx(\"div\", {\n    style: {\n      display: \"flex\",\n      flexDirection: direction,\n      gap: 10,\n      marginTop: 16\n    },\n    children: children\n  });\n}\nfunction Button({\n  children,\n  primary,\n  settings,\n  onClick\n}) {\n  const paddingValue = settings.paddingPerSide ? `${settings.paddingTop}px ${settings.paddingRight}px ${settings.paddingBottom}px ${settings.paddingLeft}px` : `${settings.padding}px`;\n  const theme = primary ? settings.primary : settings.secondary;\n  return /*#__PURE__*/_jsx(motion.input, {\n    onClick: onClick,\n    type: \"button\",\n    value: `${children}`,\n    whileHover: {\n      opacity: .6\n    },\n    whileTap: {\n      opacity: .4\n    },\n    style: {\n      WebkitAppearance: \"none\",\n      appearance: \"none\",\n      width: settings.fluid ? \"100%\" : \"auto\",\n      height: \"auto\",\n      outline: \"none\",\n      border: \"none\",\n      padding: paddingValue,\n      borderRadius: settings.borderRadius,\n      boxShadow: getShadow(theme.shadow),\n      background: theme.fill,\n      color: theme.color,\n      fontSize: 14,\n      fontWeight: 600,\n      lineHeight: 1,\n      cursor: \"pointer\",\n      ...settings.font\n    }\n  });\n}\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"BannerComponentProps\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"Banner\": {\n      \"type\": \"reactComponent\",\n      \"name\": \"Banner\",\n      \"slots\": [],\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};\n//# sourceMappingURL=./Banner.map", "import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { createPortal } from \"react-dom\";\nimport { useEffect, useState } from \"react\";\nimport { addPropertyControls, ControlType, useIsOnFramerCanvas } from \"framer\";\nimport { AnimatePresence, motion } from \"framer-motion\";\nimport { useConsent, defaultConsent } from \"https://framerusercontent.com/modules/zvf2WTzc98u6EX2y7YDj/V4Q7HrNs7yipqQfhEhc9/consent.js\";\nimport { useRegion } from \"https://framerusercontent.com/modules/0oeZpJVursioGAbwgB9e/A4ld94elrQNddtXvgzeQ/region.js\";\nimport { DEFAULT_FONT_FAMILY, getFlexboxValues } from \"https://framerusercontent.com/modules/tfq8EDfrazNLXzc9LJte/HMvbWm8DYGjaZ8u68pI6/utils.js\";\nimport { IconCookie } from \"https://framerusercontent.com/modules/80EyUU0Nk6u7skW3IlHH/tkWTloReAPu2itGir1L5/Icons.js\";\nimport { Banner } from \"https://framerusercontent.com/modules/EkwkxVF9vkTs720qqBC8/zCKXKufS1PpbGVlIDuPE/Banner.js\"; // Keep track of open state between page reloads\nlet initiallyOpen = false; /**\n                           * COOKIE BANNER\n                           * By Floris Verloop\n                           *\n                           * @framerSupportedLayoutWidth auto\n                           * @framerSupportedLayoutHeight auto\n                           *\n                           * @framerDisableUnlink\n                           *\n                           */\nexport default function CookieBanner({\n  gtmId,\n  preview,\n  trigger,\n  banner,\n  button,\n  content,\n  options,\n  style\n}) {\n  const isOnFramerCanvas = useIsOnFramerCanvas();\n  const isPreview = preview && isOnFramerCanvas;\n  const region = useRegion({\n    content,\n    useRegionFromProps: isPreview\n  });\n  const consent = useConsent({\n    gtmId,\n    defaultConsent: region.defaults\n  });\n  const [isOpen, setIsOpen] = useState(initiallyOpen); // On page switch, disable all transitions so the banner shows up as fast as possible.\n  const [instantlyShowOnMount, setInstantlyShowOnMount] = useState(initiallyOpen);\n  useEffect(() => {\n    // Save open state between page switches\n    initiallyOpen = isOpen; // Disable instantly show on mount after first open\n    if (isOpen) {\n      setInstantlyShowOnMount(false);\n    }\n  }, [isOpen]); // Check if user should be prompted\n  useEffect(() => {\n    const noConsentGiven = consent.isInitialized && !consent.isDismissed;\n    const autoConsentAllowed = region.type === \"simple\";\n    if (noConsentGiven) {\n      setIsOpen(true); /** Automatically accept all cookies for simple banner. */\n      if (autoConsentAllowed) {\n        consent.autoAccept();\n      }\n    }\n    if (consent.isDismissed) {\n      setIsOpen(false);\n    }\n  }, [consent.isInitialized, consent.isDismissed]);\n  function handleDismiss() {\n    consent.dismiss();\n    setIsOpen(false);\n  }\n  function handleAcceptAll() {\n    consent.acceptAll();\n    setIsOpen(false);\n  }\n  function handleRejectAll() {\n    consent.rejectAll();\n    setIsOpen(false);\n  }\n  function handleAcceptCurrent() {\n    consent.acceptCurrent();\n    setIsOpen(false);\n  }\n  if (isPreview) {\n    return /*#__PURE__*/_jsx(\"div\", {\n      style: {\n        ...style,\n        width: banner.width\n      },\n      children: /*#__PURE__*/_jsx(Banner, {\n        banner: banner,\n        button: button,\n        region: region,\n        options: options,\n        previewOptions: isPreview && options.preview,\n        consentModes: {\n          ...defaultConsent,\n          necessary: true\n        },\n        animateOnMount: false\n      })\n    });\n  }\n  return /*#__PURE__*/_jsxs(_Fragment, {\n    children: [/*#__PURE__*/_jsx(Trigger, {\n      style: style,\n      trigger: trigger,\n      onClick: () => setIsOpen(true)\n    }), /*#__PURE__*/_jsx(AnimatePresence, {\n      children: isOpen && /*#__PURE__*/_jsx(Overlay, {\n        banner: banner,\n        button: button,\n        region: region,\n        options: options,\n        consentModes: consent.modes,\n        animateOnMount: !instantlyShowOnMount,\n        onAcceptAll: handleAcceptAll,\n        onAcceptCurrent: handleAcceptCurrent,\n        onRejectAll: handleRejectAll,\n        onDismiss: handleDismiss,\n        onToggleConsent: consent.toggleMode\n      })\n    })]\n  });\n}\n;\nfunction Overlay(props) {\n  var ref;\n  const insetValue = props.banner.insetPerSide ? `${props.banner.insetTop}px ${props.banner.insetRight}px ${props.banner.insetBottom}px ${props.banner.insetLeft}px` : `${props.banner.inset}px`;\n  const {\n    justifyContent,\n    alignItems\n  } = getFlexboxValues(props.banner.position);\n  return /*#__PURE__*/createPortal( /*#__PURE__*/_jsxs(motion.div, {\n    style: {\n      top: 0,\n      left: 0,\n      right: 0,\n      bottom: 0,\n      width: \"100%\",\n      height: \"100%\",\n      boxSizing: \"border-box\",\n      position: \"fixed\",\n      touchAction: \"none\",\n      padding: insetValue,\n      zIndex: props.banner.zIndex,\n      display: \"flex\",\n      flexDirection: \"row\",\n      gap: 20,\n      justifyContent,\n      alignItems,\n      pointerEvents: props.region.blocking ? \"all\" : \"none\"\n    },\n    children: [props.region.blocking && /*#__PURE__*/_jsx(Backdrop, {\n      color: (ref = props.banner.style) === null || ref === void 0 ? void 0 : ref.backdrop\n    }), /*#__PURE__*/_jsx(Banner, {\n      ...props\n    })]\n  }), document.body);\n}\nfunction Trigger({\n  trigger,\n  style,\n  onClick\n}) {\n  const isOnFramerCanvas = useIsOnFramerCanvas();\n  if (trigger.type !== \"none\") {\n    return /*#__PURE__*/_jsx(\"button\", {\n      \"aria-label\": \"Cookie Trigger\",\n      style: {\n        width: \"100%\",\n        height: \"100%\",\n        background: \"none\",\n        display: \"flex\",\n        border: \"none\",\n        outline: \"inherit\",\n        padding: 0,\n        color: trigger.color,\n        fontSize: 16,\n        cursor: \"pointer\",\n        ...trigger.textFont\n      },\n      onClick: onClick,\n      children: trigger.type === \"icon\" ? /*#__PURE__*/_jsx(_Fragment, {\n        children: trigger.iconType === \"custom\" && trigger.iconImage ? /*#__PURE__*/_jsx(\"img\", {\n          alt: \"icon entry point for Site Search\",\n          src: trigger.iconImage.src,\n          width: trigger.iconSize,\n          height: trigger.iconSize\n        }) : /*#__PURE__*/_jsx(IconCookie, {\n          width: trigger.iconSize,\n          height: trigger.iconSize,\n          color: trigger.color\n        })\n      }) : /*#__PURE__*/_jsx(\"span\", {\n        style: {\n          whiteSpace: \"nowrap\"\n        },\n        children: trigger.text\n      })\n    });\n  }\n  if (isOnFramerCanvas) {\n    return /*#__PURE__*/_jsxs(\"div\", {\n      style: {\n        borderRadius: 8,\n        color: \"#09F\",\n        border: \"1px dashed #09F\",\n        background: \"rgba(0, 153, 255, 0.1)\",\n        padding: 20,\n        display: \"flex\",\n        flexDirection: \"column\",\n        gap: 5,\n        fontFamily: DEFAULT_FONT_FAMILY,\n        textAlign: \"center\",\n        justifyContent: \"center\",\n        width: 164,\n        ...style\n      },\n      children: [/*#__PURE__*/_jsx(\"p\", {\n        style: {\n          fontSize: 12,\n          fontWeight: 600,\n          lineHeight: 1,\n          margin: 0\n        },\n        children: \"Cookie Banner\"\n      }), /*#__PURE__*/_jsx(\"p\", {\n        style: {\n          fontSize: 12,\n          lineHeight: 1.5,\n          margin: 0\n        },\n        children: \"Put on a page to add a Cookie Banner.\"\n      })]\n    });\n  }\n}\nfunction Backdrop({\n  color\n}) {\n  return /*#__PURE__*/_jsx(motion.div, {\n    initial: {\n      opacity: 0\n    },\n    animate: {\n      opacity: 1\n    },\n    exit: {\n      opacity: 0\n    },\n    style: {\n      position: \"absolute\",\n      top: 0,\n      left: 0,\n      right: 0,\n      bottom: 0,\n      width: \"100%\",\n      height: \"100%\",\n      backgroundColor: color,\n      pointerEvents: \"none\"\n    }\n  });\n}\naddPropertyControls(CookieBanner, {\n  gtmId: {\n    title: \"GTM ID\",\n    type: ControlType.String,\n    placeholder: \"GTM-AAAAAAA\",\n    description: \"Your GTM container ID.\\n[Learn more](https://www.framer.com/learn/cookie-banner/)\"\n  },\n  preview: {\n    type: ControlType.Boolean,\n    defaultValue: true,\n    description: \"Lets you preview the banner on the Canvas.\"\n  },\n  trigger: {\n    type: ControlType.Object,\n    buttonTitle: \"Icon, Text\",\n    controls: {\n      type: {\n        title: \"Type\",\n        type: ControlType.Enum,\n        options: [\"text\", \"icon\", \"none\"],\n        optionTitles: [\"Text\", \"Icon\", \"None\"],\n        defaultValue: \"text\",\n        displaySegmentedControl: true\n      },\n      iconType: {\n        title: \"Icon\",\n        type: ControlType.Enum,\n        options: [\"default\", \"custom\"],\n        optionTitles: [\"Default\", \"Custom\"],\n        displaySegmentedControl: true,\n        hidden: props => props.type !== \"icon\"\n      },\n      text: {\n        title: \"Label\",\n        type: ControlType.String,\n        defaultValue: \"Cookie Settings\",\n        hidden: props => props.type !== \"text\"\n      },\n      textFont: {\n        // @ts-ignore - internal\n        type: ControlType.Font,\n        title: \" \",\n        controls: \"extended\",\n        hidden: props => props.type !== \"text\"\n      },\n      iconSize: {\n        title: \"Size\",\n        type: ControlType.Number,\n        displayStepper: true,\n        defaultValue: 24,\n        hidden: props => props.type !== \"icon\"\n      },\n      color: {\n        title: \"Color\",\n        type: ControlType.Color,\n        defaultValue: \"#333\",\n        hidden: props => props.type === \"none\" || props.type === \"icon\" && props.iconType === \"custom\"\n      },\n      iconImage: {\n        title: \"File\",\n        type: ControlType.ResponsiveImage,\n        allowedFileTypes: [\"jpg\", \"png\", \"svg\"],\n        hidden: props => props.iconType === \"default\"\n      }\n    }\n  },\n  banner: {\n    title: \"Banner\",\n    type: ControlType.Object,\n    buttonTitle: \"Font, Styles\",\n    controls: {\n      position: {\n        type: ControlType.Enum,\n        title: \"Position\",\n        options: [\"top-left\", \"top-center\", \"top-right\", \"bottom-right\", \"bottom-center\", \"bottom-left\"],\n        optionTitles: [\"Top Left\", \"Top Center\", \"Top Right\", \"Bottom Right\", \"Bottom Center\", \"Bottom Left\"],\n        defaultValue: \"bottom-right\"\n      },\n      zIndex: {\n        title: \"Z Index\",\n        type: ControlType.Number,\n        defaultValue: 10,\n        displayStepper: true,\n        min: 0,\n        max: 10\n      },\n      width: {\n        title: \"Width\",\n        type: ControlType.Number,\n        defaultValue: 360,\n        min: 200,\n        max: 1e3,\n        displayStepper: true,\n        step: 5\n      },\n      padding: {\n        title: \"Padding\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\"Padding\", \"Padding per side\"],\n        defaultValue: 20,\n        valueKeys: [\"paddingTop\", \"paddingRight\", \"paddingBottom\", \"paddingLeft\"],\n        valueLabels: [\"T\", \"R\", \"B\", \"L\"],\n        min: 0\n      },\n      inset: {\n        title: \"Inset\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"insetPerSide\",\n        toggleTitles: [\"Inset\", \"Inset per side\"],\n        defaultValue: 20,\n        valueKeys: [\"insetTop\", \"insetRight\", \"insetBottom\", \"insetLeft\"],\n        valueLabels: [\"T\", \"R\", \"B\", \"L\"],\n        min: 0\n      },\n      style: {\n        type: ControlType.Object,\n        title: \"Style\",\n        buttonTitle: \"Fonts, Colors, Shadow\",\n        controls: {\n          fontTitle: {\n            // @ts-ignore - internal\n            type: ControlType.Font,\n            title: \"Title\",\n            controls: \"extended\"\n          },\n          colorTitle: {\n            title: \" \",\n            type: ControlType.Color,\n            defaultValue: \"#000\"\n          },\n          fontBody: {\n            // @ts-ignore - internal\n            type: ControlType.Font,\n            title: \"Body\",\n            controls: \"extended\"\n          },\n          colorBody: {\n            title: \" \",\n            type: ControlType.Color,\n            defaultValue: \"#444\"\n          },\n          fill: {\n            title: \"Fill\",\n            type: ControlType.Color,\n            defaultValue: \"#FFF\"\n          },\n          link: {\n            title: \"Link\",\n            type: ControlType.Color,\n            optional: true,\n            defaultValue: \"#999\"\n          },\n          border: {\n            type: ControlType.Object,\n            title: \"Border\",\n            buttonTitle: \"Radius, Width\",\n            controls: {\n              radius: {\n                title: \"Radius\",\n                type: ControlType.Number,\n                displayStepper: true,\n                min: 0,\n                defaultValue: 14\n              },\n              width: {\n                title: \"Width\",\n                type: ControlType.Number,\n                displayStepper: true,\n                min: 0,\n                defaultValue: 1\n              },\n              color: {\n                title: \"Color\",\n                type: ControlType.Color,\n                defaultValue: \"rgba(0,0,0,0.05)\"\n              }\n            }\n          },\n          shadow: {\n            type: ControlType.Object,\n            title: \"Shadow\",\n            optional: true,\n            controls: {\n              shadowColor: {\n                title: \"Color\",\n                type: ControlType.Color,\n                defaultValue: \"rgba(0,0,0,0.25)\"\n              },\n              shadowX: {\n                title: \"X\",\n                type: ControlType.Number,\n                min: -100,\n                max: 100,\n                defaultValue: 0\n              },\n              shadowY: {\n                title: \"Y\",\n                type: ControlType.Number,\n                min: -100,\n                max: 100,\n                defaultValue: 2\n              },\n              shadowBlur: {\n                title: \"Blur\",\n                type: ControlType.Number,\n                min: 0,\n                max: 100,\n                defaultValue: 4\n              }\n            }\n          },\n          backdrop: {\n            title: \"Backdrop\",\n            type: ControlType.Color,\n            defaultValue: \"rgba(0,0,0,0.1)\",\n            hidden: (_, props) => !props.content.euBlocking && !props.content.worldBlocking\n          }\n        }\n      },\n      animation: {\n        icon: \"effect\",\n        buttonTitle: \"Options\",\n        type: ControlType.Object,\n        controls: {\n          x: {\n            type: ControlType.Number,\n            displayStepper: true,\n            defaultValue: 0\n          },\n          y: {\n            type: ControlType.Number,\n            displayStepper: true,\n            defaultValue: 10\n          },\n          scale: {\n            type: ControlType.Number,\n            min: 0,\n            step: .1,\n            defaultValue: 1\n          },\n          transition: {\n            type: ControlType.Transition\n          }\n        }\n      }\n    }\n  },\n  button: {\n    title: \"Buttons\",\n    type: ControlType.Object,\n    buttonTitle: \"Variants, Style\",\n    controls: {\n      primary: {\n        title: \"Primary\",\n        type: ControlType.Object,\n        buttonTitle: \"Colors, Shadow\",\n        controls: {\n          fill: {\n            title: \"Fill\",\n            type: ControlType.Color,\n            defaultValue: \"#000\"\n          },\n          color: {\n            title: \"Color\",\n            type: ControlType.Color,\n            defaultValue: \"#FFF\"\n          },\n          shadow: {\n            type: ControlType.Object,\n            title: \"Shadow\",\n            optional: true,\n            controls: {\n              shadowColor: {\n                title: \"Color\",\n                type: ControlType.Color,\n                defaultValue: \"rgba(0,0,0,0.25)\"\n              },\n              shadowX: {\n                title: \"X\",\n                type: ControlType.Number,\n                min: -100,\n                max: 100\n              },\n              shadowY: {\n                title: \"Y\",\n                type: ControlType.Number,\n                min: -100,\n                max: 100\n              },\n              shadowBlur: {\n                title: \"Blur\",\n                type: ControlType.Number,\n                min: 0,\n                max: 100\n              }\n            }\n          }\n        }\n      },\n      secondary: {\n        title: \"Secondary\",\n        type: ControlType.Object,\n        buttonTitle: \"Colors, Shadow\",\n        controls: {\n          fill: {\n            title: \"Fill\",\n            type: ControlType.Color,\n            defaultValue: \"#EEE\"\n          },\n          color: {\n            title: \"Color\",\n            type: ControlType.Color,\n            defaultValue: \"#444\"\n          },\n          shadow: {\n            type: ControlType.Object,\n            title: \"Shadow\",\n            optional: true,\n            controls: {\n              shadowColor: {\n                title: \"Color\",\n                type: ControlType.Color,\n                defaultValue: \"rgba(0,0,0,0.25)\"\n              },\n              shadowX: {\n                title: \"X\",\n                type: ControlType.Number,\n                min: -100,\n                max: 100\n              },\n              shadowY: {\n                title: \"Y\",\n                type: ControlType.Number,\n                min: -100,\n                max: 100\n              },\n              shadowBlur: {\n                title: \"Blur\",\n                type: ControlType.Number,\n                min: 0,\n                max: 100\n              }\n            }\n          }\n        }\n      },\n      labels: {\n        type: ControlType.Object,\n        controls: {\n          accept: {\n            type: ControlType.String,\n            defaultValue: \"Accept\"\n          },\n          reject: {\n            type: ControlType.String,\n            defaultValue: \"Reject\"\n          },\n          acceptAll: {\n            type: ControlType.String,\n            defaultValue: \"Accept all\"\n          },\n          rejectAll: {\n            type: ControlType.String,\n            defaultValue: \"Reject all\"\n          },\n          customize: {\n            type: ControlType.String,\n            defaultValue: \"Customize\"\n          },\n          save: {\n            type: ControlType.String,\n            defaultValue: \"Save Preferences\"\n          },\n          confirm: {\n            type: ControlType.String,\n            defaultValue: \"Okay\"\n          }\n        }\n      },\n      font: {\n        // @ts-ignore - internal\n        type: ControlType.Font,\n        title: \"Font\",\n        controls: \"extended\"\n      },\n      padding: {\n        title: \"Padding\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\"Padding\", \"Padding per side\"],\n        defaultValue: 10,\n        valueKeys: [\"paddingTop\", \"paddingRight\", \"paddingBottom\", \"paddingLeft\"],\n        valueLabels: [\"T\", \"R\", \"B\", \"L\"],\n        min: 0\n      },\n      borderRadius: {\n        title: \"Radius\",\n        type: ControlType.Number,\n        displayStepper: true,\n        min: 0,\n        defaultValue: 8\n      },\n      direction: {\n        type: ControlType.Enum,\n        title: \"Direction\",\n        options: [\"row\", \"column\"],\n        // @ts-ignore - internal\n        optionIcons: [\"direction-horizontal\", \"direction-vertical\"],\n        defaultValue: \"row\",\n        displaySegmentedControl: true\n      },\n      fluid: {\n        title: \"Fluid\",\n        type: ControlType.Boolean,\n        defaultValue: true\n      }\n    }\n  },\n  content: {\n    title: \"Regions\",\n    type: ControlType.Object,\n    buttonTitle: \"World, EU\",\n    controls: {\n      isEU: {\n        title: \" \",\n        type: ControlType.Boolean,\n        defaultValue: true,\n        enabledTitle: \"EU\",\n        disabledTitle: \"World\"\n      },\n      euType: {\n        title: \"Choices\",\n        type: ControlType.Enum,\n        options: [\"simple\", \"medium\", \"advanced\"],\n        optionTitles: [\"None\", \"Accept/Reject\", \"Customizable\"],\n        defaultValue: \"medium\",\n        hidden: props => !props.isEU\n      },\n      euTitle: {\n        title: \"Title\",\n        type: ControlType.String,\n        defaultValue: \"Cookie Settings\",\n        hidden: props => props.euType === \"simple\" || !props.isEU\n      },\n      euDescription: {\n        title: \"Description\",\n        type: ControlType.String,\n        defaultValue: \"We use cookies to enhance your experience, analyze site traffic and deliver personalized content.\",\n        displayTextArea: true,\n        hidden: props => !props.isEU\n      },\n      euPolicy: {\n        title: \"Policy\",\n        type: ControlType.Object,\n        buttonTitle: \"Link, Prefix\",\n        controls: {\n          link: {\n            title: \"Link\",\n            type: ControlType.Link,\n            defaultValue: \"https://www.framer.com/legal/policy/\"\n          },\n          prefix: {\n            title: \"Prefix\",\n            type: ControlType.String,\n            defaultValue: \"Read our\",\n            hidden: props => !props.link\n          },\n          label: {\n            title: \"Label\",\n            type: ControlType.String,\n            defaultValue: \"Cookie Policy\",\n            hidden: props => !props.link\n          }\n        },\n        hidden: props => !props.isEU\n      },\n      euDefaults: {\n        title: \"Defaults\",\n        buttonTitle: \"Options\",\n        type: ControlType.Object,\n        controls: {\n          necessary: {\n            type: ControlType.Boolean,\n            enabledTitle: \"Granted\",\n            disabledTitle: \"Denied\",\n            defaultValue: false\n          },\n          preferences: {\n            type: ControlType.Boolean,\n            enabledTitle: \"Granted\",\n            disabledTitle: \"Denied\",\n            defaultValue: false\n          },\n          analytics: {\n            type: ControlType.Boolean,\n            enabledTitle: \"Granted\",\n            disabledTitle: \"Denied\",\n            defaultValue: false\n          },\n          marketing: {\n            type: ControlType.Boolean,\n            enabledTitle: \"Granted\",\n            disabledTitle: \"Denied\",\n            defaultValue: false,\n            description: \"The default consent when the user hasn\u2019t provided any yet.\"\n          }\n        },\n        hidden: props => !props.isEU\n      },\n      euBlocking: {\n        title: \"Blocking\",\n        type: ControlType.Boolean,\n        defaultValue: false,\n        description: \"Renders a content blocking backdrop.\",\n        hidden: props => !props.isEU\n      },\n      worldType: {\n        title: \"Choices\",\n        type: ControlType.Enum,\n        options: [\"simple\", \"medium\", \"advanced\"],\n        optionTitles: [\"None\", \"Accept/Reject\", \"Customizable\"],\n        defaultValue: \"simple\",\n        hidden: props => props.isEU\n      },\n      worldTitle: {\n        title: \"Title\",\n        type: ControlType.String,\n        defaultValue: \"Cookie Settings\",\n        hidden: props => props.worldType === \"simple\" || props.isEU\n      },\n      worldDescription: {\n        title: \"Description\",\n        type: ControlType.String,\n        defaultValue: \"We use cookies to personalize content, run ads, and analyze traffic.\",\n        displayTextArea: true,\n        hidden: props => props.isEU\n      },\n      worldPolicy: {\n        title: \"Policy\",\n        type: ControlType.Object,\n        buttonTitle: \"Link, Prefix\",\n        controls: {\n          link: {\n            title: \"Link\",\n            type: ControlType.Link\n          },\n          prefix: {\n            title: \"Prefix\",\n            type: ControlType.String,\n            defaultValue: \"Read our\",\n            hidden: props => !props.link\n          },\n          label: {\n            title: \"Label\",\n            type: ControlType.String,\n            defaultValue: \"Cookie Policy\",\n            hidden: props => !props.link\n          }\n        },\n        hidden: props => props.isEU\n      },\n      worldDefaults: {\n        title: \"Defaults\",\n        buttonTitle: \"Options\",\n        type: ControlType.Object,\n        controls: {\n          necessary: {\n            type: ControlType.Boolean,\n            enabledTitle: \"Granted\",\n            disabledTitle: \"Denied\",\n            defaultValue: true\n          },\n          preferences: {\n            type: ControlType.Boolean,\n            enabledTitle: \"Granted\",\n            disabledTitle: \"Denied\",\n            defaultValue: true\n          },\n          analytics: {\n            type: ControlType.Boolean,\n            enabledTitle: \"Granted\",\n            disabledTitle: \"Denied\",\n            defaultValue: true\n          },\n          marketing: {\n            type: ControlType.Boolean,\n            enabledTitle: \"Granted\",\n            disabledTitle: \"Denied\",\n            defaultValue: true,\n            description: \"The default consent when the user hasn\u2019t provided any yet.\"\n          }\n        },\n        hidden: props => props.isEU\n      },\n      worldBlocking: {\n        title: \"Blocking\",\n        type: ControlType.Boolean,\n        defaultValue: false,\n        description: \"Renders a content blocking backdrop.\",\n        hidden: props => props.isEU\n      }\n    }\n  },\n  options: {\n    type: ControlType.Object,\n    buttonTitle: \"Content, Styles\",\n    hidden: (_, props) => props.content.euType !== \"advanced\" && props.content.worldType !== \"advanced\",\n    controls: {\n      preview: {\n        type: ControlType.Boolean,\n        defaultValue: false,\n        description: \"Open when previewing banner on the canvas.\",\n        hidden: (_, props) => !props.preview\n      },\n      necessary: {\n        title: \"Necessary\",\n        type: ControlType.Object,\n        buttonTitle: \"Content\",\n        controls: {\n          title: {\n            title: \"Title\",\n            type: ControlType.String,\n            defaultValue: \"Necessary\"\n          },\n          description: {\n            title: \"Description\",\n            type: ControlType.String,\n            defaultValue: \"Enables security and basic functionality.\",\n            displayTextArea: true\n          }\n        }\n      },\n      preferences: {\n        title: \"Preferences\",\n        type: ControlType.Object,\n        buttonTitle: \"Content\",\n        controls: {\n          title: {\n            title: \"Title\",\n            type: ControlType.String,\n            defaultValue: \"Preferences\"\n          },\n          description: {\n            title: \"Description\",\n            type: ControlType.String,\n            defaultValue: \"Enables personalized content and settings.\",\n            displayTextArea: true,\n            optional: true\n          }\n        }\n      },\n      analytics: {\n        title: \"Analytics\",\n        type: ControlType.Object,\n        buttonTitle: \"Content\",\n        controls: {\n          title: {\n            title: \"Title\",\n            type: ControlType.String,\n            defaultValue: \"Analytics\"\n          },\n          description: {\n            title: \"Description\",\n            type: ControlType.String,\n            defaultValue: \"Enables tracking of performance.\",\n            displayTextArea: true\n          }\n        }\n      },\n      marketing: {\n        title: \"Marketing\",\n        type: ControlType.Object,\n        buttonTitle: \"Content\",\n        controls: {\n          title: {\n            title: \"Title\",\n            type: ControlType.String,\n            defaultValue: \"Marketing\"\n          },\n          description: {\n            title: \"Description\",\n            type: ControlType.String,\n            defaultValue: \"Enables ads personalization and tracking.\",\n            displayTextArea: true\n          }\n        }\n      },\n      style: {\n        type: ControlType.Object,\n        title: \"Style\",\n        buttonTitle: \"Fonts, Colors\",\n        controls: {\n          fontTitle: {\n            // @ts-ignore - internal\n            type: ControlType.Font,\n            title: \"Title\",\n            controls: \"basic\"\n          },\n          fontBody: {\n            // @ts-ignore - internal\n            type: ControlType.Font,\n            title: \"Body\",\n            controls: \"basic\"\n          },\n          background: {\n            title: \"Background\",\n            type: ControlType.Color,\n            defaultValue: \"rgba(0,0,0,0.02)\"\n          },\n          border: {\n            type: ControlType.Object,\n            title: \"Border\",\n            buttonTitle: \"Radius, Width\",\n            controls: {\n              radius: {\n                title: \"Radius\",\n                type: ControlType.Number,\n                displayStepper: true,\n                min: 0,\n                defaultValue: 8\n              },\n              width: {\n                title: \"Width\",\n                type: ControlType.Number,\n                displayStepper: true\n              },\n              color: {\n                title: \"Color\",\n                type: ControlType.Color,\n                defaultValue: \"rgba(0,0,0,0.02)\"\n              }\n            }\n          },\n          toggleColor: {\n            title: \"On\",\n            type: ControlType.Color,\n            defaultValue: \"#000\"\n          },\n          toggleColorInactive: {\n            title: \"Off\",\n            type: ControlType.Color,\n            defaultValue: \"rgba(0,0,0,0.1)\"\n          },\n          padding: {\n            title: \"Padding\",\n            type: ControlType.FusedNumber,\n            toggleKey: \"paddingPerSide\",\n            toggleTitles: [\"Padding\", \"Padding per side\"],\n            defaultValue: 12,\n            valueKeys: [\"paddingTop\", \"paddingRight\", \"paddingBottom\", \"paddingLeft\"],\n            valueLabels: [\"T\", \"R\", \"B\", \"L\"],\n            min: 0\n          }\n        }\n      }\n    }\n  }\n});\nCookieBanner.displayName = \"Cookie Banner\";\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"OptionsStyle\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"PolicyProps\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"ButtonsProps\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"default\": {\n      \"type\": \"reactComponent\",\n      \"name\": \"CookieBanner\",\n      \"slots\": [],\n      \"annotations\": {\n        \"framerDisableUnlink\": \"*\",\n        \"framerSupportedLayoutWidth\": \"auto\",\n        \"framerContractVersion\": \"1\",\n        \"framerSupportedLayoutHeight\": \"auto\"\n      }\n    },\n    \"ContentProps\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"CookieBannerProps\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"ContentType\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};"],
  "mappings": "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",
  "names": ["DEFAULT_DOMAIN", "DEFAULT_SCRIPT_NAME", "getDataLayerSnippet", "dataLayer", "dataLayerName", "getIframeSnippet", "id", "environment", "customDomain", "params", "gtm_auth", "gtm_preview", "getGTMScript", "customScriptName", "setupGTM", "dataLayerScript", "noScript", "script", "initGTM", "nonce", "gtm", "gtag", "isBrowser", "window", "sendToGTM", "args", "DEFAULT_FONT_FAMILY", "getFlexboxValues", "position", "positionParts", "justifyContent", "alignItems", "getMultipleShadows", "shadows", "output", "shadow", "getShadow", "safeJSONParse", "jsonString", "onError", "toGTMConsent", "consent", "reducer", "state", "action", "initialState", "defaultConsent", "useConsent", "gtmId", "dispatch", "le", "isOnFramerCanvas", "useIsOnFramerCanvas", "consentModeLocalStorageKey", "dismissedLocalStorageKey", "getStateFromLocalStorage", "consentFromLocalStorage", "hasDismissed", "safeJSONParse", "syncToGTM", "sendToGTM", "initGTM", "ue", "isBrowser", "dismiss", "autoAccept", "acceptAll", "rejectAll", "acceptCurrent", "toggleMode", "mode", "countries", "isInEUTimezone", "ref", "ref1", "ref2", "isEULocale", "_language", "locale", "navigator", "country", "inEU", "useRegion", "content", "useRegionFromProps", "regionBasedOnLocation", "isBrowser", "inEU", "regionFromProps", "IconCookie", "props", "p", "cycleOrder", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "humanReadableVariantMap", "transitions", "Component", "Y", "id", "style", "className", "width", "height", "layoutId", "outerVariant", "oep5aWG90", "wdGQJh0F_", "restProps", "ref", "baseVariant", "classNames", "gestureVariant", "setGestureState", "setVariant", "transition", "useVariantState", "layoutDependency", "defaultLayoutId", "ae", "p", "LayoutGroup", "motion", "cx", "css", "FramerBlf0sjosZ", "withCSS", "Toggle_zGbN_default", "addPropertyControls", "ControlType", "addFonts", "SPACING", "Banner", "banner", "button", "region", "options", "previewOptions", "consentModes", "onDismiss", "onAcceptAll", "onRejectAll", "onAcceptCurrent", "onToggleConsent", "animateOnMount", "ref", "maxHeightReduction", "linkColor", "paddingValue", "bannerShadow", "getShadow", "borderShadow", "bannerStyle", "getMultipleShadows", "p", "motion", "DEFAULT_FONT_FAMILY", "SimpleBanner", "AcceptRejectBanner", "OptionsBanner", "description", "policy", "padding", "u", "Description", "Button", "title", "onAccept", "onReject", "Headline", "Buttons", "consent", "onOptionToggle", "showOptions", "setShowOptions", "ye", "optionTheme", "optionNames", "shouldShowOptions", "AnimatePresence", "option", "Option", "l", "titleColor", "descriptionColor", "showDescription", "enabled", "onClick", "theme", "Toggle_zGbN_default", "children", "style", "direction", "primary", "settings", "initiallyOpen", "CookieBanner", "gtmId", "preview", "trigger", "banner", "button", "content", "options", "style", "isOnFramerCanvas", "useIsOnFramerCanvas", "isPreview", "region", "useRegion", "consent", "useConsent", "isOpen", "setIsOpen", "ye", "instantlyShowOnMount", "setInstantlyShowOnMount", "ue", "noConsentGiven", "autoConsentAllowed", "handleDismiss", "handleAcceptAll", "handleRejectAll", "handleAcceptCurrent", "p", "Banner", "defaultConsent", "u", "l", "Trigger", "AnimatePresence", "Overlay", "props", "ref", "insetValue", "justifyContent", "alignItems", "getFlexboxValues", "qa", "motion", "Backdrop", "onClick", "IconCookie", "DEFAULT_FONT_FAMILY", "color", "addPropertyControls", "ControlType", "_"]
}
