{"version":3,"file":"shared-lib.BtK3hXp7.mjs","names":["React.useState","React.useCallback","_Fragment"],"sources":["https:/framerusercontent.com/modules/TX5lSeyyRkcjmm9CPW0Y/57vGmniTvjCdgptgS9a0/CookieConsentBanner.js","https:/framerusercontent.com/modules/zxCk1PLWZoPVIb6riqMH/xxVyTPZDWeLCSaT9E19e/siteMetadata.js"],"sourcesContent":["/**\n * GDPR Cookie Consent - Framer Code Component\n *\n * INSTALLATION:\n * 1. In Framer: Assets Panel → Code → Create Code File\n * 2. Paste this entire content\n * 3. Drag the component onto your page\n * 4. Configure via Property Controls\n */import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,Link}from\"framer\";import{motion,AnimatePresence}from\"framer-motion\";// ═══════════════════════════════════════════════════════════════════════════\n// CONSTANTS\n// ═══════════════════════════════════════════════════════════════════════════\nconst CONSENT_KEY=\"gdpr_cookie_consent\";const CONSENT_VERSION=\"1.0\";const SERVICE_PATTERNS=[{name:\"YouTube\",category:\"functional\",patterns:[\"youtube.com\",\"youtu.be\",\"youtube-nocookie.com\"]},// Uncomment the WHOLE object when Vimeo is needed.\n// {\n//     name: \"Vimeo\",\n//     category: \"functional\",\n//     patterns: [\"vimeo.com\", \"player.vimeo.com\"],\n// },\n{name:\"Google Maps\",category:\"functional\",patterns:[\"google.com/maps\",\"maps.google.com\"]},{name:\"Google Fonts\",category:\"functional\",patterns:[\"fonts.googleapis.com\",\"fonts.gstatic.com\"]},{name:\"Google Analytics\",category:\"analytics\",patterns:[\"google-analytics.com\",\"googletagmanager.com\"]},// Uncomment the WHOLE object when Hotjar is needed.\n// {\n//     name: \"Hotjar\",\n//     category: \"analytics\",\n//     patterns: [\"hotjar.com\"],\n// },\n{name:\"Facebook\",category:\"marketing\",patterns:[\"facebook.com\",\"connect.facebook.net\"]},{name:\"Google Ads\",category:\"marketing\",patterns:[\"googleadservices.com\",\"googlesyndication.com\"]}];// ═══════════════════════════════════════════════════════════════════════════\n// TRANSLATIONS\n// ═══════════════════════════════════════════════════════════════════════════\nconst TRANSLATIONS={de:{title:\"Cookie-Einstellungen\",description:\"Wir verwenden Cookies und \\xe4hnliche Technologien, um diese Website zu betreiben, den Datenverkehr zu analysieren, den Chat zu erm\\xf6glichen und Marketingma\\xdfnahmen zu messen. Je nach Ihrem Standort bitten wir Sie gegebenenfalls um Ihre Einwilligung, bevor wir nicht notwendige Cookies verwenden. Sie k\\xf6nnen Ihre Einstellungen jederzeit akzeptieren, ablehnen oder verwalten. Weitere Informationen finden Sie in unserer Datenschutzerkl\\xe4rung und Cookie-Richtlinie.\",/*learnMore: \"Mehr erfahren\",*/accept:\"Akzeptieren\",acceptNecessary:\"Nur notwendige\",reject:\"Ablehnen\",customize:\"Anpassen\",save:\"Einstellungen speichern\",settingsButton:\"Cookies\",privacy:\"Datenschutz\",imprint:\"Impressum\",cookie:\"Cookie-Richtlinie\",blocked:\"blockiert\",openSettings:\"Einstellungen \\xf6ffnen\",categories:{necessary:{name:\"Notwendig\",desc:\"Erm\\xf6glicht grundlegende Funktionen und Sicherheit.\"},functional:{name:\"Funktional\",desc:\"Erm\\xf6glicht Videos, Karten und personalisierte Inhalte.\"},analytics:{name:\"Statistiken\",desc:\"Hilft uns, die Nutzung der Website zu verstehen.\"},marketing:{name:\"Marketing\",desc:\"Erm\\xf6glicht personalisierte Werbung und Tracking.\"}}},en:{title:\"Cookie Settings\",description:\"We use cookies and similar technologies to run this site, analyze traffic, enable chat, and measure marketing. Depending on your location, we may ask for your consent before using non-essential cookies. You can accept, reject, or manage your preferences at any time. Learn more in our Privacy Policy and Cookie Policy.\",/*learnMore: \"Learn more\",*/accept:\"Accept\",acceptNecessary:\"Only necessary\",reject:\"Reject\",customize:\"Customize\",save:\"Save preferences\",settingsButton:\"Cookies\",privacy:\"Privacy\",imprint:\"Imprint\",cookie:\"Cookie Policy\",blocked:\"blocked\",openSettings:\"Open settings\",categories:{necessary:{name:\"Necessary\",desc:\"Enables basic functions and security.\"},functional:{name:\"Functional\",desc:\"Enables videos, maps and personalized content.\"},analytics:{name:\"Analytics\",desc:\"Helps us understand how the website is used.\"},marketing:{name:\"Marketing\",desc:\"Enables personalized advertising and tracking.\"}}},fr:{title:\"Param\\xe8tres des cookies\",description:\"Nous utilisons des cookies et des technologies similaires pour faire fonctionner ce site, analyser le trafic, activer le chat et mesurer nos actions marketing. Selon votre lieu de r\\xe9sidence, nous pouvons vous demander votre consentement avant d’utiliser des cookies non essentiels. Vous pouvez accepter, refuser ou g\\xe9rer vos pr\\xe9f\\xe9rences \\xe0 tout moment. Pour en savoir plus, consultez notre Politique de confidentialit\\xe9 et notre Politique relative aux cookies.\",/*learnMore: \"En savoir plus\",*/accept:\"Accepter\",acceptNecessary:\"Uniquement n\\xe9cessaires\",reject:\"Refuser\",customize:\"Personnaliser\",save:\"Enregistrer les pr\\xe9f\\xe9rences\",settingsButton:\"Cookies\",privacy:\"Confidentialit\\xe9\",imprint:\"Mentions l\\xe9gales\",cookie:\"Politique de cookies\",blocked:\"bloqu\\xe9\",openSettings:\"Ouvrir les param\\xe8tres\",categories:{necessary:{name:\"N\\xe9cessaires\",desc:\"Permet les fonctions de base et la s\\xe9curit\\xe9.\"},functional:{name:\"Fonctionnels\",desc:\"Permet les vid\\xe9os, cartes et contenu personnalis\\xe9.\"},analytics:{name:\"Statistiques\",desc:\"Nous aide \\xe0 comprendre l'utilisation du site.\"},marketing:{name:\"Marketing\",desc:\"Permet la publicit\\xe9 personnalis\\xe9e et le suivi.\"}}},es:{title:\"Configuraci\\xf3n de cookies\",description:\"Utilizamos cookies y tecnolog\\xedas similares para operar este sitio, analizar el tr\\xe1fico, habilitar el chat y medir el rendimiento de marketing. Seg\\xfan su ubicaci\\xf3n, podemos solicitar su consentimiento antes de utilizar cookies no esenciales. Puede aceptar, rechazar o gestionar sus preferencias en cualquier momento. Obtenga m\\xe1s informaci\\xf3n en nuestra Pol\\xedtica de privacidad y nuestra Pol\\xedtica de cookies.\",/*learnMore: \"Más información\",*/accept:\"Aceptar\",acceptNecessary:\"Solo necesarias\",reject:\"Rechazar\",customize:\"Personalizar\",save:\"Guardar preferencias\",settingsButton:\"Cookies\",privacy:\"Privacidad\",imprint:\"Aviso legal\",cookie:\"Pol\\xedtica de cookies\",blocked:\"bloqueado\",openSettings:\"Abrir configuraci\\xf3n\",categories:{necessary:{name:\"Necesarias\",desc:\"Habilita funciones b\\xe1sicas y seguridad.\"},functional:{name:\"Funcionales\",desc:\"Habilita videos, mapas y contenido personalizado.\"},analytics:{name:\"Estad\\xedsticas\",desc:\"Nos ayuda a entender el uso del sitio web.\"},marketing:{name:\"Marketing\",desc:\"Habilita publicidad personalizada y seguimiento.\"}}},it:{title:\"Impostazioni cookie\",description:\"Utilizziamo cookie e tecnologie simili per gestire questo sito, analizzare il traffico, abilitare la chat e misurare le attivit\\xe0 di marketing. A seconda della tua posizione, potremmo richiedere il tuo consenso prima di utilizzare cookie non essenziali. Puoi accettare, rifiutare o gestire le tue preferenze in qualsiasi momento. Per saperne di pi\\xf9, consulta la nostra Informativa sulla privacy e la nostra Cookie Policy.\",/*learnMore: \"Scopri di più\",*/accept:\"Accetta\",acceptNecessary:\"Solo necessari\",reject:\"Rifiuta\",customize:\"Personalizza\",save:\"Salva preferenze\",settingsButton:\"Cookie\",privacy:\"Privacy\",imprint:\"Note legali\",cookie:\"Politica sui cookie\",blocked:\"bloccato\",openSettings:\"Apri impostazioni\",categories:{necessary:{name:\"Necessari\",desc:\"Abilita funzioni di base e sicurezza.\"},functional:{name:\"Funzionali\",desc:\"Abilita video, mappe e contenuti personalizzati.\"},analytics:{name:\"Statistiche\",desc:\"Ci aiuta a capire come viene utilizzato il sito.\"},marketing:{name:\"Marketing\",desc:\"Abilita pubblicit\\xe0 personalizzata e tracciamento.\"}}},cn:{title:\"Cookie 设置\",description:\"我们使用 Cookie 和类似技术来运营本网站、分析流量、启用聊天功能以及衡量营销效果。根据您所在的位置，我们可能会在使用非必要 Cookie 之前征求您的同意。您可以随时接受、拒绝或管理您的偏好设置。欲了解更多信息，请参阅我们的《隐私政策》和《Cookie 政策》。\",/*learnMore: \"了解更多\",*/accept:\"接受\",acceptNecessary:\"仅限必要\",reject:\"拒绝\",customize:\"自定义\",save:\"保存偏好设置\",settingsButton:\"Cookies\",privacy:\"隐私\",imprint:\"法律声明\",cookie:\"Cookie政策\",blocked:\"已阻止\",openSettings:\"打开设置\",categories:{necessary:{name:\"必要\",desc:\"启用基本功能和安全性。\"},functional:{name:\"功能\",desc:\"启用视频、地图和个性化内容。\"},analytics:{name:\"统计\",desc:\"帮助我们了解网站的使用情况。\"},marketing:{name:\"营销\",desc:\"启用个性化广告和跟踪。\"}}},pt:{title:\"Cookie 设置\",description:\"Utilizamos cookies e tecnologias semelhantes para operar este site, analisar o tr\\xe1fego, ativar o chat e medir o desempenho de marketing. Dependendo da sua localiza\\xe7\\xe3o, poderemos solicitar o seu consentimento antes de utilizar cookies n\\xe3o essenciais. Pode aceitar, rejeitar ou gerir as suas prefer\\xeancias a qualquer momento. Saiba mais na nossa Pol\\xedtica de Privacidade e na nossa Pol\\xedtica de Cookies.\",/*learnMore: \"Saiba mais\",*/accept:\"Aceitar\",acceptNecessary:\"Apenas necess\\xe1rias\",reject:\"Rejeitar\",customize:\"Personalizar\",save:\"Guardar prefer\\xeancias\",settingsButton:\"Cookies\",privacy:\"Privacidade\",imprint:\"Aviso legal\",cookie:\"Pol\\xedtica de cookies\",blocked:\"bloqueado\",openSettings:\"Abrir defini\\xe7\\xf5es\",categories:{necessary:{name:\"Necess\\xe1rias\",desc:\"Ativa fun\\xe7\\xf5es b\\xe1sicas e seguran\\xe7a.\"},functional:{name:\"Funcionais\",desc:\"Ativa v\\xeddeos, mapas e conte\\xfado personalizado.\"},analytics:{name:\"Estat\\xedsticas\",desc:\"Ajuda-nos a compreender a utiliza\\xe7\\xe3o do site.\"},marketing:{name:\"Marketing\",desc:\"Ativa publicidade personalizada e rastreamento.\"}}}};// ═══════════════════════════════════════════════════════════════════════════\n// HELPER FUNCTIONS\n// ═══════════════════════════════════════════════════════════════════════════\nconst loadConsent=()=>{if(typeof window===\"undefined\")return null;try{const data=JSON.parse(localStorage.getItem(CONSENT_KEY)||\"\");if(!data||data.e<Date.now()||data.v!==CONSENT_VERSION){localStorage.removeItem(CONSENT_KEY);return null;}return data.c;}catch{return null;}};const saveConsentToStorage=(consent,expiryDays)=>{if(typeof window===\"undefined\")return;const data={v:CONSENT_VERSION,t:Date.now(),e:Date.now()+expiryDays*864e5,c:consent};localStorage.setItem(CONSENT_KEY,JSON.stringify(data));window.dispatchEvent(new CustomEvent(\"cookieConsent\",{detail:consent}));};const getServiceName=src=>{const normalizedSrc=src.toLowerCase();for(const service of SERVICE_PATTERNS){if(Array.isArray(service.patterns)&&service.patterns.some(p=>normalizedSrc.includes(p))){return service.name;}}return\"Content\";};// Determine if a color is light (for contrast calculation)\nconst isLightColor=color=>{// Handle hex colors\nlet hex=color;if(color.startsWith(\"#\")){hex=color.slice(1);}else if(color.startsWith(\"rgb\")){// Parse rgba/rgb\nconst match=color.match(/rgba?\\((\\d+),\\s*(\\d+),\\s*(\\d+)/);if(match){const r=parseInt(match[1]);const g=parseInt(match[2]);const b=parseInt(match[3]);const luminance=(.299*r+.587*g+.114*b)/255;return luminance>.5;}return false;}else{return false;}// Convert 3-digit hex to 6-digit\nif(hex.length===3){hex=hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2];}const r=parseInt(hex.slice(0,2),16);const g=parseInt(hex.slice(2,4),16);const b=parseInt(hex.slice(4,6),16);const luminance=(.299*r+.587*g+.114*b)/255;return luminance>.5;};// ═══════════════════════════════════════════════════════════════════════════\n// IFRAME BLOCKING LOGIC\n// ═══════════════════════════════════════════════════════════════════════════\nconst blockAllContent=(openModal,colors,lang,accentTextColor)=>{if(typeof document===\"undefined\")return;const blockedText=lang===\"de\"?\"blockiert\":lang===\"fr\"?\"bloqu\\xe9\":lang===\"es\"?\"bloqueado\":lang===\"it\"?\"bloccato\":\"blocked\";const openSettingsText=lang===\"de\"?\"Einstellungen \\xf6ffnen\":lang===\"fr\"?\"Ouvrir les param\\xe8tres\":lang===\"es\"?\"Abrir configuraci\\xf3n\":lang===\"it\"?\"Apri impostazioni\":\"Open settings\";document.querySelectorAll(\"iframe\").forEach(iframe=>{if(iframe.getAttribute(\"data-cc-blocked\"))return;const src=iframe.src||iframe.getAttribute(\"data-src\")||\"\";if(!src||src===\"about:blank\")return;const normalizedSrc=src.toLowerCase();const needsBlocking=SERVICE_PATTERNS.some(service=>Array.isArray(service.patterns)&&service.patterns.some(pattern=>normalizedSrc.includes(pattern)));if(needsBlocking){// Mark as blocked to prevent re-processing\niframe.setAttribute(\"data-cc-blocked\",\"true\");// Store original src and remove it to stop loading\niframe.setAttribute(\"data-cc-original-src\",src);iframe.src=\"about:blank\";// Create overlay container\nconst container=iframe.parentElement;if(container&&!container.querySelector(\".cc-overlay\")){const serviceName=getServiceName(src);// Ensure parent has position for absolute overlay\nif(getComputedStyle(container).position===\"static\"){container.style.position=\"relative\";}const overlay=document.createElement(\"div\");overlay.className=\"cc-overlay\";overlay.style.cssText=`\n          position: absolute;\n          inset: 0;\n          display: flex;\n          align-items: center;\n          justify-content: center;\n          background: ${colors.background};\n          border-radius: 8px;\n          z-index: 1;\n        `;overlay.innerHTML=`\n          <div style=\"text-align: center; padding: 24px;\">\n            <div style=\"margin-bottom: 12px; opacity: 0.5;\">\n              <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\" fill=\"none\">\n                <path d=\"M12 2C9.243 2 7 4.243 7 7V10H6C4.897 10 4 10.897 4 12V20C4 21.103 4.897 22 6 22H18C19.103 22 20 21.103 20 20V12C20 10.897 19.103 10 18 10H17V7C17 4.243 14.757 2 12 2ZM18 12L18.002 20H6V12H18ZM9 10V7C9 5.346 10.346 4 12 4C13.654 4 15 5.346 15 7V10H9Z\" fill=\"white\"/>\n              </svg>\n            </div>\n            <div style=\"font-size: 14px; font-weight: 500; color: rgba(255,255,255,0.7); margin-bottom: 16px;\">${serviceName} ${blockedText}</div>\n            <button class=\"cc-overlay-btn\" style=\"padding: 10px 20px; background: ${colors.accent}; color: ${accentTextColor}; border: none; border-radius: 8px; font-size: 13px; font-weight: 600; cursor: pointer; font-family: inherit;\">${openSettingsText}</button>\n          </div>\n        `;overlay.querySelector(\"button\")?.addEventListener(\"click\",openModal);container.appendChild(overlay);}}});};const unblockContent=()=>{if(typeof document===\"undefined\")return;// Remove all overlays\ndocument.querySelectorAll(\".cc-overlay\").forEach(el=>el.remove());// Restore blocked iframes\ndocument.querySelectorAll(\"iframe[data-cc-blocked]\").forEach(iframe=>{const originalSrc=iframe.getAttribute(\"data-cc-original-src\");if(originalSrc){iframe.src=originalSrc;iframe.removeAttribute(\"data-cc-blocked\");iframe.removeAttribute(\"data-cc-original-src\");}});};// ═══════════════════════════════════════════════════════════════════════════\n// STYLES\n// ═══════════════════════════════════════════════════════════════════════════\nconst getStyles=colors=>`\n  .cc-overlay {\n    position: absolute;\n    inset: 0;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    background: ${colors.background};\n    border-radius: 8px;\n    z-index: 1;\n  }\n  .cc-overlay-inner {\n    text-align: center;\n    padding: 24px;\n  }\n  .cc-overlay-icon {\n    margin-bottom: 12px;\n    opacity: 0.5;\n  }\n  .cc-overlay-title {\n    font-size: 14px;\n    font-weight: 500;\n    color: ${colors.font};\n    opacity: 0.7;\n    margin-bottom: 16px;\n  }\n  .cc-overlay-btn {\n    padding: 10px 20px;\n    background: ${colors.accent};\n    color: ${colors.font};\n    border: none;\n    border-radius: 8px;\n    font-size: 13px;\n    font-weight: 600;\n    cursor: pointer;\n    font-family: inherit;\n    transition: all 0.2s;\n  }\n  .cc-overlay-btn:hover {\n    background: ${colors.accentHover};\n  }\n`;// ═══════════════════════════════════════════════════════════════════════════\n// TOGGLE COMPONENT\n// ═══════════════════════════════════════════════════════════════════════════\n// Convert any color to rgba with opacity\nconst colorToRgba=(color,opacity)=>{// Handle hex colors\nif(color.startsWith(\"#\")){let hex=color.slice(1);// Convert 3-digit hex to 6-digit\nif(hex.length===3){hex=hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2];}const r=parseInt(hex.slice(0,2),16);const g=parseInt(hex.slice(2,4),16);const b=parseInt(hex.slice(4,6),16);return`rgba(${r}, ${g}, ${b}, ${opacity})`;}// Handle rgb/rgba colors\nconst rgbMatch=color.match(/rgba?\\((\\d+),\\s*(\\d+),\\s*(\\d+)/);if(rgbMatch){return`rgba(${rgbMatch[1]}, ${rgbMatch[2]}, ${rgbMatch[3]}, ${opacity})`;}// Fallback: return color with opacity via CSS\nreturn color;};const Toggle=({active,disabled,accentColor,onChange})=>/*#__PURE__*/_jsx(\"button\",{onClick:disabled?undefined:onChange,style:{position:\"relative\",width:44,height:24,background:active?colorToRgba(accentColor,.5)// Aktiv: 50%\n    :colorToRgba(accentColor,.1),borderRadius:12,cursor:disabled?\"not-allowed\":\"pointer\",flexShrink:0,transition:\"background 0.2s ease\",border:\"none\",padding:0,opacity:disabled?.6:1},role:\"switch\",\"aria-checked\":active,disabled:disabled,children:/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",top:2,left:active?22:2,width:20,height:20,background:active?accentColor// Aktiv: 100%\n    :colorToRgba(accentColor,.5),borderRadius:\"50%\",transition:\"all 0.2s ease\",boxShadow:active?\"0 2px 4px rgba(0,0,0,0.2)\":\"none\"}})});// ═══════════════════════════════════════════════════════════════════════════\n// MAIN COMPONENT\n// ═══════════════════════════════════════════════════════════════════════════\n// Detect browser language\nconst detectLanguage=()=>{if(typeof navigator===\"undefined\")return\"en\";const browserLang=navigator.language.split(\"-\")[0].toLowerCase();if(browserLang in TRANSLATIONS){return browserLang;}return\"en\";};export default function CookieConsent(props){const{previewMode=\"none\",language=\"auto\",consentExpiryDays=365,glassEffect=true,links={privacy:\"\",imprint:\"\",cookie:\"\"},colors:colorsProps={accent:\"#FFFFFF\",accentFont:\"#000000\",font:\"#FFFFFF\",background:\"rgba(41, 49, 54, 0.95)\"},fonts={title:{},body:{},label:{},button:{},link:{}},customTexts={title:\"\",description:\"\",accept:\"\",acceptNecessary:\"\",reject:\"\",customize:\"\",save:\"\",settingsButton:\"\",privacy:\"\",imprint:\"\",cookie:\"\"}}=props;// Get the effective language\nconst effectiveLang=language===\"auto\"?detectLanguage():language;const baseT=TRANSLATIONS[effectiveLang];// Apply custom text overrides\nconst t={...baseT,title:customTexts.title||baseT.title,description:customTexts.description||baseT.description,accept:customTexts.accept||baseT.accept,acceptNecessary:customTexts.acceptNecessary||baseT.acceptNecessary,reject:customTexts.reject||baseT.reject,customize:customTexts.customize||baseT.customize,save:customTexts.save||baseT.save,settingsButton:customTexts.settingsButton||baseT.settingsButton,privacy:customTexts.privacy||baseT.privacy,imprint:customTexts.imprint||baseT.imprint,cookie:customTexts.cookie||baseT.cookie};const colors={accent:colorsProps.accent,accentHover:colorToRgba(colorsProps.accent,.8),background:colorsProps.background,font:colorsProps.font};// Determine button text color based on accent color brightness\n// Use manual accentFont if set, otherwise auto-calculate based on accent brightness\nconst accentTextColor=colorsProps.accentFont||(isLightColor(colorsProps.accent)?\"#000\":\"#fff\");// Glass effect styles\nconst glassStyles=glassEffect?{backdropFilter:\"blur(20px)\",WebkitBackdropFilter:\"blur(20px)\",background:colorToRgba(colorsProps.background,.85)}:{background:colorsProps.background};const[showModal,setShowModal]=React.useState(false);const[showFab,setShowFab]=React.useState(false);const[isExpanded,setIsExpanded]=React.useState(false);const[isMobile,setIsMobile]=React.useState(false);const[previewModalOpen,setPreviewModalOpen]=React.useState(previewMode!==\"fab\");const[previewExpanded,setPreviewExpanded]=React.useState(previewMode===\"modal-expanded\");const[consent,setConsent]=React.useState({necessary:true,functional:false,analytics:false,marketing:false});// Keep the Framer Canvas preview interactive without writing consent\n// to localStorage or changing real page embeds.\nReact.useEffect(()=>{if(previewMode===\"none\")return;setPreviewModalOpen(previewMode!==\"fab\");setPreviewExpanded(previewMode===\"modal-expanded\");},[previewMode]);// Detect mobile\nReact.useEffect(()=>{const checkMobile=()=>setIsMobile(window.innerWidth<768);checkMobile();window.addEventListener(\"resize\",checkMobile);return()=>window.removeEventListener(\"resize\",checkMobile);},[]);const openModal=React.useCallback(()=>{setShowModal(true);setIsExpanded(false);},[]);// Initialize\nReact.useEffect(()=>{// If preview mode is active (for editor preview), skip normal logic\nif(previewMode!==\"none\"){return;}const saved=loadConsent();if(saved){setConsent(saved);setShowFab(true);if(saved.functional){unblockContent();}else{// A previous rejection / saved preference must remain enforced\n// after a page reload, including for iframes already on the page.\nblockAllContent(openModal,colors,effectiveLang,accentTextColor);}}else{setShowModal(true);blockAllContent(openModal,colors,effectiveLang,accentTextColor);}// Inject overlay styles\nif(!document.getElementById(\"cc-overlay-styles\")){const style=document.createElement(\"style\");style.id=\"cc-overlay-styles\";style.textContent=getStyles(colors);document.head.appendChild(style);}// MutationObserver for dynamic iframes\nconst observer=new MutationObserver(mutations=>{const c=loadConsent();if(!c||!c.functional){const needsCheck=mutations.some(m=>{if(m.type===\"childList\"){return Array.from(m.addedNodes).some(n=>n.nodeName===\"IFRAME\"||n.querySelectorAll&&n.querySelectorAll(\"iframe\").length>0);}return false;});if(needsCheck){blockAllContent(openModal,colors,effectiveLang,accentTextColor);}}});if(document.body){observer.observe(document.body,{childList:true,subtree:true});}return()=>observer.disconnect();},[previewMode]);const handleAccept=React.useCallback(()=>{const newConsent={necessary:true,functional:true,analytics:true,marketing:true};setConsent(newConsent);saveConsentToStorage(newConsent,consentExpiryDays);unblockContent();setShowModal(false);setShowFab(true);},[consentExpiryDays]);const handleReject=React.useCallback(()=>{const newConsent={necessary:true,functional:false,analytics:false,marketing:false};setConsent(newConsent);saveConsentToStorage(newConsent,consentExpiryDays);try{// Keep recognized embedded content blocked when non-essential\n// consent is rejected.\nblockAllContent(openModal,colors,effectiveLang,accentTextColor);}finally{// Always close the dialog even if a third-party iframe behaves oddly.\nsetShowModal(false);setIsExpanded(false);setShowFab(true);}},[consentExpiryDays,openModal,colors,effectiveLang,accentTextColor]);const handleSave=React.useCallback(()=>{saveConsentToStorage(consent,consentExpiryDays);try{if(consent.functional){unblockContent();}else{// Keep recognized embedded content blocked if Functional is off.\nblockAllContent(openModal,colors,effectiveLang,accentTextColor);}}finally{setShowModal(false);setIsExpanded(false);setShowFab(true);}},[consent,consentExpiryDays,openModal,colors,effectiveLang,accentTextColor]);const toggleCategory=React.useCallback(cat=>{if(cat===\"necessary\")return;setConsent(prev=>({...prev,[cat]:!prev[cat]}));},[]);// Preview-only handlers. They make the Framer Canvas preview clickable,\n// but intentionally do not persist consent or block/unblock the real page.\nconst handlePreviewAccept=React.useCallback(()=>{setConsent({necessary:true,functional:true,analytics:true,marketing:true});setPreviewExpanded(false);setPreviewModalOpen(false);},[]);const handlePreviewReject=React.useCallback(()=>{setConsent({necessary:true,functional:false,analytics:false,marketing:false});setPreviewExpanded(false);setPreviewModalOpen(false);},[]);const handlePreviewSave=React.useCallback(()=>{setPreviewExpanded(false);setPreviewModalOpen(false);},[]);// Determine what to show based on preview mode\nconst isPreviewMode=previewMode!==\"none\";const shouldShowModal=isPreviewMode?previewMode===\"modal\"||previewMode===\"modal-expanded\":showModal;const shouldShowFab=isPreviewMode?previewMode===\"fab\":showFab&&!showModal;const shouldBeExpanded=isPreviewMode?previewExpanded:isExpanded;// ═══════════════════════════════════════════════════════════════════════════\n// PREVIEW MODE RENDERING (inline for Framer Canvas)\n// ═══════════════════════════════════════════════════════════════════════════\nif(isPreviewMode){// FAB Preview. After an action in preview mode, return to the FAB.\nif(!previewModalOpen){return /*#__PURE__*/_jsxs(\"button\",{type:\"button\",onClick:()=>setPreviewModalOpen(true),style:{display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",gap:8,padding:\"12px 18px\",...glassStyles,border:`1px solid rgba(255, 255, 255, 0.12)`,borderRadius:100,color:colors.font,boxShadow:\"0 4px 16px rgba(0, 0, 0, 0.3)\",...fonts.button},children:[/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:18,height:18,viewBox:\"0 0 24 24\",fill:\"none\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M21.598 11.064C21.478 10.973 21.339 10.91 21.191 10.88C21.043 10.85 20.89 10.855 20.744 10.892C20.502 10.959 20.252 10.996 20 11C18.346 11 17 9.654 16.997 8.063C17.002 8.029 17.013 7.927 17.014 7.893C17.021 7.737 16.99 7.581 16.926 7.439C16.861 7.296 16.764 7.171 16.641 7.073C16.519 6.975 16.376 6.907 16.223 6.875C16.07 6.843 15.911 6.847 15.76 6.887C15.513 6.957 15.257 6.995 15 7C13.346 7 12 5.654 12 4C12 3.783 12.031 3.556 12.099 3.284C12.138 3.129 12.138 2.967 12.101 2.811C12.064 2.655 11.99 2.511 11.885 2.39C11.781 2.269 11.649 2.175 11.5 2.115C11.352 2.056 11.191 2.033 11.032 2.048C8.556 2.279 6.255 3.428 4.584 5.27C2.912 7.112 1.99 9.513 2 12C2 17.514 6.486 22 12 22C17.514 22 22 17.514 22 12C22 11.951 21.997 11.903 21.993 11.84C21.99 11.689 21.953 11.541 21.885 11.407C21.816 11.273 21.718 11.155 21.598 11.064ZM12 20C7.589 20 4 16.411 4 12C3.993 10.223 4.58 8.495 5.668 7.091C6.757 5.686 8.284 4.686 10.006 4.25C10.072 5.531 10.626 6.738 11.556 7.621C12.485 8.505 13.718 8.999 15 9L15.101 8.999C15.331 10.117 15.936 11.123 16.816 11.851C17.695 12.578 18.797 12.983 19.938 12.999C19.444 16.941 16.073 20 12 20Z\",fill:\"currentColor\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M12.5 13C13.328 13 14 12.328 14 11.5C14 10.672 13.328 10 12.5 10C11.672 10 11 10.672 11 11.5C11 12.328 11.672 13 12.5 13Z\",fill:\"currentColor\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M8.5 10C9.328 10 10 9.328 10 8.5C10 7.672 9.328 7 8.5 7C7.672 7 7 7.672 7 8.5C7 9.328 7.672 10 8.5 10Z\",fill:\"currentColor\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M7.5 14C8.328 14 9 13.328 9 12.5C9 11.672 8.328 11 7.5 11C6.672 11 6 11.672 6 12.5C6 13.328 6.672 14 7.5 14Z\",fill:\"currentColor\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M15.5 17C16.328 17 17 16.328 17 15.5C17 14.672 16.328 14 15.5 14C14.672 14 14 14.672 14 15.5C14 16.328 14.672 17 15.5 17Z\",fill:\"currentColor\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M10.5 18C11.328 18 12 17.328 12 16.5C12 15.672 11.328 15 10.5 15C9.672 15 9 15.672 9 16.5C9 17.328 9.672 18 10.5 18Z\",fill:\"currentColor\"})]}),/*#__PURE__*/_jsx(\"span\",{children:t.settingsButton})]});}// Modal Preview (both \"modal\" and \"modal-expanded\")\nreturn /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",maxWidth:520,...glassStyles,border:`1px solid rgba(255, 255, 255, 0.12)`,borderRadius:16,overflow:\"hidden\",boxShadow:\"0 24px 48px rgba(0, 0, 0, 0.4)\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{padding:28},children:[/*#__PURE__*/_jsx(\"h2\",{style:{color:colors.font,margin:\"0 0 12px 0\",letterSpacing:\"-0.02em\",...fonts.title},children:t.title}),/*#__PURE__*/_jsxs(\"p\",{style:{color:colors.font,opacity:.7,margin:\"0 0 24px 0\",...fonts.body},children:[t.description,\" \",/*#__PURE__*/_jsx(Link,{href:links.privacy,style:{...fonts.link,color:colors.font,opacity:.7,textDecoration:\"underline\"},children:t.learnMore})]}),!shouldBeExpanded&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"row\",gap:10},children:[/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:handlePreviewAccept,style:{flex:1,padding:\"14px 20px\",borderRadius:8,cursor:\"pointer\",border:\"none\",background:colors.accent,color:accentTextColor,...fonts.button},children:t.accept}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:handlePreviewReject,style:{flex:1,padding:\"14px 20px\",borderRadius:8,cursor:\"pointer\",border:`1px solid rgba(255, 255, 255, 0.12)`,background:\"transparent\",color:colors.font,...fonts.button},children:t.reject})]}),shouldBeExpanded&&/*#__PURE__*/_jsx(\"div\",{style:{margin:\"0 -8px\",padding:\"0 8px\"},children:Object.keys(t.categories).map(key=>{const cat=t.categories[key];return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",padding:\"12px 0\",borderBottom:\"1px solid rgba(255, 255, 255, 0.08)\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,marginRight:16},children:[/*#__PURE__*/_jsx(\"div\",{style:{color:colors.font,marginBottom:4,...fonts.label},children:cat.name}),/*#__PURE__*/_jsx(\"div\",{style:{color:colors.font,opacity:.7,...fonts.body},children:cat.desc})]}),/*#__PURE__*/_jsx(Toggle,{active:consent[key],disabled:key===\"necessary\",accentColor:colors.accent,onChange:()=>toggleCategory(key)})]},key);})}),shouldBeExpanded&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:handlePreviewSave,style:{width:\"100%\",padding:\"14px 24px\",borderRadius:8,cursor:\"pointer\",border:\"none\",background:colors.accent,color:accentTextColor,marginTop:24,...fonts.button},children:t.save}),!shouldBeExpanded&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:()=>setPreviewExpanded(true),style:{...fonts.link,display:\"block\",textAlign:\"center\",marginTop:16,color:colors.font,opacity:.5,cursor:\"pointer\",background:\"none\",border:\"none\",width:\"100%\",textDecoration:\"underline\",textUnderlineOffset:2},children:t.customize})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"center\",gap:24,padding:\"16px 28px\",borderTop:\"1px solid rgba(255, 255, 255, 0.08)\",background:\"rgba(0, 0, 0, 0.15)\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{...fonts.body,fontSize:12,color:colors.font},children:t.privacy}),/*#__PURE__*/_jsx(\"span\",{style:{...fonts.body,fontSize:12,color:colors.font},children:t.cookie}),/*#__PURE__*/_jsx(\"span\",{style:{...fonts.body,fontSize:12,color:colors.font},children:t.imprint})]})]});}// ═══════════════════════════════════════════════════════════════════════════\n// LIVE MODE RENDERING (fixed positioning for production)\n// ═══════════════════════════════════════════════════════════════════════════\nreturn /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(AnimatePresence,{children:shouldShowFab&&/*#__PURE__*/_jsxs(motion.button,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:20},whileHover:{y:-2,boxShadow:\"0 8px 24px rgba(0, 0, 0, 0.4)\"},onClick:openModal,style:{position:\"fixed\",bottom:24,left:24,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",gap:isMobile?0:8,padding:isMobile?16:\"12px 18px\",width:isMobile?56:\"auto\",height:isMobile?56:\"auto\",...glassStyles,border:`1px solid rgba(255, 255, 255, 0.12)`,borderRadius:100,color:colors.font,opacity:.7,cursor:\"pointer\",zIndex:10,boxShadow:\"0 4px 16px rgba(0, 0, 0, 0.3)\",...fonts.button},children:[/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:isMobile?28:18,height:isMobile?28:18,viewBox:\"0 0 24 24\",fill:\"none\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M21.598 11.064C21.478 10.973 21.339 10.91 21.191 10.88C21.043 10.85 20.89 10.855 20.744 10.892C20.502 10.959 20.252 10.996 20 11C18.346 11 17 9.654 16.997 8.063C17.002 8.029 17.013 7.927 17.014 7.893C17.021 7.737 16.99 7.581 16.926 7.439C16.861 7.296 16.764 7.171 16.641 7.073C16.519 6.975 16.376 6.907 16.223 6.875C16.07 6.843 15.911 6.847 15.76 6.887C15.513 6.957 15.257 6.995 15 7C13.346 7 12 5.654 12 4C12 3.783 12.031 3.556 12.099 3.284C12.138 3.129 12.138 2.967 12.101 2.811C12.064 2.655 11.99 2.511 11.885 2.39C11.781 2.269 11.649 2.175 11.5 2.115C11.352 2.056 11.191 2.033 11.032 2.048C8.556 2.279 6.255 3.428 4.584 5.27C2.912 7.112 1.99 9.513 2 12C2 17.514 6.486 22 12 22C17.514 22 22 17.514 22 12C22 11.951 21.997 11.903 21.993 11.84C21.99 11.689 21.953 11.541 21.885 11.407C21.816 11.273 21.718 11.155 21.598 11.064ZM12 20C7.589 20 4 16.411 4 12C3.993 10.223 4.58 8.495 5.668 7.091C6.757 5.686 8.284 4.686 10.006 4.25C10.072 5.531 10.626 6.738 11.556 7.621C12.485 8.505 13.718 8.999 15 9L15.101 8.999C15.331 10.117 15.936 11.123 16.816 11.851C17.695 12.578 18.797 12.983 19.938 12.999C19.444 16.941 16.073 20 12 20Z\",fill:\"currentColor\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M12.5 13C13.328 13 14 12.328 14 11.5C14 10.672 13.328 10 12.5 10C11.672 10 11 10.672 11 11.5C11 12.328 11.672 13 12.5 13Z\",fill:\"currentColor\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M8.5 10C9.328 10 10 9.328 10 8.5C10 7.672 9.328 7 8.5 7C7.672 7 7 7.672 7 8.5C7 9.328 7.672 10 8.5 10Z\",fill:\"currentColor\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M7.5 14C8.328 14 9 13.328 9 12.5C9 11.672 8.328 11 7.5 11C6.672 11 6 11.672 6 12.5C6 13.328 6.672 14 7.5 14Z\",fill:\"currentColor\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M15.5 17C16.328 17 17 16.328 17 15.5C17 14.672 16.328 14 15.5 14C14.672 14 14 14.672 14 15.5C14 16.328 14.672 17 15.5 17Z\",fill:\"currentColor\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M10.5 18C11.328 18 12 17.328 12 16.5C12 15.672 11.328 15 10.5 15C9.672 15 9 15.672 9 16.5C9 17.328 9.672 18 10.5 18Z\",fill:\"currentColor\"})]}),!isMobile&&/*#__PURE__*/_jsx(\"span\",{children:t.settingsButton})]})}),/*#__PURE__*/_jsx(AnimatePresence,{children:shouldShowModal&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},style:{position:\"fixed\",inset:0,background:\"rgba(0, 0, 0, 0.6)\",backdropFilter:\"blur(8px)\",WebkitBackdropFilter:\"blur(8px)\",zIndex:9}}),/*#__PURE__*/_jsxs(motion.div,{initial:{opacity:0,y:100,scale:.95},animate:{opacity:1,y:0,scale:1},exit:{opacity:0,y:100,scale:.95},transition:{type:\"spring\",damping:25,stiffness:300},style:{position:\"fixed\",bottom:24,left:24,width:\"calc(100% - 48px)\",maxWidth:520,...glassStyles,border:`1px solid rgba(255, 255, 255, 0.12)`,borderRadius:16,zIndex:10,overflow:\"hidden\",boxShadow:\"0 24px 48px rgba(0, 0, 0, 0.4)\"},role:\"dialog\",\"aria-modal\":\"true\",children:[/*#__PURE__*/_jsxs(\"div\",{style:{padding:28},children:[/*#__PURE__*/_jsx(\"h2\",{style:{fontSize:20,fontWeight:600,color:colors.font,margin:\"0 0 12px 0\",letterSpacing:\"-0.02em\",...fonts.title},children:t.title}),/*#__PURE__*/_jsxs(\"p\",{style:{fontSize:14,lineHeight:1.6,color:colors.font,opacity:.7,margin:\"0 0 24px 0\",...fonts.body},children:[t.description,\" \",/*#__PURE__*/_jsx(Link,{href:links.privacy,style:{...fonts.link,color:colors.font,opacity:.7,textDecoration:\"underline\"},children:t.learnMore})]}),!shouldBeExpanded&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"row\",gap:10},children:[/*#__PURE__*/_jsx(motion.button,{whileHover:{background:colors.accentHover},onClick:handleAccept,style:{flex:1,padding:\"14px 20px\",borderRadius:8,fontSize:14,fontWeight:600,cursor:\"pointer\",border:\"none\",background:colors.accent,color:accentTextColor,...fonts.button},children:t.accept}),/*#__PURE__*/_jsx(motion.button,{whileHover:{opacity:.8},onClick:handleReject,style:{flex:1,padding:\"14px 20px\",borderRadius:8,fontSize:14,fontWeight:600,cursor:\"pointer\",border:`1px solid rgba(255, 255, 255, 0.12)`,background:\"transparent\",color:colors.font,...fonts.button},children:t.reject})]}),shouldBeExpanded&&/*#__PURE__*/_jsx(\"div\",{style:{margin:\"0 -8px\",padding:\"0 8px\"},children:Object.keys(t.categories).map(key=>{const cat=t.categories[key];return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",padding:\"12px 0\",borderBottom:\"1px solid rgba(255, 255, 255, 0.08)\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,marginRight:16},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:14,fontWeight:600,color:colors.font,marginBottom:4,...fonts.label},children:cat.name}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:12,color:colors.font,opacity:.7,lineHeight:1.4,...fonts.body},children:cat.desc})]}),/*#__PURE__*/_jsx(Toggle,{active:consent[key],disabled:key===\"necessary\",accentColor:colors.accent,onChange:()=>toggleCategory(key)})]},key);})}),shouldBeExpanded&&/*#__PURE__*/_jsx(motion.button,{whileHover:{background:colors.accentHover},onClick:handleSave,style:{width:\"100%\",padding:\"14px 24px\",borderRadius:8,fontSize:14,fontWeight:600,cursor:\"pointer\",border:\"none\",background:colors.accent,color:accentTextColor,marginTop:24,...fonts.button},children:t.save}),!shouldBeExpanded&&/*#__PURE__*/_jsx(\"button\",{onClick:()=>setIsExpanded(true),style:{...fonts.link,display:\"block\",textAlign:\"center\",marginTop:16,fontSize:13,color:colors.font,opacity:.5,cursor:\"pointer\",background:\"none\",border:\"none\",width:\"100%\",textDecoration:\"underline\",textUnderlineOffset:2},children:t.customize})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"center\",gap:24,padding:\"16px 28px\",borderTop:\"1px solid rgba(255, 255, 255, 0.08)\",background:\"rgba(0, 0, 0, 0.15)\"},children:[links.privacy&&/*#__PURE__*/_jsx(\"a\",{href:links.privacy,target:\"_blank\",rel:\"noopener noreferrer\",style:{textDecoration:\"none\",...fonts.body,fontSize:12,color:colors.font,transition:\"opacity 0.2s\"},onMouseEnter:e=>e.currentTarget.style.opacity=\"0.8\",onMouseLeave:e=>e.currentTarget.style.opacity=\"1\",children:t.privacy}),links.cookie&&/*#__PURE__*/_jsx(\"a\",{href:links.cookie,target:\"_blank\",rel:\"noopener noreferrer\",style:{textDecoration:\"none\",...fonts.body,fontSize:12,color:colors.font,transition:\"opacity 0.2s\"},onMouseEnter:e=>e.currentTarget.style.opacity=\"0.8\",onMouseLeave:e=>e.currentTarget.style.opacity=\"1\",children:t.cookie}),links.imprint&&/*#__PURE__*/_jsx(\"a\",{href:links.imprint,target:\"_blank\",rel:\"noopener noreferrer\",style:{textDecoration:\"none\",...fonts.body,fontSize:12,color:colors.font,transition:\"opacity 0.2s\"},onMouseEnter:e=>e.currentTarget.style.opacity=\"0.8\",onMouseLeave:e=>e.currentTarget.style.opacity=\"1\",children:t.imprint})]})]})]})})]});}// ═══════════════════════════════════════════════════════════════════════════\n// PROPERTY CONTROLS\n// ═══════════════════════════════════════════════════════════════════════════\naddPropertyControls(CookieConsent,{previewMode:{type:ControlType.Enum,title:\"Preview\",options:[\"none\",\"modal\",\"modal-expanded\",\"fab\"],optionTitles:[\"None (Live)\",\"Modal\",\"Modal (Expanded)\",\"FAB Button\"],defaultValue:\"none\"},language:{type:ControlType.Enum,title:\"Language\",options:[\"auto\",\"en\",\"de\",\"fr\",\"es\",\"it\",\"cn\",\"pt\"],optionTitles:[\"Auto-detect\",\"English\",\"Deutsch\",\"Fran\\xe7ais\",\"Espa\\xf1ol\",\"Italiano\"],defaultValue:\"auto\"},consentExpiryDays:{type:ControlType.Number,title:\"Expiry (Days)\",defaultValue:365,min:1,max:730},glassEffect:{type:ControlType.Boolean,title:\"Glass Effect\",defaultValue:true},links:{type:ControlType.Object,title:\"Links\",controls:{privacy:{type:ControlType.Link,title:\"Privacy\"},imprint:{type:ControlType.Link,title:\"Imprint\"},cookie:{type:ControlType.Link,title:\"Cookie Policy\"}}},colors:{type:ControlType.Object,title:\"Colors\",defaultValue:{accent:\"#FFFFFF\",accentFont:\"#000000\",font:\"#FFFFFF\",background:\"rgba(41, 49, 54, 0.95)\"},controls:{accent:{type:ControlType.Color,title:\"Accent\"},accentFont:{type:ControlType.Color,title:\"Font on Accent\"},font:{type:ControlType.Color,title:\"Font\"},background:{type:ControlType.Color,title:\"Background\"}}},fonts:{type:ControlType.Object,title:\"Typography\",controls:{title:{type:ControlType.Font,title:\"Title\",controls:\"extended\"},body:{type:ControlType.Font,title:\"Body\",controls:\"extended\"},label:{type:ControlType.Font,title:\"Label\",controls:\"extended\"},button:{type:ControlType.Font,title:\"Button\",controls:\"extended\"},link:{type:ControlType.Font,title:\"Link\",controls:\"extended\"}}},customTexts:{type:ControlType.Object,title:\"Custom Texts\",controls:{title:{type:ControlType.String,title:\"Title\"},description:{type:ControlType.String,title:\"Description\"},accept:{type:ControlType.String,title:\"Accept Button\"},acceptNecessary:{type:ControlType.String,title:\"Necessary Button\"},reject:{type:ControlType.String,title:\"Reject Button\"},customize:{type:ControlType.String,title:\"Customize Link\"},save:{type:ControlType.String,title:\"Save Button\"},settingsButton:{type:ControlType.String,title:\"FAB Text\"},privacy:{type:ControlType.String,title:\"Privacy Link\"},imprint:{type:ControlType.String,title:\"Imprint Link\"},cookie:{type:ControlType.String,title:\"Cookie Link\"}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CookieConsent\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CookieConsentBanner.map","// Generated by Framer (6964d48)\nexport default function metadata(params,activeLocale){return{description:\"We help founders and growing businesses improve how they are found, understood, chosen and served—through strategy, websites, e-commerce, software and digital growth support.\",favicon:\"https://framerusercontent.com/assets/CqGfSElx4nBIHLZl3U8aLlZRR4I.png\",robots:\"max-image-preview:large\",socialImage:\"https://framerusercontent.com/assets/rxrAMzAXWGaWu5sFRiwmqMGg4.jpg\",title:\"Ubiqle\"};}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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"}