{"version":3,"file":"script_main.bShdRduF.mjs","names":["e","log","time","timeEnd","e","splitWordsRegex","useRef","useCallback","SearchInputClearButtonType","SearchInputDividerType","SearchResultTitleType","SearchResultSubtitleType","SearchResultItemType","SearchLayoutType","SearchEntryType","SearchIconType","splitWordsRegex","SearchInputClearButtonType","SearchInputDividerType","SearchResultTitleType","SearchResultSubtitleType","SearchResultItemType","SearchLayoutType","SearchEntryType","SearchIconType","splitWordsRegex","SearchInputClearButtonType","SearchInputDividerType","SearchResultTitleType","SearchResultSubtitleType","SearchResultItemType","SearchLayoutType","SearchEntryType","SearchIconType","p","useState","useTransition","SearchResultTitleType","useRef","useState","useDeferredValue","useCallback","Input","ResultRow","useMemo","ScrollView","React","useState","x","Overlay","EntryPoint","useRef","useState","fonts","css","className","fonts","css","className","css","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","useRef","React.useId","className","SVG","Logo","Search","serializationHash","variantClassNames","React.useContext","React.useMemo","React.Fragment","humanReadableVariantMap","getProps","useRef","React.useId","sharedStyle.className","sharedStyle1.className","sharedStyle2.className","className","RichText","sharedStyle.css","sharedStyle1.css","sharedStyle2.css","sharedStyle.fonts","sharedStyle1.fonts","sharedStyle2.fonts","Menu","useRef","React.useId","className","PropertyOverrides","React.createElement","Main","Framer.PageRoot","Framer.lazy","Framer.useCurrentRoute","Framer.useLocaleInfo","Framer.useRouter","React.Fragment","React.memo","React.useCallback","React.useEffect","React.useRef","React.useState","React.useLayoutEffect","Framer.LazyValue","Framer.LibraryFeaturesProvider","Framer.GracefullyDegradingErrorBoundary","Framer.PageEffectsProvider","breakpoints","Framer.patchRoutesForABTesting","e","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder"],"sources":["https:/framerusercontent.com/modules/LV9trClbmNwd5PVj9l8y/L4rFqMGNzGSwRZpGTGF3/Icons.js","https:/framerusercontent.com/modules/3Xi2AslpcDRhfyCVPmx3/d0Oobr5BHnVqZJQyMdGn/storage.js","https:/framerusercontent.com/modules/m2nL4qHNbqX9QCxsHsGL/b9aplVZjN51x28yfNK16/cache.js","https:/framer.com/m/cache-YMiL.js@b9aplVZjN51x28yfNK16","https:/framerusercontent.com/modules/uU1mtMKXsrVAg8N5hW7w/v7gDLwKJgQ5vAsFHxY4H/cachedIndex.js","https:/framerusercontent.com/modules/K9JZRwJcE6slDAf8rUmh/mJ54py1Ecnn1RoC4N1m4/fakeResults.js","https:/framerusercontent.com/modules/TwRgbWuhHeB95MPifel4/YW8Hlm59FG3PajbrVsaR/fuzzySearch.js","https:/framerusercontent.com/modules/MWsEnYfRnoOQq31DN4ql/fxR5MNtgeSOU8Mj4iY9n/utils.js","https:/framerusercontent.com/modules/MyBp84Z0p9nUcMimVMnY/IOZYtsQMauhTmjY894DM/useSearch.js","https:/framerusercontent.com/modules/PJVBcBLmDteTEAZh3J9Z/keXJyjyE9VnzUcDMayjg/browser.js","https:/framerusercontent.com/modules/Gzef0nFihI9m9vZG45th/lIUxbZcreiDm2GzUkt3y/useCallbackOnMouseMove.js","https:/framerusercontent.com/modules/eAnjm75CdfYT1Zz4BIaz/7KDSfnnyD1T3Ap75L4m8/scrollIntoView.js","https:/framerusercontent.com/modules/tV9haTHllpHHc9Fjue2H/wgITiHCOZBBo33pin0wW/SearchModal.js","https:/framerusercontent.com/modules/MyBp84Z0p9nUcMimVMnY/G59GwobMNJqwSjtPO6Pv/useSearch.js","https:/framerusercontent.com/modules/tV9haTHllpHHc9Fjue2H/bsLTiXYjkHoD2XaMjabu/SearchModal.js","https:/framerusercontent.com/modules/MyBp84Z0p9nUcMimVMnY/fpvHBWGoGQcWezUopJLS/useSearch.js","https:/framerusercontent.com/modules/tV9haTHllpHHc9Fjue2H/1GynhDlRW7uuXFYW1RXb/SearchModal.js","https:/framerusercontent.com/modules/MyBp84Z0p9nUcMimVMnY/1vZ2fdkLJI4IprrVTHqR/useSearch.js","https:/framerusercontent.com/modules/tV9haTHllpHHc9Fjue2H/lCNMpf6DznmmCJRndYjM/SearchModal.js","https:/framerusercontent.com/modules/hqEf5wXaAewP8VPuaZ98/5A0QGVeEr2cwheQpIuEG/useViewportSizeState.js","https:/framerusercontent.com/modules/6wAE2eMb2Tl3zrU7u4UL/mKj6QS2p4Cgdaa0WrZKY/Search.js","https:/framerusercontent.com/modules/POMyCEQwF81ycoXAPjdH/d19staIdC3a1EJdDaGKL/FE4xvCCnV.js","https:/framerusercontent.com/modules/Ddbpnt2AfCrDU7IIjJus/vDWbYuNor3ccjFs4smPJ/LipGQhgjb.js","https:/framerusercontent.com/modules/zFg8V0HaYbGrmEMHD0Oh/UouaKbjjpRT9843ChQTX/RBjS_xJc5.js","https:/framerusercontent.com/modules/fLDWyJbRFMfN91ODliRK/WTBZt6aaD05SvOvbRODR/wDlknlLMe.js","https:/framerusercontent.com/modules/QyykfBiovVibHD8WsvgA/kfHE5Gf7OllPvByVt4Pk/TOOhuw3T4.js","https:/framerusercontent.com/modules/IIIwW7Z14exgMXCAQ5d7/Y45QmRdmqbc2xHEre4rD/BoPVQlvuK.js","framer:toplevel/main"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{motion}from\"framer-motion\";export function SearchIcon(props){return /*#__PURE__*/ _jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 256 256\",width:props.width,height:props.height,style:{...props.style,color:props.color},children:/*#__PURE__*/ _jsx(\"path\",{d:\"M232.49,215.51,185,168a92.12,92.12,0,1,0-17,17l47.53,47.54a12,12,0,0,0,17-17ZM44,112a68,68,0,1,1,68,68A68.07,68.07,0,0,1,44,112Z\",fill:\"currentColor\"})});}export function ClearIcon(props){return /*#__PURE__*/ _jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 256 256\",...props,children:[/*#__PURE__*/ _jsx(\"rect\",{width:\"256\",height:\"256\",fill:\"none\"}),/*#__PURE__*/ _jsx(\"path\",{d:\"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm37.66,130.34a8,8,0,0,1-11.32,11.32L128,139.31l-26.34,26.35a8,8,0,0,1-11.32-11.32L116.69,128,90.34,101.66a8,8,0,0,1,11.32-11.32L128,116.69l26.34-26.35a8,8,0,0,1,11.32,11.32L139.31,128Z\",fill:\"currentColor\"})]});}export function SpinnerIcon(props){const borderWidth=3;return /*#__PURE__*/ _jsxs(\"div\",{style:{position:\"relative\",...props.style},children:[/*#__PURE__*/ _jsx(motion.div,{animate:{rotate:360},transition:{ease:\"linear\",duration:1,repeat:Infinity},style:{borderRadius:100,backgroundImage:`conic-gradient(from 270deg, transparent 0%, ${props.color} 100%)`,width:\"100%\",height:\"100%\"}}),/*#__PURE__*/ _jsx(\"div\",{style:{backgroundColor:props.backgroundColor,borderRadius:100,position:\"absolute\",top:borderWidth,left:borderWidth,bottom:borderWidth,right:borderWidth}})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"ClearIcon\":{\"type\":\"reactComponent\",\"name\":\"ClearIcon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"SpinnerIcon\":{\"type\":\"reactComponent\",\"name\":\"SpinnerIcon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchIcon\":{\"type\":\"reactComponent\",\"name\":\"SearchIcon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Icons.map","export function Storage(name) {\n    this.ready = new Promise((resolve, reject)=>{\n        var request = window.indexedDB.open(location.origin);\n        request.onupgradeneeded = (e)=>{\n            this.db = e.target[\"result\"];\n            this.db.createObjectStore(\"store\");\n        };\n        request.onsuccess = (e)=>{\n            this.db = e.target[\"result\"];\n            resolve();\n        };\n        request.onerror = (e)=>{\n            this.db = e.target[\"result\"];\n            reject(e);\n        };\n    });\n}\nStorage.prototype.get = function(key) {\n    return this.ready.then(()=>{\n        return new Promise((resolve, reject)=>{\n            var request = this.getStore().get(key);\n            request.onsuccess = (e)=>resolve(e.target.result)\n            ;\n            request.onerror = reject;\n        });\n    });\n};\nStorage.prototype.getStore = function() {\n    return this.db.transaction([\n        \"store\"\n    ], \"readwrite\").objectStore(\"store\");\n};\nStorage.prototype.set = function(key, value) {\n    return this.ready.then(()=>{\n        return new Promise((resolve, reject)=>{\n            var request = this.getStore().put(value, key);\n            request.onsuccess = resolve;\n            request.onerror = reject;\n        });\n    });\n};\nStorage.prototype.delete = function(key, value) {\n    window.indexedDB.deleteDatabase(location.origin);\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"Storage\":{\"type\":\"function\"}}}","// @ts-ignore\nimport{Storage}from\"https://framerusercontent.com/modules/3Xi2AslpcDRhfyCVPmx3/d0Oobr5BHnVqZJQyMdGn/storage.js\";export const hashCode=s=>s.split(\"\").reduce((a,b)=>{a=(a<<5)-a+b.charCodeAt(0);return a&a;},0);export function corsProxy(url){return`https://cors-anywhere.herokuapp.com/${url}`;}export async function cachedResponse(url,cache=new Storage(\"cache\")){const cacheKey=url;const data=await cache.get(cacheKey);if(data){return data;}else{var req=new XMLHttpRequest;req.open(\"GET\",url,true);req.responseType=\"blob\";return new Promise((resolve,reject)=>{req.onload=async function(){if(this.status===200){await cache.set(url,this.response);resolve(this.response);}else{reject(new Error(`Response status ${this.status} ${this.statusText}`));}};req.onerror=function(error){reject(error);};req.send();});}}export async function setCachedData(url,dataToCache,cache=new Storage(\"cache\")){const cacheKey=url;const data=await cache.set(cacheKey,dataToCache);}export async function checkForCachedData(url,cache=new Storage(\"cache\")){const cacheKey=url;const data=await cache.get(cacheKey);if(data){return data;}else{return null;}}\nexport const __FramerMetadata__ = {\"exports\":{\"hashCode\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"setCachedData\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"checkForCachedData\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"corsProxy\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"cachedResponse\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./cache.map","/*\n * cache\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/m2nL4qHNbqX9QCxsHsGL/b9aplVZjN51x28yfNK16/cache.js\"\n","import{checkForCachedData,setCachedData}from\"https://framer.com/m/cache-YMiL.js@b9aplVZjN51x28yfNK16\";const VERSION=1;const defaultLocaleId=\"default\";export function isDefaultLocaleId(localeId){return!localeId||localeId===\"default\";}const INDEX_KEY=\"searchIndexCache\";function getIndexKey(localeId){if(isDefaultLocaleId(localeId))return INDEX_KEY;return`${INDEX_KEY}-${localeId}`;}const METADATA_KEY=\"searchCacheMetadata\";function getMetadataKey(localeId){if(isDefaultLocaleId(localeId))return METADATA_KEY;return`${METADATA_KEY}-${localeId}`;}export async function getCachedIndex(localeId,indexHash){// A check here for metadata can be added later if we need to\n// migrate or expire the index. Though most likely, any version change\n// should result in deleting the cache and starting again.\nconst metadataKey=getMetadataKey(localeId);const indexKey=getIndexKey(localeId);const[metadata,cachedIndex]=await Promise.all([checkForCachedData(metadataKey),checkForCachedData(indexKey)]);if(cachedIndex){return{status:indexHash&&metadata?.indexHash===indexHash?\"fresh\":\"stale\",searchIndex:cachedIndex,indexHash:metadata?.indexHash};}return{status:\"miss\"};}export function setCachedIndex(localeId,index,indexHash){const indexKey=getIndexKey(localeId);setCachedData(indexKey,index);const metadata={version:VERSION,timestamp:Date.now(),indexHash};const metadataKey=getMetadataKey(localeId);setCachedData(metadataKey,metadata);}\nexport const __FramerMetadata__ = {\"exports\":{\"isDefaultLocaleId\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getCachedIndex\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"setCachedIndex\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./cachedIndex.map","// Fake example data used for when the search component is in preview mode.\n// Note that the `url` value is used as a key in React, so it needs to be unique.\nexport const fakeResults={\"/\":{version:1,title:\"Example Search Result\",description:\"Description of search result.\",keywords:\"\",h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],p:[],url:\"/example-url/\",codeblock:[]},\"/example-1\":{version:1,title:\"Publish your Site to Search\",description:\"Try Site Search to instantly search your Framer site content.\",keywords:\"\",h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],p:[],url:\"/example-url/1/\",codeblock:[]},\"/example-2\":{version:1,title:\"Customise your Site Search\",description:\"Personalize everything from corner radius, to icon weight.\",keywords:\"\",h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],p:[],url:\"/example-url/2/\",codeblock:[]}};\nexport const __FramerMetadata__ = {\"exports\":{\"fakeResults\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./fakeResults.map","// This file is based on the Levenshtein algorithm. Originally from Koen but maybe he\n// got it from somewhere else.\nconst peq=new Uint32Array(65536);const myers_32=(a,b)=>{const n=a.length;const m=b.length;const lst=1<<n-1;let pv=-1;let mv=0;let sc=n;let i=n;while(i--){peq[a.charCodeAt(i)]|=1<<i;}for(i=0;i<m;i++){let eq=peq[b.charCodeAt(i)];const xv=eq|mv;eq|=(eq&pv)+pv^pv;mv|=~(eq|pv);pv&=eq;if(mv&lst){sc++;}if(pv&lst){sc--;}mv=mv<<1|1;pv=pv<<1|~(xv|mv);mv&=xv;}i=n;while(i--){peq[a.charCodeAt(i)]=0;}return sc;};const myers_x=(b,a)=>{const n=a.length;const m=b.length;const mhc=[];const phc=[];const hsize=Math.ceil(n/32);const vsize=Math.ceil(m/32);for(let i=0;i<hsize;i++){phc[i]=-1;mhc[i]=0;}let j=0;for(;j<vsize-1;j++){let mv=0;let pv=-1;const start=j*32;const vlen=Math.min(32,m)+start;for(let k=start;k<vlen;k++){peq[b.charCodeAt(k)]|=1<<k;}for(let i1=0;i1<n;i1++){const eq=peq[a.charCodeAt(i1)];const pb=phc[i1/32|0]>>>i1&1;const mb=mhc[i1/32|0]>>>i1&1;const xv=eq|mv;const xh=((eq|mb)&pv)+pv^pv|eq|mb;let ph=mv|~(xh|pv);let mh=pv&xh;if(ph>>>31^pb){phc[i1/32|0]^=1<<i1;}if(mh>>>31^mb){mhc[i1/32|0]^=1<<i1;}ph=ph<<1|pb;mh=mh<<1|mb;pv=mh|~(xv|ph);mv=ph&xv;}for(let k1=start;k1<vlen;k1++){peq[b.charCodeAt(k1)]=0;}}let mv1=0;let pv1=-1;const start1=j*32;const vlen1=Math.min(32,m-start1)+start1;for(let k2=start1;k2<vlen1;k2++){peq[b.charCodeAt(k2)]|=1<<k2;}let score=m;for(let i2=0;i2<n;i2++){const eq1=peq[a.charCodeAt(i2)];const pb1=phc[i2/32|0]>>>i2&1;const mb1=mhc[i2/32|0]>>>i2&1;const xv1=eq1|mv1;const xh1=((eq1|mb1)&pv1)+pv1^pv1|eq1|mb1;let ph1=mv1|~(xh1|pv1);let mh1=pv1&xh1;score+=ph1>>>m-1&1;score-=mh1>>>m-1&1;if(ph1>>>31^pb1){phc[i2/32|0]^=1<<i2;}if(mh1>>>31^mb1){mhc[i2/32|0]^=1<<i2;}ph1=ph1<<1|pb1;mh1=mh1<<1|mb1;pv1=mh1|~(xv1|ph1);mv1=ph1&xv1;}for(let k3=start1;k3<vlen1;k3++){peq[b.charCodeAt(k3)]=0;}return score;};const distance=(a,b)=>{if(a.length<b.length){const tmp=b;b=a;a=tmp;}if(b.length===0){return a.length;}if(a.length<=32){return myers_32(a,b);}return myers_x(a,b);};const closest=(str,arr)=>{let min_distance=Infinity;let min_index=0;for(let i=0;i<arr.length;i++){const dist=distance(str,arr[i]);if(dist<min_distance){min_distance=dist;min_index=i;}}return arr[min_index];};export{closest,distance};\nexport const __FramerMetadata__ = {\"exports\":{\"closest\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"distance\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./fuzzySearch.map","export const localStorageDebugFlag=(()=>{try{return typeof window!==\"undefined\"&&window.localStorage.__framerDebugSearch===\"true\";}catch(e){// localStorage not available\n}})();const groupsRegex=/[A-Z]{2,}|[A-Z][a-z]+|[a-z]+|[A-Z]\\d*|\\d+/gu;function capitalizeFirstLetter(value){return value.charAt(0).toUpperCase()+value.slice(1);}export function titleCase(value){const groups=value.match(groupsRegex)||[];return groups.map(capitalizeFirstLetter).join(\" \");}export function clampText(text,maxLength){const textLength=text.length;if(textLength<=maxLength){return text;}const slicedText=text.slice(0,maxLength);if(textLength>maxLength){return slicedText+\"…\";}return slicedText;}export function isEmptyObject(object){return Object.keys(object).length===0;}export function createLogger(showOutput){function log(...data){console.log(Date.now(),...data);}function time(label){console.time(label);}function timeEnd(label){console.timeEnd(label);}function noop(){}if(!showOutput){return{log:noop,time:noop,timeEnd:noop};}return{log,time,timeEnd};}export const DEFAULT_FONT_FAMILY=`\"Inter\", system-ui, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;export function getFontFamily(theme){if(theme.inputFont?.fontFamily)return theme.inputFont.fontFamily;if(theme.titleFont?.fontFamily)return theme.titleFont.fontFamily;if(theme.subtitleFont?.fontFamily)return theme.subtitleFont.fontFamily;return DEFAULT_FONT_FAMILY;}export function animationKeyFromLayout(layout){return`${layout}Animation`;}export const safeDocument=typeof document!==\"undefined\"?document:null;export const safeWindow=typeof window!==\"undefined\"?window:null;const metaTagSelector='meta[name=\"framer-search-index\"]';export function getMetaTagContent(){const metaTag=safeDocument?.querySelector(metaTagSelector);if(!metaTag)return undefined;const metaTagContent=metaTag.getAttribute(\"content\");return metaTagContent;}export const checkIfOverLimit=()=>{return getMetaTagContent()===\"limit-reached\";};export function stripLocaleSlugFromPath(url,localeSlug){if(!localeSlug)return url;const localeSlugWithSlash=`/${localeSlug}`;if(url.startsWith(localeSlugWithSlash)){return url.slice(localeSlugWithSlash.length);}}/**\n * @param isHighPriority If true and `scheduler.yield` is not available, the function will either use `postTask` or if also not available, return a resolved promise.\n */export function yieldToMain(isHighPriority){if(\"scheduler\"in window){// see https://github.com/WICG/scheduling-apis/blob/main/explainers/yield-and-continuation.md\n// \"user-blocking\" is the highest priority and creates a paint opportunity.\n// \"user-visible\" is the default, creates a paint opportunity, but has more potential to be delayed (by \"user-blocking\" tasks).\nconst options={priority:isHighPriority?\"user-blocking\":\"user-visible\"};if(\"yield\"in scheduler)return scheduler.yield(options);if(\"postTask\"in scheduler)return scheduler.postTask(()=>{},options);}if(isHighPriority){// `setTimeout` could suffer from being delayed for longer: https://developer.chrome.com/blog/introducing-scheduler-yield-origin-trial#the_problem_with_current_yielding_strategies\n// so for browsers not supporting yield, we guarantee execution for high priority actions, but do not guarantee a paint opportunity as trade-off.\nreturn Promise.resolve();}return new Promise(resolve=>{setTimeout(resolve,0);});}\nexport const __FramerMetadata__ = {\"exports\":{\"safeWindow\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"stripLocaleSlugFromPath\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"titleCase\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"safeDocument\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localStorageDebugFlag\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createLogger\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"animationKeyFromLayout\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"clampText\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"yieldToMain\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getMetaTagContent\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"checkIfOverLimit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFontFamily\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isEmptyObject\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DEFAULT_FONT_FAMILY\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./utils.map","// @ts-ignore\nimport{useLocaleInfo}from\"framer\";import{clamp}from\"framer-motion\";import{useEffect,useState,useTransition}from\"react\";import{SearchResultTitleType}from\"https://framerusercontent.com/modules/tV9haTHllpHHc9Fjue2H/wgITiHCOZBBo33pin0wW/SearchModal.js\";import{getCachedIndex,setCachedIndex,isDefaultLocaleId}from\"https://framerusercontent.com/modules/uU1mtMKXsrVAg8N5hW7w/v7gDLwKJgQ5vAsFHxY4H/cachedIndex.js\";import{fakeResults}from\"https://framerusercontent.com/modules/K9JZRwJcE6slDAf8rUmh/mJ54py1Ecnn1RoC4N1m4/fakeResults.js\";import{distance}from\"https://framerusercontent.com/modules/TwRgbWuhHeB95MPifel4/YW8Hlm59FG3PajbrVsaR/fuzzySearch.js\";import{createLogger,localStorageDebugFlag,safeDocument,safeWindow,stripLocaleSlugFromPath,yieldToMain}from\"https://framerusercontent.com/modules/MWsEnYfRnoOQq31DN4ql/fxR5MNtgeSOU8Mj4iY9n/utils.js\";const{log,time,timeEnd}=createLogger(localStorageDebugFlag);function isValidUrl(url){try{new URL(url);return true;}catch(_error){return false;}}const splitWordsRegex=(()=>{try{// Regex lookbehind is used to ignore ampersands when splitting\n// words. For example \"H&M\" will not be split and is considered as\n// one word, but \"H & M\" will be split.\n// However, some browsers (like Safari iOS 15) don't support\n// lookbehind and will crash. When it's not supported, fallback to\n// a safer regex that always splits ampersands.\nconst regex=RegExp(\"[\\\\s.,;!?\\\\p{P}\\\\p{Z}]+(?<!\\\\p{L}&)(?!&\\\\p{L})\",\"u\");\"\".split(regex);return regex;}catch{log(\"Falling back to regex without lookbehind\");return RegExp(\"[\\\\s.,;!?\\\\p{P}\\\\p{Z}]+\",\"u\");}})();function splitWords(text){return text.split(splitWordsRegex);}function getUniqueWords(str){const words=splitWords(str).filter(word=>word.trim()&&word.length>0);return new Set(words);}const normalizeRegex=/[\\u0300-\\u036f]/g;/**\n * Replace accented characters with equivilant non-accented versions and\n * make everything lowercase.\n */function getNormalizedString(text){if(Array.isArray(text)){return text.map(getNormalizedString);}return text.normalize(\"NFD\")// From: https://stackoverflow.com/a/37511463\n.replace(normalizeRegex,\"\").toLowerCase();}const normalizedItemCache=new WeakMap;function getNormalizedItemFromCache(item){const cached=normalizedItemCache.get(item);if(cached)return cached;const normalizedItem=getNormalizedItem(item);normalizedItemCache.set(item,normalizedItem);return normalizedItem;}function getNormalizedItem(item){const normalizedItem={};for(const key in item){if(item.hasOwnProperty(key)){const value=item[key];if(typeof value===\"string\"){normalizedItem[key]=getNormalizedString(value);continue;}if(Array.isArray(value)){normalizedItem[key]=getNormalizedString(value);continue;}normalizedItem[key]=value;}}return normalizedItem;}function getMatchRange(currentRange,start,end){const result={...currentRange};if(start<result.start){result.start=start;}if(end>result.end){result.end=end;}return result;}/**\n * Score index item based on the contents of it's fields such as title, description, headings etc.\n *\n * Note that this does not normalize the item or query. Normalization is expected to happen\n * before passing the data into this.\n */function getScoreForSearchIndexItem(item,query,words,fullQuery){let score=0;const match={title:{start:Infinity,end:0},description:{start:Infinity,end:0}};const urlWords=getUniqueWords(item.url);// Match query based on words in the URL so that random strings inside\n// other strings are not matched.\nif(urlWords.has(query)){score+=10;}// Really boost single word queries that match single word URLs.\nif(words.size===1&&urlWords.size===1&&urlWords.values().next().value===query){score+=score*5;}// Score shorter URLs higher so `/pricing` is before `/lala/pricing`.\nif(score>0){const splitLength=item.url.split(\"/\").length;score+=clamp(10-splitLength,0,splitLength);}const titleWords=getUniqueWords(item.title);// Prefer full word matches in the title.\nif(titleWords.has(query)){score+=10;}const titleIndex=item.title.indexOf(query);if(titleIndex!==-1){score+=10;// TODO: Matches are currently not used, but they can be used in the\n// future to add text highlighting.\nmatch.title=getMatchRange(match.title,titleIndex,titleIndex+query.length);}// If the full query is close to being the heading, score this highly as\n// the user is most likely looking for that exact title.\nif(distance(item.title,fullQuery)<=2){score+=score*10;}// Fuzzy match full words in the title.\nfor(const titleWord of titleWords){const distanceScore=distance(query,titleWord);// Small distance score helps with small typos.\nif(distanceScore<=2){score+=10;}}const headings=[...item.h1,...item.h2,...item.h3,...item.h4,...item.h5,...item.h6];for(const heading of headings){const headingWords=getUniqueWords(heading);// If the full query is close to being the heading, score this highly as\n// the user is most likely looking for that exact title.\nif(distance(heading,fullQuery)<=2){score+=score*10;}// Bias headings that start with the query as this helps when\n// you know the title you are searching for.\nif(heading.startsWith(query)){score+=10;}if(headingWords.has(query)){score+=10;}if(heading.includes(query)){score+=1;}// Fuzzy match full words in headings.\nfor(const headingWord of headingWords){const distanceScore=distance(query,headingWord);if(distanceScore<=2){score+=1;}}}const descriptionIndex=item.description.indexOf(query);if(descriptionIndex!==-1){score+=10;match.description=getMatchRange(match.description,descriptionIndex,descriptionIndex+query.length);}for(const p of item.p){if(p.includes(query)){score+=.5;}}for(const codeblock of item.codeblock){// If the full query is close to being the codeblock, score this highly as\n// the user is most likely looking for that exact code.\nif(distance(codeblock,fullQuery)<=2){score*=10;}if(codeblock.includes(fullQuery)){score+=10;}if(codeblock.includes(query)){score+=.5;}}return{score,match};}function getSearchIndexItemScore(item,normalizedQuery){const normalizedItem=getNormalizedItemFromCache(item);const queryWords=getUniqueWords(normalizedQuery);let total=0;for(const queryWord of queryWords){const{score}=getScoreForSearchIndexItem(normalizedItem,queryWord,queryWords,normalizedQuery);total+=score;}return total;}function useRawSearch(index,query,settings){const[results,setResults]=useState(null);const[,startTransition]=useTransition();useEffect(()=>{const abortController=new AbortController;executeRawSearch(index,query,settings,abortController.signal).then(res=>{if(!abortController.signal.aborted){startTransition(()=>{setResults(res);});}}).catch(err=>{if(err.name!==\"AbortError\"){console.error(\"Search failed:\",err);}});return()=>{abortController.abort();};},[index,query]);return{results:results??[]};}const QUANTUM=32// ms, 2*16ms (2 frames on 60 hz)\n;async function executeRawSearch(index,query,settings,signal){const path=safeWindow?.location.pathname;time(\"query\");const normalizedQuery=getNormalizedString(query);const results=[];const items=Object.values(index);let deadline=performance.now()+QUANTUM;async function yieldToMainIfNecessary(){if(performance.now()>=deadline){await yieldToMain();deadline=performance.now()+QUANTUM;}}for(let i=0;i<items.length;++i){if(performance.now()>=deadline){await yieldToMainIfNecessary();deadline=performance.now()+QUANTUM;}if(signal?.aborted)return[];const item=items[i];const score=getSearchIndexItemScore(item,normalizedQuery);if(score>(settings.minimumScore||0)&&(!path||item.url!==path)){const heading=item.h1.length&&item.h1[0];const title=settings?.titleType===SearchResultTitleType.Title?item.title:heading?heading:item.title;// Convert index item to result item.\nresults.push({url:item.url,title,description:item.description,body:[...item.p,item.codeblock].join(\" \"),score});}}await yieldToMainIfNecessary();if(signal?.aborted)return[];const sorted=results.sort((itemA,itemB)=>itemB.score-itemA.score);timeEnd(\"query\");await yieldToMainIfNecessary();if(signal?.aborted)return[];return results.slice(0,20);}function getIndexedScopedToUrl(index,rawUrlScope,localeSlug){const scopedIndex={};const baseScopeUrlHasVariable=rawUrlScope.includes(\":\");const urlUpToPathVariable=rawUrlScope.split(\":\")[0];const urlScope=urlUpToPathVariable.length>1?urlUpToPathVariable:\"\";for(const url in index){const strippedURL=stripLocaleSlugFromPath(url,localeSlug);if(!strippedURL.startsWith(urlScope)){continue;}if(baseScopeUrlHasVariable&&url.length<=urlScope.length){continue;}scopedIndex[url]=index[url];}return scopedIndex;}export function useSearch(query,settings){const[searchIndex,_setSearchIndex]=useState({});const[status,setStatus]=useState(\"loading\");const{results}=useRawSearch(searchIndex,query,settings);const{activeLocale}=useLocaleInfo();const localeId=activeLocale?.id;// Seperate setter function so that the URL scope is always applied\n// to indexes loaded from either the cache or network.\nfunction setSearchIndex(index,options={ignoreScope:false}){let scopedIndex=index;if(settings.urlScope&&!options.ignoreScope){scopedIndex=getIndexedScopedToUrl(index,settings.urlScope,activeLocale?.slug);log(\"Using URL scope\",settings.urlScope);}_setSearchIndex(scopedIndex);}useEffect(()=>{async function loadSearchIndex(){setStatus(\"loading\");const baseUrl=getBaseUrl(\"framer-search-index\");if(!baseUrl){setStatus(\"no-meta-tag-found\");setSearchIndex(fakeResults,{ignoreScope:true});log(\"No meta tag found\");return;}// If a cached index exists, use the cached version until the latest one from the network loads.\nconst cacheResult=await getCachedIndex(localeId,baseUrl);if(cacheResult.status!==\"miss\"){setSearchIndex(cacheResult.searchIndex);setStatus(\"loading-with-cache\");log(\"Using cached index\");if(cacheResult.status===\"fresh\")return;}const searchIndexUrl=getSearchIndexUrl(baseUrl,localeId);const response=await fetch(searchIndexUrl);// Happy case.\nif(response.ok){const downloadedIndex=await response.json();setSearchIndex(downloadedIndex);setCachedIndex(localeId,downloadedIndex,baseUrl);setStatus(\"success\");log(\"Using downloaded index\");return;}// Unexpected error.\n// Our \"sites\" CDN currently returns 403s for missing files.\nconst isNotFound=response.status===403||response.status===404;if(!isNotFound){throw new Error(response.statusText);}// Index is likely still being generated.\nlog(\"Index not found\");const fallbackBaseUrl=getBaseUrl(\"framer-search-index-fallback\");if(!fallbackBaseUrl){if(cacheResult.status===\"miss\"){setStatus(\"pending-index-generation\");log(\"No fallback, no cache\");}else{log(\"No fallback, using cache\");}return;}const fallbackSearchIndexUrl=getSearchIndexUrl(fallbackBaseUrl,localeId);const fallbackResponse=await fetch(fallbackSearchIndexUrl);if(fallbackResponse.ok){const downloadedIndex=await fallbackResponse.json();setSearchIndex(downloadedIndex);// It's safe to cache the fallback because if we're here, current cache is empty or stale.\nsetCachedIndex(localeId,downloadedIndex,fallbackBaseUrl);setStatus(\"success\");log(\"Using downloaded fallback index\");return;}if(cacheResult.status===\"miss\"){setStatus(\"pending-index-generation\");log(\"Fallback failed, no cache\");}else{log(\"Fallback failed, using cache\");}}loadSearchIndex().catch(error=>{// TODO: Check for error type here. If it's a network error,\n// we could do a few retries.\nsetStatus(\"error\");log(\"Failed to load search index\",error);});},[localeId]);log({status,results});return{results,status};}function getBaseUrl(name){return safeDocument?.querySelector(`meta[name=\"${name}\"]`)?.getAttribute(\"content\");}function getSearchIndexUrl(baseURL,localeId){if(isDefaultLocaleId(localeId))return baseURL;return baseURL.replace(\".json\",`-${localeId}.json`);}\nexport const __FramerMetadata__ = {\"exports\":{\"SearchIndex\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useSearch\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","export var Browser;(function(Browser){var isTouch=Browser.isTouch=()=>\"ontouchstart\"in window||navigator.maxTouchPoints>0;var isChrome=Browser.isChrome=()=>navigator.userAgent.toLowerCase().includes(\"chrome/\");var isWebKit=Browser.isWebKit=()=>navigator.userAgent.toLowerCase().includes(\"applewebkit/\");var isSafari=Browser.isSafari=()=>isWebKit()&&!isChrome();var isSafariDesktop=Browser.isSafariDesktop=()=>isSafari()&&!isTouch();var isWindows=Browser.isWindows=()=>/Win/.test(navigator.platform);var isMacOS=Browser.isMacOS=()=>/Mac/.test(navigator.platform);})(Browser||(Browser={}));\nexport const __FramerMetadata__ = {\"exports\":{\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./browser.map","// From: @framerjs/fresco/src/components/utils/useCallbackOnMouseMove.ts\nimport{useRef,useCallback}from\"react\";import{Browser}from\"https://framerusercontent.com/modules/PJVBcBLmDteTEAZh3J9Z/keXJyjyE9VnzUcDMayjg/browser.js\";/**\n * Webkit fires mousemove events if the pointer's coordination changes relative\n * to its container (e.g. if the container scrolls), or when a modifier key is\n * pressed, mousemove would fire even if the cursor did not actually move.\n * This helper compares the cursor position between mouse events, and fire the\n * callback only when its position changes.\n */ export const useCallbackOnMouseMove=(callback,mousePositionRef)=>{const prevPositionRef=useRef(null);return useCallback(event=>{if(!Browser.isSafari())return callback(event);const ref=mousePositionRef?mousePositionRef:prevPositionRef;const{clientX,clientY}=event;const prevCursorPosition=ref.current;ref.current={x:clientX,y:clientY};// Ignore mouse moves unless we have a position. Else it might be an\n// element that appears behind the mouse without the mouse moving.\nif(!prevCursorPosition){return;}if(prevCursorPosition.x!==clientX||prevCursorPosition.y!==clientY){return callback(event);}},[mousePositionRef,callback]);};\nexport const __FramerMetadata__ = {\"exports\":{\"useCallbackOnMouseMove\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Point\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./useCallbackOnMouseMove.map","// Safari does not support `element.scrollIntoView({ block: \"nearest\" })`, so this\n// is a workaround for that.\nexport function scrollIntoView(targetElement,scrollElement,/** Additional spacing to add from the top or bottom of the scroll element viewport. */ {offsetTop,offsetBottom}){const targetElementBounds=targetElement.getBoundingClientRect();const scrollElementBounds=scrollElement.getBoundingClientRect();if(targetElementBounds.top<scrollElementBounds.top){const difference=scrollElementBounds.top-targetElementBounds.top;scrollElement.scrollTop=scrollElement.scrollTop-difference-offsetTop;}else if(targetElementBounds.bottom>scrollElementBounds.bottom){const topAligned=scrollElementBounds.top-targetElementBounds.top;const minOffset=scrollElement.scrollTop-topAligned-offsetTop;const bottomAligned=targetElementBounds.bottom-scrollElementBounds.bottom;const offset=scrollElement.scrollTop+bottomAligned+offsetBottom;scrollElement.scrollTop=Math.min(minOffset,offset);}}\nexport const __FramerMetadata__ = {\"exports\":{\"scrollIntoView\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./scrollIntoView.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useSearch}from\"https://framerusercontent.com/modules/MyBp84Z0p9nUcMimVMnY/IOZYtsQMauhTmjY894DM/useSearch.js\";import React,{useEffect,useState,useMemo,forwardRef,useRef,useDeferredValue,useLayoutEffect,useCallback,useImperativeHandle}from\"react\";import{Browser}from\"https://framerusercontent.com/modules/PJVBcBLmDteTEAZh3J9Z/keXJyjyE9VnzUcDMayjg/browser.js\";import{motion,clamp,useAnimate}from\"framer-motion\";import{SearchIcon,ClearIcon,SpinnerIcon}from\"https://framerusercontent.com/modules/LV9trClbmNwd5PVj9l8y/L4rFqMGNzGSwRZpGTGF3/Icons.js\";import{clampText,getFontFamily,localStorageDebugFlag,animationKeyFromLayout,stripLocaleSlugFromPath}from\"https://framerusercontent.com/modules/MWsEnYfRnoOQq31DN4ql/fxR5MNtgeSOU8Mj4iY9n/utils.js\";import{useCallbackOnMouseMove}from\"https://framerusercontent.com/modules/Gzef0nFihI9m9vZG45th/lIUxbZcreiDm2GzUkt3y/useCallbackOnMouseMove.js\";import{scrollIntoView}from\"https://framerusercontent.com/modules/eAnjm75CdfYT1Zz4BIaz/7KDSfnnyD1T3Ap75L4m8/scrollIntoView.js\";import{useLocaleInfo,// @ts-expect-error Internal API\nuseRouter,// @ts-expect-error Internal API\ninferInitialRouteFromPath}from\"framer\";const MAX_DESCRIPTION_LENGTH=120;const MODAL_MAX_HEIGHT=496;const VERTICAL_SPACING_MULTIPLIER=.6;function ClearButton({theme,type,onClick,text}){const shouldDisplayIcon=type===\"icon\";const iconOrText=shouldDisplayIcon?/*#__PURE__*/_jsx(ClearIcon,{style:{color:theme.inputIconColor,width:theme.inputIconSize,height:theme.inputIconSize}}):text;return /*#__PURE__*/_jsx(\"div\",{style:{flexShrink:0,fontSize:theme&&theme.titleFont&&theme.titleFont.fontSize?theme.titleFont.fontSize:15},children:/*#__PURE__*/_jsx(\"button\",{className:\"__framer-search-clear-button\",onClick:onClick,style:{fontFamily:\"inherit\",border:\"none\",background:\"none\",cursor:\"pointer\",display:\"flex\",textTransform:\"uppercase\",color:theme.inputIconColor,fontSize:\"0.75em\",padding:0},children:iconOrText})});}function Divider({theme,type}){const styles={background:theme.foregroundColor,height:1,flexShrink:0,opacity:.05};if(type===\"contained\"&&theme){styles.marginLeft=theme.horizontalSpacing;styles.marginRight=theme.horizontalSpacing;}return /*#__PURE__*/_jsx(\"div\",{style:styles});}export const Input=/*#__PURE__*/forwardRef(function Input(props,ref){const{value=\"\",status,autofocus,theme,placeholder,iconType,clearButtonType,onChange}=props;const[inputValue,setInputValue]=useState(value);const[isFocused,setIsFocused]=useState(false);const inputRef=useRef();useImperativeHandle(ref,()=>inputRef.current);React.useLayoutEffect(()=>{// Runs on unmount, fixes a bug in Safari that scrolls to the bottom\n// of the page when the input unmounts.\nreturn()=>{const inputElement=inputRef.current;if(!inputElement||inputElement!==document.activeElement)return;inputElement.blur();};},[]);const handleInputClick=()=>{if(inputRef.current){inputRef.current.focus();}};const handleClearClick=()=>{setInputValue(\"\");};useEffect(()=>{onChange(inputValue);},[inputValue]);const hasInputText=inputValue.length>0;const showClearButton=inputValue.length>0&&clearButtonType&&clearButtonType!==\"none\";const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);const searchIcon=iconType===\"custom\"&&theme.inputIconImage?/*#__PURE__*/_jsx(\"img\",{alt:\"icon alongside the Site Search input\",src:theme.inputIconImage.src,width:theme.inputIconSize,height:theme.inputIconSize,decoding:\"async\"}):/*#__PURE__*/_jsx(SearchIcon,{color:theme.inputIconColor,width:theme.inputIconSize,height:theme.inputIconSize});return /*#__PURE__*/_jsxs(\"div\",{role:\"search\",style:{...inputContainerStyle,fontFamily:getFontFamily(theme),paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,gap:12,paddingTop:verticalSpacing,paddingBottom:verticalSpacing,touchAction:\"none\"},onClick:handleInputClick,children:[/*#__PURE__*/_jsx(\"div\",{style:{flexShrink:0,display:\"flex\"},children:status===\"loading\"&&inputValue?/*#__PURE__*/_jsx(SpinnerIcon,{color:theme.inputIconColor,backgroundColor:theme.backgroundColor,style:{height:theme&&theme.inputIconSize,width:theme&&theme.inputIconSize}}):searchIcon}),/*#__PURE__*/_jsx(\"input\",{ref:inputRef,spellCheck:false,autoFocus:autofocus,style:{...inputStyle,WebkitTapHighlightColor:\"rgba(0,0,0,0)\",color:theme.foregroundColor,lineHeight:\"2em\",verticalAlign:\"baseline\",...theme.titleFont,...theme.inputFont,fontSize:theme.inputFontSize,// @ts-ignore\n\"--framer-search-placeholder-color\":theme.placeholderColor},onFocus:()=>{const scrollOffset=document.documentElement.scrollTop;document.documentElement.scrollTop=scrollOffset;},placeholder:placeholder,value:inputValue,onChange:()=>setInputValue(inputRef.current.value)}),showClearButton&&/*#__PURE__*/_jsx(ClearButton,{theme:theme,type:props.clearButtonType,text:props.clearButtonText,onClick:handleClearClick})]});});const inputContainerStyle={display:\"inline-flex\",alignItems:\"center\",flexShrink:0};const inputStyle={outline:\"none\",border:\"none\",background:\"transparent\",fontWeight:500,height:\"2em\",padding:0,width:\"100%\"};export const ResultRow=/*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function ResultRow(props,ref){const{index,result,prevMousePositionRef,type=\"contained\",subtitleType=\"path\",selected=false,theme,localeSlug,style,onMouseMove,onPointerDown,onNavigateTo}=props;const{url,title,score}=result;const urlPath=useMemo(()=>{return stripLocaleSlugFromPath(url,localeSlug);},[url,localeSlug]);const handleMouseMove=useCallbackOnMouseMove(event=>onMouseMove(event,index),prevMousePositionRef);const isContained=type===\"contained\";const borderRadius=isContained?clamp(0,Infinity,theme.borderRadius-theme.spacing):0;const subtitleText=subtitleType===\"path\"?urlPath:clampText(result.description,MAX_DESCRIPTION_LENGTH);const handleClick=event=>{event.preventDefault();onNavigateTo(result.url);};const focusTrap=event=>{event.preventDefault();};return /*#__PURE__*/_jsx(\"a\",{ref:ref,style:{textDecoration:\"none\"},href:result.url,onClick:handleClick,onMouseMove:handleMouseMove,onMouseDown:focusTrap,onPointerDown:event=>onPointerDown(event,index),children:/*#__PURE__*/_jsxs(\"li\",{style:{...resultContainer,...style,paddingTop:isContained?12:16,paddingBottom:isContained?12:16,color:theme.foregroundColor,position:\"relative\",paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing},children:[/*#__PURE__*/_jsx(\"div\",{style:{backgroundColor:theme.foregroundColor,position:\"absolute\",opacity:selected?.06:0,borderRadius,left:theme&&isContained?theme.spacing:0,right:theme&&isContained?theme.spacing:0,top:0,bottom:0}}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",overflow:\"hidden\",gap:4},children:[/*#__PURE__*/_jsx(\"h3\",{style:{...resultTitle,...theme.titleFont,lineHeight:\"1.4em\"},children:title}),/*#__PURE__*/_jsxs(\"p\",{style:{margin:0,color:theme.subtitleColor,...theme.subtitleFont,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",lineHeight:\"1.4em\"},children:[localStorageDebugFlag?score:\"\",\" \",subtitleText]})]})]},result.url)});}));/**\n * Flexible gap used inside a flexbox layout to push down the quick menu\n * by 20% of the screen height, but also allow it to collapse to zero if\n * there is not enough vertical room.\n */function QuickMenuSpacer({onClick}){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",flexBasis:\"20vh\"},onClick:onClick});}const layoutContainerStyle={display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"flex-start\",gap:15,overflow:\"visible\"};function LayoutContainer({layoutType,theme,onKeyDown,onDismiss,children,modalOptions}){const layoutStyles=getLayoutBaseStyles(layoutType,theme);const style={...layoutContainerStyle,...layoutStyles,willChange:\"transform\",marginTop:layoutType===\"FixedTop\"?theme.offsetTop:0,height:layoutType===\"Sidebar\"?\"100%\":\"auto\",maxHeight:layoutType===\"QuickMenu\"?\"100%\":\"none\",justifyContent:layoutType===\"Sidebar\"?\"flex-end\":\"flex-start\",flexDirection:layoutType===\"Sidebar\"?\"column-reverse\":\"column\"};const innerStyle={...layoutContainerStyle,...layoutStyles,height:layoutType===\"Sidebar\"?\"100%\":\"auto\",maxHeight:layoutType===\"QuickMenu\"?\"100%\":\"none\",gap:layoutType===\"Sidebar\"?0:theme.gapBetweenStatusAndSearch,backgroundColor:layoutType===\"Sidebar\"?theme.backgroundColor:\"transparent\",justifyContent:layoutType===\"Sidebar\"?\"flex-end\":\"flex-start\",flexDirection:layoutType===\"Sidebar\"?\"column-reverse\":\"column\",originX:.5,originY:.5};function getContainerAnimation(){switch(layoutType){case\"FixedTop\":{const key=animationKeyFromLayout(\"FixedTop\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{y:-10,opacity:.2,transition:{duration:Browser.isTouch()?0:.15}};}break;}case\"QuickMenu\":{const key=animationKeyFromLayout(\"QuickMenu\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{scale:.95,opacity:0,y:0,x:0,rotate:0,transition:{type:\"spring\",stiffness:600,damping:40}};}break;}case\"Sidebar\":{const key=animationKeyFromLayout(\"Sidebar\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{x:-10,opacity:0,transition:{duration:.15}};}break;}}}const containerAnimation=getContainerAnimation();return /*#__PURE__*/_jsxs(\"div\",{style:style,onKeyDown:onKeyDown,onClick:event=>event.stopPropagation(),children:[layoutType===\"QuickMenu\"&&/*#__PURE__*/_jsx(QuickMenuSpacer,{onClick:onDismiss}),/*#__PURE__*/_jsx(motion.div,{initial:containerAnimation,animate:{opacity:1,scale:1,x:0,y:0,rotate:0},transition:containerAnimation?containerAnimation.transition:undefined,exit:{opacity:0,transition:{duration:0}},style:innerStyle,children:children})]});}function ModalContainer({layoutType,theme,children,heightIsStatic,heightTransition,heightDeps}){const style={// This `willChange` is required to avoid weird rendering issues where\n// parts of the search window won't redraw, which we observed in Safari 16.4.\nwillChange:\"transform\",backgroundColor:theme.backgroundColor,color:theme.foregroundColor,borderRadius:layoutType===\"QuickMenu\"?theme.borderRadius:0,width:\"100%\",display:\"flex\",flexDirection:\"column\",overflow:\"hidden\",boxShadow:layoutType!==\"Sidebar\"?theme.shadow:undefined,maxHeight:layoutType===\"QuickMenu\"?`min(${MODAL_MAX_HEIGHT}px, calc(100vh - 30px))`:undefined};// Opt-in Height Animations for the Search Quick Actions menu.\n// These are disabled by default, but can be enabled via props.\nconst[scope,animate]=useAnimate();useLayoutEffect(()=>{if(layoutType!==\"QuickMenu\"||heightIsStatic)return;const prevHeight=scope.current.offsetHeight;scope.current.style.height=\"auto\";const height=scope.current.offsetHeight;scope.current.style.height=prevHeight+\"px\";animate(scope.current,{height:[prevHeight,height]},heightTransition);},heightDeps);return /*#__PURE__*/_jsx(\"div\",{ref:scope,role:\"dialog\",className:layoutType===\"FixedTop\"?\"__framer-max-height-80dvh\":undefined,style:style,children:children});}const ScrollView=/*#__PURE__*/React.forwardRef(function ScrollView({theme,children},ref){const isTouch=Browser.isTouch();const[canScroll,setCanScroll]=React.useState(true);React.useEffect(()=>{if(!isTouch)return;const element=ref.current;if(!element)return;setCanScroll(element.scrollHeight>element.clientHeight);});return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{width:`calc(100% + ${theme.scrollBarWidth}px)`,overflowY:\"scroll\",overflowX:\"hidden\",overscrollBehavior:\"contain\",touchAction:canScroll?undefined:\"none\",// Make the list appear slightly under the divider\n// so that the divider is still visible when the first\n// item is selected.\nmarginTop:-1},children:children});});const statusStyle={backgroundColor:\"#B5B5B5\",color:\"#FFF\",boxShadow:\"0px 20px 40px 0px rgba(0, 0, 0, 0.25)\",fontFamily:\"inherit\",textAlign:\"center\",fontSize:13,padding:\"8px 0\"};function StatusMessage({status,layoutType,theme}){const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);const style={...statusStyle,userSelect:\"none\",fontFamily:getFontFamily(theme),paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,fontWeight:500,lineHeight:`calc(${theme.inputFontSize} * 2)`,paddingTop:verticalSpacing,paddingBottom:verticalSpacing,...theme.titleFont,zIndex:theme.zIndex+1,maxWidth:layoutType===\"FixedTop\"?\"none\":theme.width,width:layoutType===\"FixedTop\"?`calc(100% - ${verticalSpacing*2}px`:\"100%\",boxShadow:layoutType!==\"Sidebar\"&&statusStyle.boxShadow,borderRadius:layoutType!==\"Sidebar\"&&theme.borderRadius};// Show less text on fixed text to look nicer on mobile\nconst previewInfoText=layoutType===\"FixedTop\"?\"Preview Mode\":\"Preview Mode. Publish your Site to Search.\";if(status===\"no-meta-tag-found\"){return /*#__PURE__*/_jsx(\"div\",{style:style,children:previewInfoText});}if(status===\"pending-index-generation\"){return /*#__PURE__*/_jsx(\"div\",{style:style,children:\"Site is being indexed\"});}return null;}const resultTitle={textOverflow:\"ellipsis\",maxWidth:\"100%\",overflow:\"hidden\",fontWeight:500,whiteSpace:\"nowrap\",flex:1,margin:0};const resultContainer={padding:\"16px 20px\",listStyle:\"none\",fontWeight:500};const sidebarStyles={left:0,width:500};const fixedTopStyles={top:0,width:\"100%\"};const quickMenuStyles={width:500};function getLayoutBaseStyles(layoutOption,theme){switch(layoutOption){case\"Sidebar\":return{...sidebarStyles,width:theme.width};case\"FixedTop\":return fixedTopStyles;case\"QuickMenu\":return{...quickMenuStyles,width:theme.width};}}export var SearchInputClearButtonType;(function(SearchInputClearButtonType){SearchInputClearButtonType[\"Icon\"]=\"icon\";SearchInputClearButtonType[\"Text\"]=\"text\";SearchInputClearButtonType[\"None\"]=\"none\";})(SearchInputClearButtonType||(SearchInputClearButtonType={}));export var SearchInputDividerType;(function(SearchInputDividerType){SearchInputDividerType[\"None\"]=\"none\";SearchInputDividerType[\"FullWidth\"]=\"fullWidth\";SearchInputDividerType[\"Contained\"]=\"contained\";})(SearchInputDividerType||(SearchInputDividerType={}));export var SearchResultTitleType;(function(SearchResultTitleType){SearchResultTitleType[\"H1\"]=\"h1\";SearchResultTitleType[\"Title\"]=\"title\";})(SearchResultTitleType||(SearchResultTitleType={}));export var SearchResultSubtitleType;(function(SearchResultSubtitleType){SearchResultSubtitleType[\"Description\"]=\"description\";SearchResultSubtitleType[\"Path\"]=\"path\";})(SearchResultSubtitleType||(SearchResultSubtitleType={}));export var SearchResultItemType;(function(SearchResultItemType){SearchResultItemType[\"FullWidth\"]=\"fullWidth\";SearchResultItemType[\"Contained\"]=\"contained\";})(SearchResultItemType||(SearchResultItemType={}));export var SearchLayoutType;(function(SearchLayoutType){SearchLayoutType[\"Sidebar\"]=\"Sidebar\";SearchLayoutType[\"FixedTop\"]=\"FixedTop\";SearchLayoutType[\"QuickMenu\"]=\"QuickMenu\";})(SearchLayoutType||(SearchLayoutType={}));export var SearchEntryType;(function(SearchEntryType){SearchEntryType[\"Icon\"]=\"icon\";SearchEntryType[\"Text\"]=\"text\";})(SearchEntryType||(SearchEntryType={}));export var SearchIconType;(function(SearchIconType){SearchIconType[\"Default\"]=\"default\";SearchIconType[\"Custom\"]=\"custom\";})(SearchIconType||(SearchIconType={}));/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export function SearchModal(props){const{layoutType,theme,urlScope,inputOptions,backdropOptions,modalOptions,resultOptions,onDismiss}=props;const{activeLocale}=useLocaleInfo();const localeId=activeLocale?.id;const localeSlug=activeLocale?.slug;const input=useRef();const selectedResultRow=useRef();const scrollView=useRef();const[selected,setSelected]=useState({index:0,scroll:true});const prevMousePositionRef=useRef(null);const[isKeyboardNavigationDisabled,setIsKeyboardNavigationDisabled]=useState(Browser.isTouch);const[query,setQuery]=useState(\"\");const deferredQuery=useDeferredValue(query);const{results,status}=useSearch(deferredQuery,{minimumScore:0,urlScope,titleType:resultOptions.titleType});const selectedResult=results[selected.index];const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);useEffect(()=>{// Reset the selection to the top if the query changes.\nsetSelected({index:0,scroll:true});},[deferredQuery]);const handleResultRowPointerDown=useCallback((event,index)=>{if(event.pointerType!==\"touch\")return;setIsKeyboardNavigationDisabled(true);setSelected({index,scroll:false});},[]);const handleResultRowMouseMove=useCallback((event,index)=>{setSelected(previousSelected=>{if(previousSelected.index===index){return previousSelected;}return{index,scroll:false};});},[]);const router=useRouter();const navigateTo=useCallback(async url=>{if(status===\"no-meta-tag-found\"){return;}try{// Ideally, we would directly expose `routeId` in the search index so that\n// we don't need to infer it from the URL.\nconst{routeId,pathVariables}=inferInitialRouteFromPath(router.routes,url);const route=router.getRoute?.(routeId);onDismiss();await route?.page?.preload?.();router.navigate?.(routeId,null,pathVariables,false);}catch(error){window.location.href=url;}},[status]);const handleKeyDown=event=>{const maxIndex=results.length-1;switch(event.code){case\"ArrowUp\":event.preventDefault();if(isKeyboardNavigationDisabled){setIsKeyboardNavigationDisabled(false);break;}setSelected(previousSelected=>({index:clamp(0,maxIndex,previousSelected.index-1),scroll:true}));break;case\"ArrowDown\":event.preventDefault();if(isKeyboardNavigationDisabled){setIsKeyboardNavigationDisabled(false);break;}setSelected(previousSelected=>({index:clamp(0,maxIndex,previousSelected.index+1),scroll:true}));break;case\"Escape\":break;case\"Enter\":if(selectedResult){navigateTo(selectedResult.url);}break;default:event.stopPropagation();}};const showNoResults=results.length===0&&deferredQuery.length>1&&status!==\"loading\";const showDivider=Boolean((deferredQuery.length>0&&results.length>0||showNoResults)&&status!==\"loading\"&&props.inputOptions&&props.inputOptions.dividerType!==\"none\");const isItemContained=Boolean(props.resultOptions&&props.resultOptions.itemType===\"contained\");const spacing=isItemContained?theme.spacing:10;const listPaddingTop=showDivider&&isItemContained?spacing+theme.gapBetweenResults*2:0;useEffect(()=>{if(!selected.scroll)return;const element=selectedResultRow.current;if(!element)return;scrollIntoView(element,scrollView.current,{offsetTop:showDivider&&isItemContained?listPaddingTop:0,offsetBottom:isItemContained?spacing:0});// `showDivider` and `isItemContained` are not dependencies because\n// they will be the latest values when `selected` changes. And including\n// them will cause unnecessary scrolling into view.\n},[selected]);return /*#__PURE__*/_jsxs(LayoutContainer,{layoutType:layoutType,modalOptions:modalOptions,theme:theme,onKeyDown:handleKeyDown,onDismiss:onDismiss,children:[/*#__PURE__*/_jsxs(ModalContainer,{layoutType:layoutType,theme:theme,heightIsStatic:modalOptions.heightIsStatic,heightTransition:modalOptions.heightTransition,heightDeps:[results.length,showNoResults],children:[/*#__PURE__*/_jsx(Input,{autofocus:true,ref:input,onChange:setQuery,value:query,theme:theme,status:status,iconType:inputOptions.iconOptions.iconType,placeholder:inputOptions.placeholderOptions.placeholderText,clearButtonType:inputOptions?inputOptions.clearButtonType:undefined,clearButtonText:inputOptions.clearButtonText}),showDivider&&/*#__PURE__*/_jsx(Divider,{theme:theme,type:inputOptions.dividerType}),/*#__PURE__*/_jsx(ScrollView,{ref:scrollView,theme:theme,children:/*#__PURE__*/_jsxs(\"ul\",{\"aria-live\":\"polite\",style:{display:\"flex\",flexDirection:\"column\",width:`calc(100% - ${theme.scrollBarWidth}px)`,padding:0,paddingTop:listPaddingTop,paddingBottom:results.length&&isItemContained?spacing:0,gap:theme.gapBetweenResults,margin:0},children:[results.map((result,index)=>{const isSelected=index===selected.index;return /*#__PURE__*/_jsx(ResultRow,{ref:isSelected?selectedResultRow:null,index:index,result:result,prevMousePositionRef:prevMousePositionRef,selected:!isKeyboardNavigationDisabled&&isSelected,type:props.resultOptions.itemType,subtitleType:props.resultOptions.subtitleOptions.subtitleType,theme:theme,localeSlug:localeSlug,onMouseMove:handleResultRowMouseMove,onPointerDown:handleResultRowPointerDown,onNavigateTo:navigateTo},result.url);}),showNoResults&&/*#__PURE__*/_jsx(\"li\",{style:{paddingTop:verticalSpacing-listPaddingTop,paddingBottom:verticalSpacing,lineHeight:\"2em\",paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,height:\"Sidebar\"?\"100%\":\"auto\"},children:/*#__PURE__*/_jsx(\"h3\",{style:{...resultTitle,textAlign:\"center\",lineHeight:`calc(${theme.inputFontSize} * 2)`,color:theme.subtitleColor,...theme.titleFont},children:\"No results\"})})]})})]}),/*#__PURE__*/_jsx(StatusMessage,{status:status,layoutType:layoutType,theme:theme})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"ResultRow\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultTitleType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultItemType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchLayoutType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchInputDividerType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchTheme\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultSubtitleType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchModal\":{\"type\":\"reactComponent\",\"name\":\"SearchModal\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"SearchIconType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Input\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchEntryType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchInputClearButtonType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-ignore\nimport{useLocaleInfo}from\"framer\";import{clamp}from\"framer-motion\";import{useEffect,useState,useTransition}from\"react\";import{SearchResultTitleType}from\"https://framerusercontent.com/modules/tV9haTHllpHHc9Fjue2H/wgITiHCOZBBo33pin0wW/SearchModal.js\";import{getCachedIndex,isDefaultLocaleId,setCachedIndex}from\"https://framerusercontent.com/modules/uU1mtMKXsrVAg8N5hW7w/v7gDLwKJgQ5vAsFHxY4H/cachedIndex.js\";import{fakeResults}from\"https://framerusercontent.com/modules/K9JZRwJcE6slDAf8rUmh/mJ54py1Ecnn1RoC4N1m4/fakeResults.js\";import{distance}from\"https://framerusercontent.com/modules/TwRgbWuhHeB95MPifel4/YW8Hlm59FG3PajbrVsaR/fuzzySearch.js\";import{createLogger,localStorageDebugFlag,safeDocument,safeWindow,stripLocaleSlugFromPath,yieldToMain}from\"https://framerusercontent.com/modules/MWsEnYfRnoOQq31DN4ql/fxR5MNtgeSOU8Mj4iY9n/utils.js\";const{log,time,timeEnd}=createLogger(localStorageDebugFlag);const splitWordsRegex=(()=>{try{// Regex lookbehind is used to ignore ampersands when splitting\n// words. For example \"H&M\" will not be split and is considered as\n// one word, but \"H & M\" will be split.\n// However, some browsers (like Safari iOS 15) don't support\n// lookbehind and will crash. When it's not supported, fallback to\n// a safer regex that always splits ampersands.\nconst regex=RegExp(\"[\\\\s.,;!?\\\\p{P}\\\\p{Z}]+(?<!\\\\p{L}&)(?!&\\\\p{L})\",\"u\");\"\".split(regex);return regex;}catch{log(\"Falling back to regex without lookbehind\");return RegExp(\"[\\\\s.,;!?\\\\p{P}\\\\p{Z}]+\",\"u\");}})();function splitWords(text){return text.split(splitWordsRegex);}function getUniqueWords(str){const words=splitWords(str).filter(word=>word.trim()&&word.length>0);return new Set(words);}const normalizeRegex=/[\\u0300-\\u036f]/g;/**\n * Replace accented characters with equivilant non-accented versions and\n * make everything lowercase.\n */function getNormalizedString(text){if(Array.isArray(text)){return text.map(getNormalizedString);}return text.normalize(\"NFD\")// From: https://stackoverflow.com/a/37511463\n.replace(normalizeRegex,\"\").toLowerCase();}const normalizedItemCache=new WeakMap;function getNormalizedItemFromCache(item){const cached=normalizedItemCache.get(item);if(cached)return cached;const normalizedItem=getNormalizedItem(item);normalizedItemCache.set(item,normalizedItem);return normalizedItem;}function getNormalizedItem(item){const normalizedItem={};for(const key in item){if(item.hasOwnProperty(key)){const value=item[key];if(typeof value===\"string\"){normalizedItem[key]=getNormalizedString(value);continue;}if(Array.isArray(value)){normalizedItem[key]=getNormalizedString(value);continue;}normalizedItem[key]=value;}}return normalizedItem;}function getMatchRange(currentRange,start,end){const result={...currentRange};if(start<result.start){result.start=start;}if(end>result.end){result.end=end;}return result;}/**\n * Score index item based on the contents of it's fields such as title, description, headings etc.\n *\n * Note that this does not normalize the item or query. Normalization is expected to happen\n * before passing the data into this.\n */function getScoreForSearchIndexItem(item,query,words,fullQuery){let score=0;const match={title:{start:Infinity,end:0},description:{start:Infinity,end:0}};const urlWords=getUniqueWords(item.url);// Match query based on words in the URL so that random strings inside\n// other strings are not matched.\nif(urlWords.has(query)){score+=10;}// Really boost single word queries that match single word URLs.\nif(words.size===1&&urlWords.size===1&&urlWords.values().next().value===query){score+=score*5;}// Score shorter URLs higher so `/pricing` is before `/lala/pricing`.\nif(score>0){const splitLength=item.url.split(\"/\").length;score+=clamp(10-splitLength,0,splitLength);}const titleWords=getUniqueWords(item.title);// Prefer full word matches in the title.\nif(titleWords.has(query)){score+=10;}const titleIndex=item.title.indexOf(query);if(titleIndex!==-1){score+=10;// TODO: Matches are currently not used, but they can be used in the\n// future to add text highlighting.\nmatch.title=getMatchRange(match.title,titleIndex,titleIndex+query.length);}// If the full query is close to being the heading, score this highly as\n// the user is most likely looking for that exact title.\nif(distance(item.title,fullQuery)<=2){score+=score*10;}// Fuzzy match full words in the title.\nfor(const titleWord of titleWords){const distanceScore=distance(query,titleWord);// Small distance score helps with small typos.\nif(distanceScore<=2){score+=10;}}const headings=[...item.h1,...item.h2,...item.h3,...item.h4,...item.h5,...item.h6];for(const heading of headings){const headingWords=getUniqueWords(heading);// If the full query is close to being the heading, score this highly as\n// the user is most likely looking for that exact title.\nif(distance(heading,fullQuery)<=2){score+=score*10;}// Bias headings that start with the query as this helps when\n// you know the title you are searching for.\nif(heading.startsWith(query)){score+=10;}if(headingWords.has(query)){score+=10;}if(heading.includes(query)){score+=1;}// Fuzzy match full words in headings.\nfor(const headingWord of headingWords){const distanceScore=distance(query,headingWord);if(distanceScore<=2){score+=1;}}}const descriptionIndex=item.description.indexOf(query);if(descriptionIndex!==-1){score+=10;match.description=getMatchRange(match.description,descriptionIndex,descriptionIndex+query.length);}for(const p of item.p){if(p.includes(query)){score+=.5;}}for(const codeblock of item.codeblock){// If the full query is close to being the codeblock, score this highly as\n// the user is most likely looking for that exact code.\nif(distance(codeblock,fullQuery)<=2){score*=10;}if(codeblock.includes(fullQuery)){score+=10;}if(codeblock.includes(query)){score+=.5;}}return{score,match};}function getSearchIndexItemScore(item,normalizedQuery){const normalizedItem=getNormalizedItemFromCache(item);const queryWords=getUniqueWords(normalizedQuery);let total=0;for(const queryWord of queryWords){const{score}=getScoreForSearchIndexItem(normalizedItem,queryWord,queryWords,normalizedQuery);total+=score;}return total;}function useRawSearch(index,query,settings){const[results,setResults]=useState(null);const[,startTransition]=useTransition();useEffect(()=>{const abortController=new AbortController;executeRawSearch(index,query,settings,abortController.signal).then(res=>{if(!abortController.signal.aborted){startTransition(()=>{setResults(res);});}}).catch(err=>{if(err.name!==\"AbortError\"){console.error(\"Search failed:\",err);}});return()=>{abortController.abort();};},[index,query]);return{results:results??[]};}const QUANTUM=32// ms, 2*16ms (2 frames on 60 hz)\n;async function executeRawSearch(index,query,settings,signal){const path=safeWindow?.location.pathname;time(\"query\");const normalizedQuery=getNormalizedString(query);const results=[];const items=Object.values(index);let deadline=performance.now()+QUANTUM;async function yieldToMainIfNecessary(){if(performance.now()>=deadline){await yieldToMain();deadline=performance.now()+QUANTUM;}}for(let i=0;i<items.length;++i){if(performance.now()>=deadline){await yieldToMainIfNecessary();deadline=performance.now()+QUANTUM;}if(signal?.aborted)return[];const item=items[i];const score=getSearchIndexItemScore(item,normalizedQuery);if(score>(settings.minimumScore||0)&&(!path||item.url!==path)){const heading=item.h1.length&&item.h1[0];const title=settings?.titleType===SearchResultTitleType.Title?item.title:heading?heading:item.title;// Convert index item to result item.\nresults.push({url:item.url,title,description:item.description,body:[...item.p,item.codeblock].join(\" \"),score});}}await yieldToMainIfNecessary();if(signal?.aborted)return[];const sorted=results.sort((itemA,itemB)=>itemB.score-itemA.score);timeEnd(\"query\");await yieldToMainIfNecessary();if(signal?.aborted)return[];return results.slice(0,20);}function getIndexedScopedToUrl(index,rawUrlScope,localeSlug){const scopedIndex={};const baseScopeUrlHasVariable=rawUrlScope.includes(\":\");const urlUpToPathVariable=rawUrlScope.split(\":\")[0];const urlScope=urlUpToPathVariable.length>1?urlUpToPathVariable:\"\";for(const url in index){const strippedURL=stripLocaleSlugFromPath(url,localeSlug);if(!strippedURL.startsWith(urlScope)){continue;}if(baseScopeUrlHasVariable&&url.length<=urlScope.length){continue;}scopedIndex[url]=index[url];}return scopedIndex;}export function useSearch(query,settings){const[searchIndex,_setSearchIndex]=useState({});const[status,setStatus]=useState(\"loading\");const{results}=useRawSearch(searchIndex,query,settings);const{activeLocale}=useLocaleInfo();const localeId=activeLocale?.id;// Seperate setter function so that the URL scope is always applied\n// to indexes loaded from either the cache or network.\nfunction setSearchIndex(index,options={ignoreScope:false}){let scopedIndex=index;if(settings.urlScope&&!options.ignoreScope){scopedIndex=getIndexedScopedToUrl(index,settings.urlScope,activeLocale?.slug);log(\"Using URL scope\",settings.urlScope);}_setSearchIndex(scopedIndex);}useEffect(()=>{async function loadSearchIndex(){setStatus(\"loading\");const baseUrl=getBaseUrl(\"framer-search-index\");if(!baseUrl){setStatus(\"no-meta-tag-found\");setSearchIndex(fakeResults,{ignoreScope:true});log(\"No meta tag found\");return;}const cacheResult=await getCachedIndex(localeId,baseUrl);if(cacheResult.status===\"fresh\"){setSearchIndex(cacheResult.searchIndex);setStatus(\"success\");log(\"Using fresh cached index\");return;}if(cacheResult.status===\"stale\"){setSearchIndex(cacheResult.searchIndex);setStatus(\"loading-with-cache\");log(\"Using stale cached index while loading a fresh one\");}const searchIndexUrl=getSearchIndexUrl(baseUrl,localeId);const response=await fetch(searchIndexUrl);if(response.ok){const downloadedIndex=await response.json();setSearchIndex(downloadedIndex);setCachedIndex(localeId,downloadedIndex,baseUrl);setStatus(\"success\");log(\"Using downloaded index\");return;}// Our \"sites\" CDN currently returns 403s for missing files.\nconst isNotFound=response.status===403||response.status===404;if(!isNotFound){throw new Error(response.statusText);}// Index is likely still being generated.\nlog(\"Index not found\");const fallbackBaseUrl=getBaseUrl(\"framer-search-index-fallback\");if(!fallbackBaseUrl){if(cacheResult.status===\"miss\"){setStatus(\"pending-index-generation\");log(\"No fallback, no cache\");}else{log(\"No fallback, using cache\");}return;}// If we're here, cache is missing or stale. If it's stale but it's our fallback index, we can use it.\nif(cacheResult.status===\"stale\"&&cacheResult.indexHash===fallbackBaseUrl){setStatus(\"success\");log(\"Using cached fallback index\");return;}const fallbackSearchIndexUrl=getSearchIndexUrl(fallbackBaseUrl,localeId);const fallbackResponse=await fetch(fallbackSearchIndexUrl);if(fallbackResponse.ok){const downloadedIndex=await fallbackResponse.json();setSearchIndex(downloadedIndex);setCachedIndex(localeId,downloadedIndex,fallbackBaseUrl);setStatus(\"success\");log(\"Using downloaded fallback index\");return;}if(cacheResult.status===\"miss\"){setStatus(\"pending-index-generation\");log(\"Fallback failed, no cache\");}else{log(\"Fallback failed, using cache\");}}loadSearchIndex().catch(error=>{// TODO: Check for error type here. If it's a network error,\n// we could do a few retries.\nsetStatus(\"error\");log(\"Failed to load search index\",error);});},[localeId]);log({status,results});return{results,status};}function getBaseUrl(name){return safeDocument?.querySelector(`meta[name=\"${name}\"]`)?.getAttribute(\"content\");}function getSearchIndexUrl(baseURL,localeId){if(isDefaultLocaleId(localeId))return baseURL;return baseURL.replace(\".json\",`-${localeId}.json`);}\nexport const __FramerMetadata__ = {\"exports\":{\"SearchIndex\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useSearch\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./useSearch.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useSearch}from\"https://framerusercontent.com/modules/MyBp84Z0p9nUcMimVMnY/G59GwobMNJqwSjtPO6Pv/useSearch.js\";import React,{useEffect,useState,useMemo,forwardRef,useRef,useDeferredValue,useLayoutEffect,useCallback,useImperativeHandle}from\"react\";import{Browser}from\"https://framerusercontent.com/modules/PJVBcBLmDteTEAZh3J9Z/keXJyjyE9VnzUcDMayjg/browser.js\";import{motion,clamp,useAnimate}from\"framer-motion\";import{SearchIcon,ClearIcon,SpinnerIcon}from\"https://framerusercontent.com/modules/LV9trClbmNwd5PVj9l8y/L4rFqMGNzGSwRZpGTGF3/Icons.js\";import{clampText,getFontFamily,localStorageDebugFlag,animationKeyFromLayout,stripLocaleSlugFromPath}from\"https://framerusercontent.com/modules/MWsEnYfRnoOQq31DN4ql/fxR5MNtgeSOU8Mj4iY9n/utils.js\";import{useCallbackOnMouseMove}from\"https://framerusercontent.com/modules/Gzef0nFihI9m9vZG45th/lIUxbZcreiDm2GzUkt3y/useCallbackOnMouseMove.js\";import{scrollIntoView}from\"https://framerusercontent.com/modules/eAnjm75CdfYT1Zz4BIaz/7KDSfnnyD1T3Ap75L4m8/scrollIntoView.js\";import{useLocaleInfo,// @ts-expect-error Internal API\nuseRouter,// @ts-expect-error Internal API\ninferInitialRouteFromPath}from\"framer\";const MAX_DESCRIPTION_LENGTH=120;const MODAL_MAX_HEIGHT=496;const VERTICAL_SPACING_MULTIPLIER=.6;function ClearButton({theme,type,onClick,text}){const shouldDisplayIcon=type===\"icon\";const iconOrText=shouldDisplayIcon?/*#__PURE__*/_jsx(ClearIcon,{style:{color:theme.inputIconColor,width:theme.inputIconSize,height:theme.inputIconSize}}):text;return /*#__PURE__*/_jsx(\"div\",{style:{flexShrink:0,fontSize:theme&&theme.titleFont&&theme.titleFont.fontSize?theme.titleFont.fontSize:15},children:/*#__PURE__*/_jsx(\"button\",{className:\"__framer-search-clear-button\",onClick:onClick,style:{fontFamily:\"inherit\",border:\"none\",background:\"none\",cursor:\"pointer\",display:\"flex\",textTransform:\"uppercase\",color:theme.inputIconColor,fontSize:\"0.75em\",padding:0},children:iconOrText})});}function Divider({theme,type}){const styles={background:theme.foregroundColor,height:1,flexShrink:0,opacity:.05};if(type===\"contained\"&&theme){styles.marginLeft=theme.horizontalSpacing;styles.marginRight=theme.horizontalSpacing;}return /*#__PURE__*/_jsx(\"div\",{style:styles});}export const Input=/*#__PURE__*/forwardRef(function Input(props,ref){const{value=\"\",status,autofocus,theme,placeholder,iconType,clearButtonType,onChange}=props;const[inputValue,setInputValue]=useState(value);const[isFocused,setIsFocused]=useState(false);const inputRef=useRef();useImperativeHandle(ref,()=>inputRef.current);React.useLayoutEffect(()=>{// Runs on unmount, fixes a bug in Safari that scrolls to the bottom\n// of the page when the input unmounts.\nreturn()=>{const inputElement=inputRef.current;if(!inputElement||inputElement!==document.activeElement)return;inputElement.blur();};},[]);const handleInputClick=()=>{if(inputRef.current){inputRef.current.focus();}};const handleClearClick=()=>{setInputValue(\"\");};useEffect(()=>{onChange(inputValue);},[inputValue]);const hasInputText=inputValue.length>0;const showClearButton=inputValue.length>0&&clearButtonType&&clearButtonType!==\"none\";const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);const searchIcon=iconType===\"custom\"&&theme.inputIconImage?/*#__PURE__*/_jsx(\"img\",{alt:\"icon alongside the Site Search input\",src:theme.inputIconImage.src,width:theme.inputIconSize,height:theme.inputIconSize,decoding:\"async\"}):/*#__PURE__*/_jsx(SearchIcon,{color:theme.inputIconColor,width:theme.inputIconSize,height:theme.inputIconSize});return /*#__PURE__*/_jsxs(\"div\",{role:\"search\",style:{...inputContainerStyle,fontFamily:getFontFamily(theme),paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,gap:12,paddingTop:verticalSpacing,paddingBottom:verticalSpacing,touchAction:\"none\"},onClick:handleInputClick,children:[/*#__PURE__*/_jsx(\"div\",{style:{flexShrink:0,display:\"flex\"},children:status===\"loading\"&&inputValue?/*#__PURE__*/_jsx(SpinnerIcon,{color:theme.inputIconColor,backgroundColor:theme.backgroundColor,style:{height:theme&&theme.inputIconSize,width:theme&&theme.inputIconSize}}):searchIcon}),/*#__PURE__*/_jsx(\"input\",{ref:inputRef,spellCheck:false,autoFocus:autofocus,style:{...inputStyle,WebkitTapHighlightColor:\"rgba(0,0,0,0)\",color:theme.foregroundColor,lineHeight:\"2em\",verticalAlign:\"baseline\",...theme.titleFont,...theme.inputFont,fontSize:theme.inputFontSize,// @ts-ignore\n\"--framer-search-placeholder-color\":theme.placeholderColor},onFocus:()=>{const scrollOffset=document.documentElement.scrollTop;document.documentElement.scrollTop=scrollOffset;},placeholder:placeholder,value:inputValue,onChange:()=>setInputValue(inputRef.current.value)}),showClearButton&&/*#__PURE__*/_jsx(ClearButton,{theme:theme,type:props.clearButtonType,text:props.clearButtonText,onClick:handleClearClick})]});});const inputContainerStyle={display:\"inline-flex\",alignItems:\"center\",flexShrink:0};const inputStyle={outline:\"none\",border:\"none\",background:\"transparent\",fontWeight:500,height:\"2em\",padding:0,width:\"100%\"};export const ResultRow=/*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function ResultRow(props,ref){const{index,result,prevMousePositionRef,type=\"contained\",subtitleType=\"path\",selected=false,theme,localeSlug,style,onMouseMove,onPointerDown,onNavigateTo}=props;const{url,title,score}=result;const urlPath=useMemo(()=>{return stripLocaleSlugFromPath(url,localeSlug);},[url,localeSlug]);const handleMouseMove=useCallbackOnMouseMove(event=>onMouseMove(event,index),prevMousePositionRef);const isContained=type===\"contained\";const borderRadius=isContained?clamp(0,Infinity,theme.borderRadius-theme.spacing):0;const subtitleText=subtitleType===\"path\"?urlPath:clampText(result.description,MAX_DESCRIPTION_LENGTH);const handleClick=event=>{event.preventDefault();onNavigateTo(result.url);};const focusTrap=event=>{event.preventDefault();};return /*#__PURE__*/_jsx(\"a\",{ref:ref,style:{textDecoration:\"none\"},href:result.url,onClick:handleClick,onMouseMove:handleMouseMove,onMouseDown:focusTrap,onPointerDown:event=>onPointerDown(event,index),children:/*#__PURE__*/_jsxs(\"li\",{style:{...resultContainer,...style,paddingTop:isContained?12:16,paddingBottom:isContained?12:16,color:theme.foregroundColor,position:\"relative\",paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing},children:[/*#__PURE__*/_jsx(\"div\",{style:{backgroundColor:theme.foregroundColor,position:\"absolute\",opacity:selected?.06:0,borderRadius,left:theme&&isContained?theme.spacing:0,right:theme&&isContained?theme.spacing:0,top:0,bottom:0}}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",overflow:\"hidden\",gap:4},children:[/*#__PURE__*/_jsx(\"h3\",{style:{...resultTitle,...theme.titleFont,lineHeight:\"1.4em\"},children:title}),/*#__PURE__*/_jsxs(\"p\",{style:{margin:0,color:theme.subtitleColor,...theme.subtitleFont,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",lineHeight:\"1.4em\"},children:[localStorageDebugFlag?score:\"\",\" \",subtitleText]})]})]},result.url)});}));/**\n * Flexible gap used inside a flexbox layout to push down the quick menu\n * by 20% of the screen height, but also allow it to collapse to zero if\n * there is not enough vertical room.\n */function QuickMenuSpacer({onClick}){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",flexBasis:\"20vh\"},onClick:onClick});}const layoutContainerStyle={display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"flex-start\",gap:15,overflow:\"visible\"};function LayoutContainer({layoutType,theme,onKeyDown,onDismiss,children,modalOptions}){const layoutStyles=getLayoutBaseStyles(layoutType,theme);const style={...layoutContainerStyle,...layoutStyles,willChange:\"transform\",marginTop:layoutType===\"FixedTop\"?theme.offsetTop:0,height:layoutType===\"Sidebar\"?\"100%\":\"auto\",maxHeight:layoutType===\"QuickMenu\"?\"100%\":\"none\",justifyContent:layoutType===\"Sidebar\"?\"flex-end\":\"flex-start\",flexDirection:layoutType===\"Sidebar\"?\"column-reverse\":\"column\"};const innerStyle={...layoutContainerStyle,...layoutStyles,height:layoutType===\"Sidebar\"?\"100%\":\"auto\",maxHeight:layoutType===\"QuickMenu\"?\"100%\":\"none\",gap:layoutType===\"Sidebar\"?0:theme.gapBetweenStatusAndSearch,backgroundColor:layoutType===\"Sidebar\"?theme.backgroundColor:\"transparent\",justifyContent:layoutType===\"Sidebar\"?\"flex-end\":\"flex-start\",flexDirection:layoutType===\"Sidebar\"?\"column-reverse\":\"column\",originX:.5,originY:.5};function getContainerAnimation(){switch(layoutType){case\"FixedTop\":{const key=animationKeyFromLayout(\"FixedTop\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{y:-10,opacity:.2,transition:{duration:Browser.isTouch()?0:.15}};}break;}case\"QuickMenu\":{const key=animationKeyFromLayout(\"QuickMenu\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{scale:.95,opacity:0,y:0,x:0,rotate:0,transition:{type:\"spring\",stiffness:600,damping:40}};}break;}case\"Sidebar\":{const key=animationKeyFromLayout(\"Sidebar\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{x:-10,opacity:0,transition:{duration:.15}};}break;}}}const containerAnimation=getContainerAnimation();return /*#__PURE__*/_jsxs(\"div\",{style:style,onKeyDown:onKeyDown,onClick:event=>event.stopPropagation(),children:[layoutType===\"QuickMenu\"&&/*#__PURE__*/_jsx(QuickMenuSpacer,{onClick:onDismiss}),/*#__PURE__*/_jsx(motion.div,{initial:containerAnimation,animate:{opacity:1,scale:1,x:0,y:0,rotate:0},transition:containerAnimation?containerAnimation.transition:undefined,exit:{opacity:0,transition:{duration:0}},style:innerStyle,children:children})]});}function ModalContainer({layoutType,theme,children,heightIsStatic,heightTransition,heightDeps}){const style={// This `willChange` is required to avoid weird rendering issues where\n// parts of the search window won't redraw, which we observed in Safari 16.4.\nwillChange:\"transform\",backgroundColor:theme.backgroundColor,color:theme.foregroundColor,borderRadius:layoutType===\"QuickMenu\"?theme.borderRadius:0,width:\"100%\",display:\"flex\",flexDirection:\"column\",overflow:\"hidden\",boxShadow:layoutType!==\"Sidebar\"?theme.shadow:undefined,maxHeight:layoutType===\"QuickMenu\"?`min(${MODAL_MAX_HEIGHT}px, calc(100vh - 30px))`:undefined};// Opt-in Height Animations for the Search Quick Actions menu.\n// These are disabled by default, but can be enabled via props.\nconst[scope,animate]=useAnimate();useLayoutEffect(()=>{if(layoutType!==\"QuickMenu\"||heightIsStatic)return;const prevHeight=scope.current.offsetHeight;scope.current.style.height=\"auto\";const height=scope.current.offsetHeight;scope.current.style.height=prevHeight+\"px\";animate(scope.current,{height:[prevHeight,height]},heightTransition);},heightDeps);return /*#__PURE__*/_jsx(\"div\",{ref:scope,role:\"dialog\",className:layoutType===\"FixedTop\"?\"__framer-max-height-80dvh\":undefined,style:style,children:children});}const ScrollView=/*#__PURE__*/React.forwardRef(function ScrollView({theme,children},ref){const isTouch=Browser.isTouch();const[canScroll,setCanScroll]=React.useState(true);React.useEffect(()=>{if(!isTouch)return;const element=ref.current;if(!element)return;setCanScroll(element.scrollHeight>element.clientHeight);});return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{width:`calc(100% + ${theme.scrollBarWidth}px)`,overflowY:\"scroll\",overflowX:\"hidden\",overscrollBehavior:\"contain\",touchAction:canScroll?undefined:\"none\",// Make the list appear slightly under the divider\n// so that the divider is still visible when the first\n// item is selected.\nmarginTop:-1},children:children});});const statusStyle={backgroundColor:\"#B5B5B5\",color:\"#FFF\",boxShadow:\"0px 20px 40px 0px rgba(0, 0, 0, 0.25)\",fontFamily:\"inherit\",textAlign:\"center\",fontSize:13,padding:\"8px 0\"};function StatusMessage({status,layoutType,theme}){const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);const style={...statusStyle,userSelect:\"none\",fontFamily:getFontFamily(theme),paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,fontWeight:500,lineHeight:`calc(${theme.inputFontSize} * 2)`,paddingTop:verticalSpacing,paddingBottom:verticalSpacing,...theme.titleFont,zIndex:theme.zIndex+1,maxWidth:layoutType===\"FixedTop\"?\"none\":theme.width,width:layoutType===\"FixedTop\"?`calc(100% - ${verticalSpacing*2}px`:\"100%\",boxShadow:layoutType!==\"Sidebar\"&&statusStyle.boxShadow,borderRadius:layoutType!==\"Sidebar\"&&theme.borderRadius};// Show less text on fixed text to look nicer on mobile\nconst previewInfoText=layoutType===\"FixedTop\"?\"Preview Mode\":\"Preview Mode. Publish your Site to Search.\";if(status===\"no-meta-tag-found\"){return /*#__PURE__*/_jsx(\"div\",{style:style,children:previewInfoText});}if(status===\"pending-index-generation\"){return /*#__PURE__*/_jsx(\"div\",{style:style,children:\"Site is being indexed\"});}return null;}const resultTitle={textOverflow:\"ellipsis\",maxWidth:\"100%\",overflow:\"hidden\",fontWeight:500,whiteSpace:\"nowrap\",flex:1,margin:0};const resultContainer={padding:\"16px 20px\",listStyle:\"none\",fontWeight:500};const sidebarStyles={left:0,width:500};const fixedTopStyles={top:0,width:\"100%\"};const quickMenuStyles={width:500};function getLayoutBaseStyles(layoutOption,theme){switch(layoutOption){case\"Sidebar\":return{...sidebarStyles,width:theme.width};case\"FixedTop\":return fixedTopStyles;case\"QuickMenu\":return{...quickMenuStyles,width:theme.width};}}export var SearchInputClearButtonType;(function(SearchInputClearButtonType){SearchInputClearButtonType[\"Icon\"]=\"icon\";SearchInputClearButtonType[\"Text\"]=\"text\";SearchInputClearButtonType[\"None\"]=\"none\";})(SearchInputClearButtonType||(SearchInputClearButtonType={}));export var SearchInputDividerType;(function(SearchInputDividerType){SearchInputDividerType[\"None\"]=\"none\";SearchInputDividerType[\"FullWidth\"]=\"fullWidth\";SearchInputDividerType[\"Contained\"]=\"contained\";})(SearchInputDividerType||(SearchInputDividerType={}));export var SearchResultTitleType;(function(SearchResultTitleType){SearchResultTitleType[\"H1\"]=\"h1\";SearchResultTitleType[\"Title\"]=\"title\";})(SearchResultTitleType||(SearchResultTitleType={}));export var SearchResultSubtitleType;(function(SearchResultSubtitleType){SearchResultSubtitleType[\"Description\"]=\"description\";SearchResultSubtitleType[\"Path\"]=\"path\";})(SearchResultSubtitleType||(SearchResultSubtitleType={}));export var SearchResultItemType;(function(SearchResultItemType){SearchResultItemType[\"FullWidth\"]=\"fullWidth\";SearchResultItemType[\"Contained\"]=\"contained\";})(SearchResultItemType||(SearchResultItemType={}));export var SearchLayoutType;(function(SearchLayoutType){SearchLayoutType[\"Sidebar\"]=\"Sidebar\";SearchLayoutType[\"FixedTop\"]=\"FixedTop\";SearchLayoutType[\"QuickMenu\"]=\"QuickMenu\";})(SearchLayoutType||(SearchLayoutType={}));export var SearchEntryType;(function(SearchEntryType){SearchEntryType[\"Icon\"]=\"icon\";SearchEntryType[\"Text\"]=\"text\";})(SearchEntryType||(SearchEntryType={}));export var SearchIconType;(function(SearchIconType){SearchIconType[\"Default\"]=\"default\";SearchIconType[\"Custom\"]=\"custom\";})(SearchIconType||(SearchIconType={}));/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export function SearchModal(props){const{layoutType,theme,urlScope,inputOptions,backdropOptions,modalOptions,resultOptions,onDismiss}=props;const{activeLocale}=useLocaleInfo();const localeId=activeLocale?.id;const localeSlug=activeLocale?.slug;const input=useRef();const selectedResultRow=useRef();const scrollView=useRef();const[selected,setSelected]=useState({index:0,scroll:true});const prevMousePositionRef=useRef(null);const[isKeyboardNavigationDisabled,setIsKeyboardNavigationDisabled]=useState(Browser.isTouch);const[query,setQuery]=useState(\"\");const deferredQuery=useDeferredValue(query);const{results,status}=useSearch(deferredQuery,{minimumScore:0,urlScope,titleType:resultOptions.titleType});const selectedResult=results[selected.index];const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);useEffect(()=>{// Reset the selection to the top if the query changes.\nsetSelected({index:0,scroll:true});},[deferredQuery]);const handleResultRowPointerDown=useCallback((event,index)=>{if(event.pointerType!==\"touch\")return;setIsKeyboardNavigationDisabled(true);setSelected({index,scroll:false});},[]);const handleResultRowMouseMove=useCallback((event,index)=>{setSelected(previousSelected=>{if(previousSelected.index===index){return previousSelected;}return{index,scroll:false};});},[]);const router=useRouter();const navigateTo=useCallback(async url=>{if(status===\"no-meta-tag-found\"){return;}try{// Ideally, we would directly expose `routeId` in the search index so that\n// we don't need to infer it from the URL.\nconst{routeId,pathVariables}=inferInitialRouteFromPath(router.routes,url);const route=router.getRoute?.(routeId);onDismiss();await route?.page?.preload?.();router.navigate?.(routeId,null,pathVariables,false);}catch(error){window.location.href=url;}},[status]);const handleKeyDown=event=>{const maxIndex=results.length-1;switch(event.code){case\"ArrowUp\":event.preventDefault();if(isKeyboardNavigationDisabled){setIsKeyboardNavigationDisabled(false);break;}setSelected(previousSelected=>({index:clamp(0,maxIndex,previousSelected.index-1),scroll:true}));break;case\"ArrowDown\":event.preventDefault();if(isKeyboardNavigationDisabled){setIsKeyboardNavigationDisabled(false);break;}setSelected(previousSelected=>({index:clamp(0,maxIndex,previousSelected.index+1),scroll:true}));break;case\"Escape\":break;case\"Enter\":if(selectedResult){navigateTo(selectedResult.url);}break;default:event.stopPropagation();}};const showNoResults=results.length===0&&deferredQuery.length>1&&status!==\"loading\";const showDivider=Boolean((deferredQuery.length>0&&results.length>0||showNoResults)&&status!==\"loading\"&&props.inputOptions&&props.inputOptions.dividerType!==\"none\");const isItemContained=Boolean(props.resultOptions&&props.resultOptions.itemType===\"contained\");const spacing=isItemContained?theme.spacing:10;const listPaddingTop=showDivider&&isItemContained?spacing+theme.gapBetweenResults*2:0;useEffect(()=>{if(!selected.scroll)return;const element=selectedResultRow.current;if(!element)return;scrollIntoView(element,scrollView.current,{offsetTop:showDivider&&isItemContained?listPaddingTop:0,offsetBottom:isItemContained?spacing:0});// `showDivider` and `isItemContained` are not dependencies because\n// they will be the latest values when `selected` changes. And including\n// them will cause unnecessary scrolling into view.\n},[selected]);return /*#__PURE__*/_jsxs(LayoutContainer,{layoutType:layoutType,modalOptions:modalOptions,theme:theme,onKeyDown:handleKeyDown,onDismiss:onDismiss,children:[/*#__PURE__*/_jsxs(ModalContainer,{layoutType:layoutType,theme:theme,heightIsStatic:modalOptions.heightIsStatic,heightTransition:modalOptions.heightTransition,heightDeps:[results.length,showNoResults],children:[/*#__PURE__*/_jsx(Input,{autofocus:true,ref:input,onChange:setQuery,value:query,theme:theme,status:status,iconType:inputOptions.iconOptions.iconType,placeholder:inputOptions.placeholderOptions.placeholderText,clearButtonType:inputOptions?inputOptions.clearButtonType:undefined,clearButtonText:inputOptions.clearButtonText}),showDivider&&/*#__PURE__*/_jsx(Divider,{theme:theme,type:inputOptions.dividerType}),/*#__PURE__*/_jsx(ScrollView,{ref:scrollView,theme:theme,children:/*#__PURE__*/_jsxs(\"ul\",{\"aria-live\":\"polite\",style:{display:\"flex\",flexDirection:\"column\",width:`calc(100% - ${theme.scrollBarWidth}px)`,padding:0,paddingTop:listPaddingTop,paddingBottom:results.length&&isItemContained?spacing:0,gap:theme.gapBetweenResults,margin:0},children:[results.map((result,index)=>{const isSelected=index===selected.index;return /*#__PURE__*/_jsx(ResultRow,{ref:isSelected?selectedResultRow:null,index:index,result:result,prevMousePositionRef:prevMousePositionRef,selected:!isKeyboardNavigationDisabled&&isSelected,type:props.resultOptions.itemType,subtitleType:props.resultOptions.subtitleOptions.subtitleType,theme:theme,localeSlug:localeSlug,onMouseMove:handleResultRowMouseMove,onPointerDown:handleResultRowPointerDown,onNavigateTo:navigateTo},result.url);}),showNoResults&&/*#__PURE__*/_jsx(\"li\",{style:{paddingTop:verticalSpacing-listPaddingTop,paddingBottom:verticalSpacing,lineHeight:\"2em\",paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,height:\"Sidebar\"?\"100%\":\"auto\"},children:/*#__PURE__*/_jsx(\"h3\",{style:{...resultTitle,textAlign:\"center\",lineHeight:`calc(${theme.inputFontSize} * 2)`,color:theme.subtitleColor,...theme.titleFont},children:\"No results\"})})]})})]}),/*#__PURE__*/_jsx(StatusMessage,{status:status,layoutType:layoutType,theme:theme})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"ResultRow\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultTitleType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultItemType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchLayoutType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchInputDividerType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchTheme\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultSubtitleType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchModal\":{\"type\":\"reactComponent\",\"name\":\"SearchModal\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"SearchIconType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Input\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchEntryType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchInputClearButtonType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-ignore\nimport{useLocaleInfo}from\"framer\";import{clamp}from\"framer-motion\";import{useEffect,useState,useTransition}from\"react\";import{SearchResultTitleType}from\"https://framerusercontent.com/modules/tV9haTHllpHHc9Fjue2H/bsLTiXYjkHoD2XaMjabu/SearchModal.js\";import{getCachedIndex,isDefaultLocaleId,setCachedIndex}from\"https://framerusercontent.com/modules/uU1mtMKXsrVAg8N5hW7w/v7gDLwKJgQ5vAsFHxY4H/cachedIndex.js\";import{fakeResults}from\"https://framerusercontent.com/modules/K9JZRwJcE6slDAf8rUmh/mJ54py1Ecnn1RoC4N1m4/fakeResults.js\";import{distance}from\"https://framerusercontent.com/modules/TwRgbWuhHeB95MPifel4/YW8Hlm59FG3PajbrVsaR/fuzzySearch.js\";import{createLogger,localStorageDebugFlag,safeDocument,safeWindow,stripLocaleSlugFromPath,yieldToMain}from\"https://framerusercontent.com/modules/MWsEnYfRnoOQq31DN4ql/fxR5MNtgeSOU8Mj4iY9n/utils.js\";const{log,time,timeEnd}=createLogger(localStorageDebugFlag);const splitWordsRegex=(()=>{try{// Regex lookbehind is used to ignore ampersands when splitting\n// words. For example \"H&M\" will not be split and is considered as\n// one word, but \"H & M\" will be split.\n// However, some browsers (like Safari iOS 15) don't support\n// lookbehind and will crash. When it's not supported, fallback to\n// a safer regex that always splits ampersands.\nconst regex=RegExp(\"[\\\\s.,;!?\\\\p{P}\\\\p{Z}]+(?<!\\\\p{L}&)(?!&\\\\p{L})\",\"u\");\"\".split(regex);return regex;}catch{log(\"Falling back to regex without lookbehind\");return RegExp(\"[\\\\s.,;!?\\\\p{P}\\\\p{Z}]+\",\"u\");}})();function splitWords(text){return text.split(splitWordsRegex);}function getUniqueWords(str){const words=splitWords(str).filter(word=>word.trim()&&word.length>0);return new Set(words);}const normalizeRegex=/[\\u0300-\\u036f]/g;/**\n * Replace accented characters with equivilant non-accented versions and\n * make everything lowercase.\n */function getNormalizedString(text){if(Array.isArray(text)){return text.map(getNormalizedString);}return text.normalize(\"NFD\")// From: https://stackoverflow.com/a/37511463\n.replace(normalizeRegex,\"\").toLowerCase();}const normalizedItemCache=new WeakMap;function getNormalizedItemFromCache(item){const cached=normalizedItemCache.get(item);if(cached)return cached;const normalizedItem=getNormalizedItem(item);normalizedItemCache.set(item,normalizedItem);return normalizedItem;}function getNormalizedItem(item){const normalizedItem={};for(const key in item){if(item.hasOwnProperty(key)){const value=item[key];if(typeof value===\"string\"){normalizedItem[key]=getNormalizedString(value);continue;}if(Array.isArray(value)){normalizedItem[key]=getNormalizedString(value);continue;}normalizedItem[key]=value;}}return normalizedItem;}function getMatchRange(currentRange,start,end){const result={...currentRange};if(start<result.start){result.start=start;}if(end>result.end){result.end=end;}return result;}/**\n * Score index item based on the contents of it's fields such as title, description, headings etc.\n *\n * Note that this does not normalize the item or query. Normalization is expected to happen\n * before passing the data into this.\n */function getScoreForSearchIndexItem(item,query,words,fullQuery){let score=0;const match={title:{start:Infinity,end:0},description:{start:Infinity,end:0}};const urlWords=getUniqueWords(item.url);// Match query based on words in the URL so that random strings inside\n// other strings are not matched.\nif(urlWords.has(query)){score+=10;}// Really boost single word queries that match single word URLs.\nif(words.size===1&&urlWords.size===1&&urlWords.values().next().value===query){score+=score*5;}// Score shorter URLs higher so `/pricing` is before `/lala/pricing`.\nif(score>0){const splitLength=item.url.split(\"/\").length;score+=clamp(10-splitLength,0,splitLength);}const titleWords=getUniqueWords(item.title);// Prefer full word matches in the title.\nif(titleWords.has(query)){score+=10;}const titleIndex=item.title.indexOf(query);if(titleIndex!==-1){score+=10;// TODO: Matches are currently not used, but they can be used in the\n// future to add text highlighting.\nmatch.title=getMatchRange(match.title,titleIndex,titleIndex+query.length);}// If the full query is close to being the heading, score this highly as\n// the user is most likely looking for that exact title.\nif(distance(item.title,fullQuery)<=2){score+=score*10;}// Fuzzy match full words in the title.\nfor(const titleWord of titleWords){const distanceScore=distance(query,titleWord);// Small distance score helps with small typos.\nif(distanceScore<=2){score+=10;}}const headings=[...item.h1,...item.h2,...item.h3,...item.h4,...item.h5,...item.h6];for(const heading of headings){const headingWords=getUniqueWords(heading);// If the full query is close to being the heading, score this highly as\n// the user is most likely looking for that exact title.\nif(distance(heading,fullQuery)<=2){score+=score*10;}// Bias headings that start with the query as this helps when\n// you know the title you are searching for.\nif(heading.startsWith(query)){score+=10;}if(headingWords.has(query)){score+=10;}if(heading.includes(query)){score+=1;}// Fuzzy match full words in headings.\nfor(const headingWord of headingWords){const distanceScore=distance(query,headingWord);if(distanceScore<=2){score+=1;}}}const descriptionIndex=item.description.indexOf(query);if(descriptionIndex!==-1){score+=10;match.description=getMatchRange(match.description,descriptionIndex,descriptionIndex+query.length);}for(const p of item.p){if(p.includes(query)){score+=.5;}}for(const codeblock of item.codeblock){// If the full query is close to being the codeblock, score this highly as\n// the user is most likely looking for that exact code.\nif(distance(codeblock,fullQuery)<=2){score*=10;}if(codeblock.includes(fullQuery)){score+=10;}if(codeblock.includes(query)){score+=.5;}}return{score,match};}function getSearchIndexItemScore(item,normalizedQuery){const normalizedItem=getNormalizedItemFromCache(item);const queryWords=getUniqueWords(normalizedQuery);let total=0;for(const queryWord of queryWords){const{score}=getScoreForSearchIndexItem(normalizedItem,queryWord,queryWords,normalizedQuery);total+=score;}return total;}function useRawSearch(index,query,settings){const[results,setResults]=useState(null);const[,startTransition]=useTransition();useEffect(()=>{const abortController=new AbortController;executeRawSearch(index,query,settings,abortController.signal).then(res=>{if(!abortController.signal.aborted){startTransition(()=>{setResults(res);});}}).catch(err=>{if(err.name!==\"AbortError\"){console.error(\"Search failed:\",err);}});return()=>{abortController.abort();};},[index,query]);return{results:results??[]};}const QUANTUM=32// ms, 2*16ms (2 frames on 60 hz)\n;async function executeRawSearch(index,query,settings,signal){const path=safeWindow?.location.pathname;time(\"query\");const normalizedQuery=getNormalizedString(query);const results=[];const items=Object.values(index);let deadline=performance.now()+QUANTUM;async function yieldToMainIfNecessary(){if(performance.now()>=deadline){await yieldToMain();deadline=performance.now()+QUANTUM;}}for(let i=0;i<items.length;++i){if(performance.now()>=deadline){await yieldToMainIfNecessary();deadline=performance.now()+QUANTUM;}if(signal?.aborted)return[];const item=items[i];const score=getSearchIndexItemScore(item,normalizedQuery);if(score>(settings.minimumScore||0)&&(!path||item.url!==path)){const heading=item.h1.length&&item.h1[0];const title=settings?.titleType===SearchResultTitleType.Title?item.title:heading?heading:item.title;// Convert index item to result item.\nresults.push({url:item.url,title,description:item.description,body:[...item.p,item.codeblock].join(\" \"),score});}}await yieldToMainIfNecessary();if(signal?.aborted)return[];const sorted=results.sort((itemA,itemB)=>itemB.score-itemA.score);timeEnd(\"query\");await yieldToMainIfNecessary();if(signal?.aborted)return[];return results.slice(0,20);}function getIndexedScopedToUrl(index,rawUrlScope,localeSlug){const scopedIndex={};const baseScopeUrlHasVariable=rawUrlScope.includes(\":\");const urlUpToPathVariable=rawUrlScope.split(\":\")[0];const urlScope=urlUpToPathVariable.length>1?urlUpToPathVariable:\"\";for(const url in index){const strippedURL=stripLocaleSlugFromPath(url,localeSlug);if(!strippedURL.startsWith(urlScope)){continue;}if(baseScopeUrlHasVariable&&url.length<=urlScope.length){continue;}scopedIndex[url]=index[url];}return scopedIndex;}export function useSearch(query,settings){const[searchIndex,_setSearchIndex]=useState({});const[status,setStatus]=useState(\"loading\");const{results}=useRawSearch(searchIndex,query,settings);const{activeLocale}=useLocaleInfo();const localeId=activeLocale?.id;// Seperate setter function so that the URL scope is always applied\n// to indexes loaded from either the cache or network.\nfunction setSearchIndex(index,options={ignoreScope:false}){let scopedIndex=index;if(settings.urlScope&&!options.ignoreScope){scopedIndex=getIndexedScopedToUrl(index,settings.urlScope,activeLocale?.slug);log(\"Using URL scope\",settings.urlScope);}_setSearchIndex(scopedIndex);}useEffect(()=>{async function loadSearchIndex(){setStatus(\"loading\");const baseUrl=getBaseUrl(\"framer-search-index\");if(!baseUrl){setStatus(\"no-meta-tag-found\");setSearchIndex(fakeResults,{ignoreScope:true});log(\"No meta tag found\");return;}const cacheResult=await getCachedIndex(localeId,baseUrl);if(cacheResult.status===\"fresh\"){setSearchIndex(cacheResult.searchIndex);setStatus(\"success\");log(\"Using fresh cached index\");return;}if(cacheResult.status===\"stale\"){setSearchIndex(cacheResult.searchIndex);setStatus(\"loading-with-cache\");log(\"Using stale cached index while loading a fresh one\");}const searchIndexUrl=getSearchIndexUrl(baseUrl,localeId);const response=await fetch(searchIndexUrl);if(response.ok){const downloadedIndex=await response.json();setSearchIndex(downloadedIndex);setCachedIndex(localeId,downloadedIndex,baseUrl);setStatus(\"success\");log(\"Using downloaded index\");return;}// Our \"sites\" CDN currently returns 403s for missing files.\nconst isNotFound=response.status===403||response.status===404;if(!isNotFound){throw new Error(response.statusText);}// Index is likely still being generated.\nlog(\"Index not found\");const fallbackBaseUrl=getBaseUrl(\"framer-search-index-fallback\");if(!fallbackBaseUrl){if(cacheResult.status===\"miss\"){setStatus(\"pending-index-generation\");log(\"No fallback, no cache\");}else{setStatus(\"success\");log(\"No fallback, using cache\");}return;}// If we're here, cache is missing or stale. If it's stale but it's our fallback index, we can use it.\nif(cacheResult.status===\"stale\"&&cacheResult.indexHash===fallbackBaseUrl){setStatus(\"success\");log(\"Using cached fallback index\");return;}const fallbackSearchIndexUrl=getSearchIndexUrl(fallbackBaseUrl,localeId);const fallbackResponse=await fetch(fallbackSearchIndexUrl);if(fallbackResponse.ok){const downloadedIndex=await fallbackResponse.json();setSearchIndex(downloadedIndex);setCachedIndex(localeId,downloadedIndex,fallbackBaseUrl);setStatus(\"success\");log(\"Using downloaded fallback index\");return;}if(cacheResult.status===\"miss\"){setStatus(\"pending-index-generation\");log(\"Fallback failed, no cache\");}else{setStatus(\"success\");log(\"Fallback failed, using cache\");}}loadSearchIndex().catch(error=>{// TODO: Check for error type here. If it's a network error,\n// we could do a few retries.\nsetStatus(\"error\");log(\"Failed to load search index\",error);});},[localeId]);log({status,results});return{results,status};}function getBaseUrl(name){return safeDocument?.querySelector(`meta[name=\"${name}\"]`)?.getAttribute(\"content\");}function getSearchIndexUrl(baseURL,localeId){if(isDefaultLocaleId(localeId))return baseURL;return baseURL.replace(\".json\",`-${localeId}.json`);}\nexport const __FramerMetadata__ = {\"exports\":{\"SearchIndex\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useSearch\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./useSearch.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useSearch}from\"https://framerusercontent.com/modules/MyBp84Z0p9nUcMimVMnY/fpvHBWGoGQcWezUopJLS/useSearch.js\";import React,{useEffect,useState,useMemo,forwardRef,useRef,useDeferredValue,useLayoutEffect,useCallback,useImperativeHandle}from\"react\";import{Browser}from\"https://framerusercontent.com/modules/PJVBcBLmDteTEAZh3J9Z/keXJyjyE9VnzUcDMayjg/browser.js\";import{motion,clamp,useAnimate}from\"framer-motion\";import{SearchIcon,ClearIcon,SpinnerIcon}from\"https://framerusercontent.com/modules/LV9trClbmNwd5PVj9l8y/L4rFqMGNzGSwRZpGTGF3/Icons.js\";import{clampText,getFontFamily,localStorageDebugFlag,animationKeyFromLayout,stripLocaleSlugFromPath}from\"https://framerusercontent.com/modules/MWsEnYfRnoOQq31DN4ql/fxR5MNtgeSOU8Mj4iY9n/utils.js\";import{useCallbackOnMouseMove}from\"https://framerusercontent.com/modules/Gzef0nFihI9m9vZG45th/lIUxbZcreiDm2GzUkt3y/useCallbackOnMouseMove.js\";import{scrollIntoView}from\"https://framerusercontent.com/modules/eAnjm75CdfYT1Zz4BIaz/7KDSfnnyD1T3Ap75L4m8/scrollIntoView.js\";import{useLocaleInfo,// @ts-expect-error Internal API\nuseRouter,// @ts-expect-error Internal API\ninferInitialRouteFromPath}from\"framer\";const MAX_DESCRIPTION_LENGTH=120;const MODAL_MAX_HEIGHT=496;const VERTICAL_SPACING_MULTIPLIER=.6;function ClearButton({theme,type,onClick,text}){const shouldDisplayIcon=type===\"icon\";const iconOrText=shouldDisplayIcon?/*#__PURE__*/_jsx(ClearIcon,{style:{color:theme.inputIconColor,width:theme.inputIconSize,height:theme.inputIconSize}}):text;return /*#__PURE__*/_jsx(\"div\",{style:{flexShrink:0,fontSize:theme&&theme.titleFont&&theme.titleFont.fontSize?theme.titleFont.fontSize:15},children:/*#__PURE__*/_jsx(\"button\",{className:\"__framer-search-clear-button\",onClick:onClick,style:{fontFamily:\"inherit\",border:\"none\",background:\"none\",cursor:\"pointer\",display:\"flex\",textTransform:\"uppercase\",color:theme.inputIconColor,fontSize:\"0.75em\",padding:0},children:iconOrText})});}function Divider({theme,type}){const styles={background:theme.foregroundColor,height:1,flexShrink:0,opacity:.05};if(type===\"contained\"&&theme){styles.marginLeft=theme.horizontalSpacing;styles.marginRight=theme.horizontalSpacing;}return /*#__PURE__*/_jsx(\"div\",{style:styles});}export const Input=/*#__PURE__*/forwardRef(function Input(props,ref){const{value=\"\",status,autofocus,theme,placeholder,iconType,clearButtonType,onChange}=props;const[inputValue,setInputValue]=useState(value);const[isFocused,setIsFocused]=useState(false);const inputRef=useRef();useImperativeHandle(ref,()=>inputRef.current);React.useLayoutEffect(()=>{// Runs on unmount, fixes a bug in Safari that scrolls to the bottom\n// of the page when the input unmounts.\nreturn()=>{const inputElement=inputRef.current;if(!inputElement||inputElement!==document.activeElement)return;inputElement.blur();};},[]);const handleInputClick=()=>{if(inputRef.current){inputRef.current.focus();}};const handleClearClick=()=>{setInputValue(\"\");};useEffect(()=>{onChange(inputValue);},[inputValue]);const hasInputText=inputValue.length>0;const showClearButton=inputValue.length>0&&clearButtonType&&clearButtonType!==\"none\";const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);const searchIcon=iconType===\"custom\"&&theme.inputIconImage?/*#__PURE__*/_jsx(\"img\",{alt:\"icon alongside the Site Search input\",src:theme.inputIconImage.src,width:theme.inputIconSize,height:theme.inputIconSize,decoding:\"async\"}):/*#__PURE__*/_jsx(SearchIcon,{color:theme.inputIconColor,width:theme.inputIconSize,height:theme.inputIconSize});return /*#__PURE__*/_jsxs(\"div\",{role:\"search\",style:{...inputContainerStyle,fontFamily:getFontFamily(theme),paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,gap:12,paddingTop:verticalSpacing,paddingBottom:verticalSpacing,touchAction:\"none\"},onClick:handleInputClick,children:[/*#__PURE__*/_jsx(\"div\",{style:{flexShrink:0,display:\"flex\"},children:status===\"loading\"&&inputValue?/*#__PURE__*/_jsx(SpinnerIcon,{color:theme.inputIconColor,backgroundColor:theme.backgroundColor,style:{height:theme&&theme.inputIconSize,width:theme&&theme.inputIconSize}}):searchIcon}),/*#__PURE__*/_jsx(\"input\",{ref:inputRef,spellCheck:false,autoFocus:autofocus,style:{...inputStyle,WebkitTapHighlightColor:\"rgba(0,0,0,0)\",color:theme.foregroundColor,lineHeight:\"2em\",verticalAlign:\"baseline\",...theme.titleFont,...theme.inputFont,fontSize:theme.inputFontSize,// @ts-ignore\n\"--framer-search-placeholder-color\":theme.placeholderColor},onFocus:()=>{const scrollOffset=document.documentElement.scrollTop;document.documentElement.scrollTop=scrollOffset;},placeholder:placeholder,value:inputValue,onChange:()=>setInputValue(inputRef.current.value)}),showClearButton&&/*#__PURE__*/_jsx(ClearButton,{theme:theme,type:props.clearButtonType,text:props.clearButtonText,onClick:handleClearClick})]});});const inputContainerStyle={display:\"inline-flex\",alignItems:\"center\",flexShrink:0};const inputStyle={outline:\"none\",border:\"none\",background:\"transparent\",fontWeight:500,height:\"2em\",padding:0,width:\"100%\"};export const ResultRow=/*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function ResultRow(props,ref){const{index,result,prevMousePositionRef,type=\"contained\",subtitleType=\"path\",selected=false,theme,localeSlug,style,onMouseMove,onPointerDown,onNavigateTo}=props;const{url,title,score}=result;const urlPath=useMemo(()=>{return stripLocaleSlugFromPath(url,localeSlug);},[url,localeSlug]);const handleMouseMove=useCallbackOnMouseMove(event=>onMouseMove(event,index),prevMousePositionRef);const isContained=type===\"contained\";const borderRadius=isContained?clamp(0,Infinity,theme.borderRadius-theme.spacing):0;const subtitleText=subtitleType===\"path\"?urlPath:clampText(result.description,MAX_DESCRIPTION_LENGTH);const handleClick=event=>{event.preventDefault();onNavigateTo(result.url);};const focusTrap=event=>{event.preventDefault();};return /*#__PURE__*/_jsx(\"a\",{ref:ref,style:{textDecoration:\"none\"},href:result.url,onClick:handleClick,onMouseMove:handleMouseMove,onMouseDown:focusTrap,onPointerDown:event=>onPointerDown(event,index),children:/*#__PURE__*/_jsxs(\"li\",{style:{...resultContainer,...style,paddingTop:isContained?12:16,paddingBottom:isContained?12:16,color:theme.foregroundColor,position:\"relative\",paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing},children:[/*#__PURE__*/_jsx(\"div\",{style:{backgroundColor:theme.foregroundColor,position:\"absolute\",opacity:selected?.06:0,borderRadius,left:theme&&isContained?theme.spacing:0,right:theme&&isContained?theme.spacing:0,top:0,bottom:0}}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",overflow:\"hidden\",gap:4},children:[/*#__PURE__*/_jsx(\"h3\",{style:{...resultTitle,...theme.titleFont,lineHeight:\"1.4em\"},children:title}),/*#__PURE__*/_jsxs(\"p\",{style:{margin:0,color:theme.subtitleColor,...theme.subtitleFont,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",lineHeight:\"1.4em\"},children:[localStorageDebugFlag?score:\"\",\" \",subtitleText]})]})]},result.url)});}));/**\n * Flexible gap used inside a flexbox layout to push down the quick menu\n * by 20% of the screen height, but also allow it to collapse to zero if\n * there is not enough vertical room.\n */function QuickMenuSpacer({onClick}){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",flexBasis:\"20vh\"},onClick:onClick});}const layoutContainerStyle={display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"flex-start\",gap:15,overflow:\"visible\"};function LayoutContainer({layoutType,theme,onKeyDown,onDismiss,children,modalOptions}){const layoutStyles=getLayoutBaseStyles(layoutType,theme);const style={...layoutContainerStyle,...layoutStyles,willChange:\"transform\",marginTop:layoutType===\"FixedTop\"?theme.offsetTop:0,height:layoutType===\"Sidebar\"?\"100%\":\"auto\",maxHeight:layoutType===\"QuickMenu\"?\"100%\":\"none\",justifyContent:layoutType===\"Sidebar\"?\"flex-end\":\"flex-start\",flexDirection:layoutType===\"Sidebar\"?\"column-reverse\":\"column\"};const innerStyle={...layoutContainerStyle,...layoutStyles,height:layoutType===\"Sidebar\"?\"100%\":\"auto\",maxHeight:layoutType===\"QuickMenu\"?\"100%\":\"none\",gap:layoutType===\"Sidebar\"?0:theme.gapBetweenStatusAndSearch,backgroundColor:layoutType===\"Sidebar\"?theme.backgroundColor:\"transparent\",justifyContent:layoutType===\"Sidebar\"?\"flex-end\":\"flex-start\",flexDirection:layoutType===\"Sidebar\"?\"column-reverse\":\"column\",originX:.5,originY:.5};function getContainerAnimation(){switch(layoutType){case\"FixedTop\":{const key=animationKeyFromLayout(\"FixedTop\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{y:-10,opacity:.2,transition:{duration:Browser.isTouch()?0:.15}};}break;}case\"QuickMenu\":{const key=animationKeyFromLayout(\"QuickMenu\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{scale:.95,opacity:0,y:0,x:0,rotate:0,transition:{type:\"spring\",stiffness:600,damping:40}};}break;}case\"Sidebar\":{const key=animationKeyFromLayout(\"Sidebar\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{x:-10,opacity:0,transition:{duration:.15}};}break;}}}const containerAnimation=getContainerAnimation();return /*#__PURE__*/_jsxs(\"div\",{style:style,onKeyDown:onKeyDown,onClick:event=>event.stopPropagation(),children:[layoutType===\"QuickMenu\"&&/*#__PURE__*/_jsx(QuickMenuSpacer,{onClick:onDismiss}),/*#__PURE__*/_jsx(motion.div,{initial:containerAnimation,animate:{opacity:1,scale:1,x:0,y:0,rotate:0},transition:containerAnimation?containerAnimation.transition:undefined,exit:{opacity:0,transition:{duration:0}},style:innerStyle,children:children})]});}function ModalContainer({layoutType,theme,children,heightIsStatic,heightTransition,heightDeps}){const style={// This `willChange` is required to avoid weird rendering issues where\n// parts of the search window won't redraw, which we observed in Safari 16.4.\nwillChange:\"transform\",backgroundColor:theme.backgroundColor,color:theme.foregroundColor,borderRadius:layoutType===\"QuickMenu\"?theme.borderRadius:0,width:\"100%\",display:\"flex\",flexDirection:\"column\",overflow:\"hidden\",boxShadow:layoutType!==\"Sidebar\"?theme.shadow:undefined,maxHeight:layoutType===\"QuickMenu\"?`min(${MODAL_MAX_HEIGHT}px, calc(100vh - 30px))`:undefined};// Opt-in Height Animations for the Search Quick Actions menu.\n// These are disabled by default, but can be enabled via props.\nconst[scope,animate]=useAnimate();useLayoutEffect(()=>{if(layoutType!==\"QuickMenu\"||heightIsStatic)return;const prevHeight=scope.current.offsetHeight;scope.current.style.height=\"auto\";const height=scope.current.offsetHeight;scope.current.style.height=prevHeight+\"px\";animate(scope.current,{height:[prevHeight,height]},heightTransition);},heightDeps);return /*#__PURE__*/_jsx(\"div\",{ref:scope,role:\"dialog\",className:layoutType===\"FixedTop\"?\"__framer-max-height-80dvh\":undefined,style:style,children:children});}const ScrollView=/*#__PURE__*/React.forwardRef(function ScrollView({theme,children},ref){const isTouch=Browser.isTouch();const[canScroll,setCanScroll]=React.useState(true);React.useEffect(()=>{if(!isTouch)return;const element=ref.current;if(!element)return;setCanScroll(element.scrollHeight>element.clientHeight);});return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{width:`calc(100% + ${theme.scrollBarWidth}px)`,overflowY:\"scroll\",overflowX:\"hidden\",overscrollBehavior:\"contain\",touchAction:canScroll?undefined:\"none\",// Make the list appear slightly under the divider\n// so that the divider is still visible when the first\n// item is selected.\nmarginTop:-1},children:children});});const statusStyle={backgroundColor:\"#B5B5B5\",color:\"#FFF\",boxShadow:\"0px 20px 40px 0px rgba(0, 0, 0, 0.25)\",fontFamily:\"inherit\",textAlign:\"center\",fontSize:13,padding:\"8px 0\"};function StatusMessage({status,layoutType,theme}){const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);const style={...statusStyle,userSelect:\"none\",fontFamily:getFontFamily(theme),paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,fontWeight:500,lineHeight:`calc(${theme.inputFontSize} * 2)`,paddingTop:verticalSpacing,paddingBottom:verticalSpacing,...theme.titleFont,zIndex:theme.zIndex+1,maxWidth:layoutType===\"FixedTop\"?\"none\":theme.width,width:layoutType===\"FixedTop\"?`calc(100% - ${verticalSpacing*2}px`:\"100%\",boxShadow:layoutType!==\"Sidebar\"&&statusStyle.boxShadow,borderRadius:layoutType!==\"Sidebar\"&&theme.borderRadius};// Show less text on fixed text to look nicer on mobile\nconst previewInfoText=layoutType===\"FixedTop\"?\"Preview Mode\":\"Preview Mode. Publish your Site to Search.\";if(status===\"no-meta-tag-found\"){return /*#__PURE__*/_jsx(\"div\",{style:style,children:previewInfoText});}if(status===\"pending-index-generation\"){return /*#__PURE__*/_jsx(\"div\",{style:style,children:\"Site is being indexed\"});}return null;}const resultTitle={textOverflow:\"ellipsis\",maxWidth:\"100%\",overflow:\"hidden\",fontWeight:500,whiteSpace:\"nowrap\",flex:1,margin:0};const resultContainer={padding:\"16px 20px\",listStyle:\"none\",fontWeight:500};const sidebarStyles={left:0,width:500};const fixedTopStyles={top:0,width:\"100%\"};const quickMenuStyles={width:500};function getLayoutBaseStyles(layoutOption,theme){switch(layoutOption){case\"Sidebar\":return{...sidebarStyles,width:theme.width};case\"FixedTop\":return fixedTopStyles;case\"QuickMenu\":return{...quickMenuStyles,width:theme.width};}}export var SearchInputClearButtonType;(function(SearchInputClearButtonType){SearchInputClearButtonType[\"Icon\"]=\"icon\";SearchInputClearButtonType[\"Text\"]=\"text\";SearchInputClearButtonType[\"None\"]=\"none\";})(SearchInputClearButtonType||(SearchInputClearButtonType={}));export var SearchInputDividerType;(function(SearchInputDividerType){SearchInputDividerType[\"None\"]=\"none\";SearchInputDividerType[\"FullWidth\"]=\"fullWidth\";SearchInputDividerType[\"Contained\"]=\"contained\";})(SearchInputDividerType||(SearchInputDividerType={}));export var SearchResultTitleType;(function(SearchResultTitleType){SearchResultTitleType[\"H1\"]=\"h1\";SearchResultTitleType[\"Title\"]=\"title\";})(SearchResultTitleType||(SearchResultTitleType={}));export var SearchResultSubtitleType;(function(SearchResultSubtitleType){SearchResultSubtitleType[\"Description\"]=\"description\";SearchResultSubtitleType[\"Path\"]=\"path\";})(SearchResultSubtitleType||(SearchResultSubtitleType={}));export var SearchResultItemType;(function(SearchResultItemType){SearchResultItemType[\"FullWidth\"]=\"fullWidth\";SearchResultItemType[\"Contained\"]=\"contained\";})(SearchResultItemType||(SearchResultItemType={}));export var SearchLayoutType;(function(SearchLayoutType){SearchLayoutType[\"Sidebar\"]=\"Sidebar\";SearchLayoutType[\"FixedTop\"]=\"FixedTop\";SearchLayoutType[\"QuickMenu\"]=\"QuickMenu\";})(SearchLayoutType||(SearchLayoutType={}));export var SearchEntryType;(function(SearchEntryType){SearchEntryType[\"Icon\"]=\"icon\";SearchEntryType[\"Text\"]=\"text\";})(SearchEntryType||(SearchEntryType={}));export var SearchIconType;(function(SearchIconType){SearchIconType[\"Default\"]=\"default\";SearchIconType[\"Custom\"]=\"custom\";})(SearchIconType||(SearchIconType={}));/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export function SearchModal(props){const{layoutType,theme,urlScope,inputOptions,backdropOptions,modalOptions,resultOptions,onDismiss}=props;const{activeLocale}=useLocaleInfo();const localeId=activeLocale?.id;const localeSlug=activeLocale?.slug;const input=useRef();const selectedResultRow=useRef();const scrollView=useRef();const[selected,setSelected]=useState({index:0,scroll:true});const prevMousePositionRef=useRef(null);const[isKeyboardNavigationDisabled,setIsKeyboardNavigationDisabled]=useState(Browser.isTouch);const[query,setQuery]=useState(\"\");const deferredQuery=useDeferredValue(query);const{results,status}=useSearch(deferredQuery,{minimumScore:0,urlScope,titleType:resultOptions.titleType});const selectedResult=results[selected.index];const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);useEffect(()=>{// Reset the selection to the top if the query changes.\nsetSelected({index:0,scroll:true});},[deferredQuery]);const handleResultRowPointerDown=useCallback((event,index)=>{if(event.pointerType!==\"touch\")return;setIsKeyboardNavigationDisabled(true);setSelected({index,scroll:false});},[]);const handleResultRowMouseMove=useCallback((event,index)=>{setSelected(previousSelected=>{if(previousSelected.index===index){return previousSelected;}return{index,scroll:false};});},[]);const router=useRouter();const navigateTo=useCallback(async url=>{if(status===\"no-meta-tag-found\"){return;}try{// Ideally, we would directly expose `routeId` in the search index so that\n// we don't need to infer it from the URL.\nconst{routeId,pathVariables}=inferInitialRouteFromPath(router.routes,url);const route=router.getRoute?.(routeId);onDismiss();await route?.page?.preload?.();router.navigate?.(routeId,null,pathVariables,false);}catch(error){window.location.href=url;}},[status]);const handleKeyDown=event=>{const maxIndex=results.length-1;switch(event.code){case\"ArrowUp\":event.preventDefault();if(isKeyboardNavigationDisabled){setIsKeyboardNavigationDisabled(false);break;}setSelected(previousSelected=>({index:clamp(0,maxIndex,previousSelected.index-1),scroll:true}));break;case\"ArrowDown\":event.preventDefault();if(isKeyboardNavigationDisabled){setIsKeyboardNavigationDisabled(false);break;}setSelected(previousSelected=>({index:clamp(0,maxIndex,previousSelected.index+1),scroll:true}));break;case\"Escape\":break;case\"Enter\":if(selectedResult){navigateTo(selectedResult.url);}break;default:event.stopPropagation();}};const showNoResults=results.length===0&&deferredQuery.length>1&&status!==\"loading\";const showDivider=Boolean((deferredQuery.length>0&&results.length>0||showNoResults)&&status!==\"loading\"&&props.inputOptions&&props.inputOptions.dividerType!==\"none\");const isItemContained=Boolean(props.resultOptions&&props.resultOptions.itemType===\"contained\");const spacing=isItemContained?theme.spacing:10;const listPaddingTop=showDivider&&isItemContained?spacing+theme.gapBetweenResults*2:0;useEffect(()=>{if(!selected.scroll)return;const element=selectedResultRow.current;if(!element)return;scrollIntoView(element,scrollView.current,{offsetTop:showDivider&&isItemContained?listPaddingTop:0,offsetBottom:isItemContained?spacing:0});// `showDivider` and `isItemContained` are not dependencies because\n// they will be the latest values when `selected` changes. And including\n// them will cause unnecessary scrolling into view.\n},[selected]);return /*#__PURE__*/_jsxs(LayoutContainer,{layoutType:layoutType,modalOptions:modalOptions,theme:theme,onKeyDown:handleKeyDown,onDismiss:onDismiss,children:[/*#__PURE__*/_jsxs(ModalContainer,{layoutType:layoutType,theme:theme,heightIsStatic:modalOptions.heightIsStatic,heightTransition:modalOptions.heightTransition,heightDeps:[results.length,showNoResults],children:[/*#__PURE__*/_jsx(Input,{autofocus:true,ref:input,onChange:setQuery,value:query,theme:theme,status:status,iconType:inputOptions.iconOptions.iconType,placeholder:inputOptions.placeholderOptions.placeholderText,clearButtonType:inputOptions?inputOptions.clearButtonType:undefined,clearButtonText:inputOptions.clearButtonText}),showDivider&&/*#__PURE__*/_jsx(Divider,{theme:theme,type:inputOptions.dividerType}),/*#__PURE__*/_jsx(ScrollView,{ref:scrollView,theme:theme,children:/*#__PURE__*/_jsxs(\"ul\",{\"aria-live\":\"polite\",style:{display:\"flex\",flexDirection:\"column\",width:`calc(100% - ${theme.scrollBarWidth}px)`,padding:0,paddingTop:listPaddingTop,paddingBottom:results.length&&isItemContained?spacing:0,gap:theme.gapBetweenResults,margin:0},children:[results.map((result,index)=>{const isSelected=index===selected.index;return /*#__PURE__*/_jsx(ResultRow,{ref:isSelected?selectedResultRow:null,index:index,result:result,prevMousePositionRef:prevMousePositionRef,selected:!isKeyboardNavigationDisabled&&isSelected,type:props.resultOptions.itemType,subtitleType:props.resultOptions.subtitleOptions.subtitleType,theme:theme,localeSlug:localeSlug,onMouseMove:handleResultRowMouseMove,onPointerDown:handleResultRowPointerDown,onNavigateTo:navigateTo},result.url);}),showNoResults&&/*#__PURE__*/_jsx(\"li\",{style:{paddingTop:verticalSpacing-listPaddingTop,paddingBottom:verticalSpacing,lineHeight:\"2em\",paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,height:\"Sidebar\"?\"100%\":\"auto\"},children:/*#__PURE__*/_jsx(\"h3\",{style:{...resultTitle,textAlign:\"center\",lineHeight:`calc(${theme.inputFontSize} * 2)`,color:theme.subtitleColor,...theme.titleFont},children:\"No results\"})})]})})]}),/*#__PURE__*/_jsx(StatusMessage,{status:status,layoutType:layoutType,theme:theme})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"ResultRow\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultTitleType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultItemType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchLayoutType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchInputDividerType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchTheme\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultSubtitleType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchModal\":{\"type\":\"reactComponent\",\"name\":\"SearchModal\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"SearchIconType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Input\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchEntryType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchInputClearButtonType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// @ts-ignore\nimport{useLocaleInfo}from\"framer\";import{clamp}from\"framer-motion\";import{useEffect,useState,useTransition}from\"react\";import{SearchResultTitleType}from\"https://framerusercontent.com/modules/tV9haTHllpHHc9Fjue2H/1GynhDlRW7uuXFYW1RXb/SearchModal.js\";import{getCachedIndex,isDefaultLocaleId,setCachedIndex}from\"https://framerusercontent.com/modules/uU1mtMKXsrVAg8N5hW7w/v7gDLwKJgQ5vAsFHxY4H/cachedIndex.js\";import{fakeResults}from\"https://framerusercontent.com/modules/K9JZRwJcE6slDAf8rUmh/mJ54py1Ecnn1RoC4N1m4/fakeResults.js\";import{distance}from\"https://framerusercontent.com/modules/TwRgbWuhHeB95MPifel4/YW8Hlm59FG3PajbrVsaR/fuzzySearch.js\";import{createLogger,localStorageDebugFlag,safeDocument,safeWindow,stripLocaleSlugFromPath,yieldToMain}from\"https://framerusercontent.com/modules/MWsEnYfRnoOQq31DN4ql/fxR5MNtgeSOU8Mj4iY9n/utils.js\";const{log,time,timeEnd}=createLogger(localStorageDebugFlag);const splitWordsRegex=(()=>{try{// Regex lookbehind is used to ignore ampersands when splitting\n// words. For example \"H&M\" will not be split and is considered as\n// one word, but \"H & M\" will be split.\n// However, some browsers (like Safari iOS 15) don't support\n// lookbehind and will crash. When it's not supported, fallback to\n// a safer regex that always splits ampersands.\nconst regex=RegExp(\"[\\\\s.,;!?\\\\p{P}\\\\p{Z}]+(?<!\\\\p{L}&)(?!&\\\\p{L})\",\"u\");\"\".split(regex);return regex;}catch{log(\"Falling back to regex without lookbehind\");return RegExp(\"[\\\\s.,;!?\\\\p{P}\\\\p{Z}]+\",\"u\");}})();function splitWords(text){return text.split(splitWordsRegex);}function getUniqueWords(str){const words=splitWords(str).filter(word=>word.trim()&&word.length>0);return new Set(words);}const normalizeRegex=/[\\u0300-\\u036f]/g;/**\n * Replace accented characters with equivilant non-accented versions and\n * make everything lowercase.\n */function getNormalizedString(text){if(Array.isArray(text)){return text.map(getNormalizedString);}return text.normalize(\"NFD\")// From: https://stackoverflow.com/a/37511463\n.replace(normalizeRegex,\"\").toLowerCase();}const normalizedItemCache=new WeakMap;function getNormalizedItemFromCache(item){const cached=normalizedItemCache.get(item);if(cached)return cached;const normalizedItem=getNormalizedItem(item);normalizedItemCache.set(item,normalizedItem);return normalizedItem;}function getNormalizedItem(item){const normalizedItem={};for(const key in item){if(item.hasOwnProperty(key)){const value=item[key];if(typeof value===\"string\"){normalizedItem[key]=getNormalizedString(value);continue;}if(Array.isArray(value)){normalizedItem[key]=getNormalizedString(value);continue;}normalizedItem[key]=value;}}return normalizedItem;}function getMatchRange(currentRange,start,end){const result={...currentRange};if(start<result.start){result.start=start;}if(end>result.end){result.end=end;}return result;}/**\n * Score index item based on the contents of it's fields such as title, description, headings etc.\n *\n * Note that this does not normalize the item or query. Normalization is expected to happen\n * before passing the data into this.\n */function getScoreForSearchIndexItem(item,query,words,fullQuery){let score=0;const match={title:{start:Infinity,end:0},description:{start:Infinity,end:0}};const urlWords=getUniqueWords(item.url);// Match query based on words in the URL so that random strings inside\n// other strings are not matched.\nif(urlWords.has(query)){score+=10;}// Really boost single word queries that match single word URLs.\nif(words.size===1&&urlWords.size===1&&urlWords.values().next().value===query){score+=score*5;}// Score shorter URLs higher so `/pricing` is before `/lala/pricing`.\nif(score>0){const splitLength=item.url.split(\"/\").length;score+=clamp(10-splitLength,0,splitLength);}const titleWords=getUniqueWords(item.title);// Prefer full word matches in the title.\nif(titleWords.has(query)){score+=10;}const titleIndex=item.title.indexOf(query);if(titleIndex!==-1){score+=10;// TODO: Matches are currently not used, but they can be used in the\n// future to add text highlighting.\nmatch.title=getMatchRange(match.title,titleIndex,titleIndex+query.length);}// If the full query is close to being the heading, score this highly as\n// the user is most likely looking for that exact title.\nif(distance(item.title,fullQuery)<=2){score+=score*10;}// Fuzzy match full words in the title.\nfor(const titleWord of titleWords){const distanceScore=distance(query,titleWord);// Small distance score helps with small typos.\nif(distanceScore<=2){score+=10;}}const headings=[...item.h1,...item.h2,...item.h3,...item.h4,...item.h5,...item.h6];for(const heading of headings){const headingWords=getUniqueWords(heading);// If the full query is close to being the heading, score this highly as\n// the user is most likely looking for that exact title.\nif(distance(heading,fullQuery)<=2){score+=score*10;}// Bias headings that start with the query as this helps when\n// you know the title you are searching for.\nif(heading.startsWith(query)){score+=10;}if(headingWords.has(query)){score+=10;}if(heading.includes(query)){score+=1;}// Fuzzy match full words in headings.\nfor(const headingWord of headingWords){const distanceScore=distance(query,headingWord);if(distanceScore<=2){score+=1;}}}const descriptionIndex=item.description.indexOf(query);if(descriptionIndex!==-1){score+=10;match.description=getMatchRange(match.description,descriptionIndex,descriptionIndex+query.length);}for(const p of item.p){if(p.includes(query)){score+=.5;}}for(const codeblock of item.codeblock){// If the full query is close to being the codeblock, score this highly as\n// the user is most likely looking for that exact code.\nif(distance(codeblock,fullQuery)<=2){score*=10;}if(codeblock.includes(fullQuery)){score+=10;}if(codeblock.includes(query)){score+=.5;}}return{score,match};}function getSearchIndexItemScore(item,normalizedQuery){const normalizedItem=getNormalizedItemFromCache(item);const queryWords=getUniqueWords(normalizedQuery);let total=0;for(const queryWord of queryWords){const{score}=getScoreForSearchIndexItem(normalizedItem,queryWord,queryWords,normalizedQuery);total+=score;}return total;}function useRawSearch(index,query,settings){const[results,setResults]=useState(null);const[,startTransition]=useTransition();useEffect(()=>{const abortController=new AbortController;executeRawSearch(index,query,settings,abortController.signal).then(res=>{if(!abortController.signal.aborted){startTransition(()=>{setResults(res);});}}).catch(err=>{if(err.name!==\"AbortError\"){console.error(\"Search failed:\",err);}});return()=>{abortController.abort();};},[index,query]);return{results:results??[]};}const QUANTUM=32// ms, 2*16ms (2 frames on 60 hz)\n;async function executeRawSearch(index,query,settings,signal){const path=safeWindow?.location.pathname;time(\"query\");const normalizedQuery=getNormalizedString(query);const results=[];const items=Object.values(index);let deadline=performance.now()+QUANTUM;async function yieldToMainIfNecessary(){if(performance.now()>=deadline){await yieldToMain();deadline=performance.now()+QUANTUM;}}for(let i=0;i<items.length;++i){if(performance.now()>=deadline){await yieldToMainIfNecessary();deadline=performance.now()+QUANTUM;}if(signal?.aborted)return[];const item=items[i];const score=getSearchIndexItemScore(item,normalizedQuery);if(score>(settings.minimumScore||0)&&(!path||item.url!==path)){const heading=item.h1.length&&item.h1[0];const title=settings?.titleType===SearchResultTitleType.Title?item.title:heading?heading:item.title;// Convert index item to result item.\nresults.push({url:item.url,title,description:item.description,body:[...item.p,item.codeblock].join(\" \"),score});}}await yieldToMainIfNecessary();if(signal?.aborted)return[];const sorted=results.sort((itemA,itemB)=>itemB.score-itemA.score);timeEnd(\"query\");await yieldToMainIfNecessary();if(signal?.aborted)return[];return results.slice(0,20);}function getIndexedScopedToUrl(index,rawUrlScope,localeSlug){const scopedIndex={};const baseScopeUrlHasVariable=rawUrlScope.includes(\":\");const urlUpToPathVariable=rawUrlScope.split(\":\")[0];const urlScope=urlUpToPathVariable.length>1?urlUpToPathVariable:\"\";for(const url in index){const strippedURL=stripLocaleSlugFromPath(url,localeSlug);if(!strippedURL.startsWith(urlScope)){continue;}if(baseScopeUrlHasVariable&&url.length<=urlScope.length){continue;}scopedIndex[url]=index[url];}return scopedIndex;}export function useSearch(query,settings){const[searchIndex,_setSearchIndex]=useState({});const[status,setStatus]=useState(\"loading\");const{results}=useRawSearch(searchIndex,query,settings);const{activeLocale}=useLocaleInfo();const localeId=activeLocale?.id;// Seperate setter function so that the URL scope is always applied\n// to indexes loaded from either the cache or network.\nfunction setSearchIndex(index,options={ignoreScope:false}){let scopedIndex=index;if(settings.urlScope&&!options.ignoreScope){scopedIndex=getIndexedScopedToUrl(index,settings.urlScope,activeLocale?.slug);log(\"Using URL scope\",settings.urlScope);}_setSearchIndex(scopedIndex);}useEffect(()=>{async function loadSearchIndex(){setStatus(\"loading\");const baseUrl=getBaseUrl(\"framer-search-index\");if(!baseUrl){setStatus(\"no-meta-tag-found\");setSearchIndex(fakeResults,{ignoreScope:true});log(\"No meta tag found\");return;}const cacheResult=await getCachedIndex(localeId,baseUrl);if(cacheResult.status===\"fresh\"){setSearchIndex(cacheResult.searchIndex);setStatus(\"success\");log(\"Using fresh cached index\");return;}if(cacheResult.status===\"stale\"){setSearchIndex(cacheResult.searchIndex);setStatus(\"loading-with-cache\");log(\"Using stale cached index while loading a fresh one\");}const searchIndexUrl=getSearchIndexUrl(baseUrl,localeId);const response=await fetch(searchIndexUrl);if(response.ok){const downloadedIndex=await response.json();setSearchIndex(downloadedIndex);setCachedIndex(localeId,downloadedIndex,baseUrl);setStatus(\"success\");log(\"Using downloaded index\");return;}// Our \"sites\" CDN currently returns 403s for missing files.\nconst isNotFound=response.status===403||response.status===404;if(!isNotFound){throw new Error(response.statusText);}// Index is likely still being generated.\nlog(\"Index not found\");const fallbackBaseUrl=getBaseUrl(\"framer-search-index-fallback\");if(!fallbackBaseUrl){if(cacheResult.status===\"miss\"){setStatus(\"pending-index-generation\");log(\"No fallback, no cache\");}else{setStatus(\"success\");log(\"No fallback, using cache\");}return;}// If we're here, cache is missing or stale.\n// If it's stale but it's our fallback index, we can use it.\nif(cacheResult.status===\"stale\"&&cacheResult.indexHash===fallbackBaseUrl){setStatus(\"success\");log(\"Using cached fallback index\");return;}const fallbackSearchIndexUrl=getSearchIndexUrl(fallbackBaseUrl,localeId);const fallbackResponse=await fetch(fallbackSearchIndexUrl);if(fallbackResponse.ok){const downloadedIndex=await fallbackResponse.json();setSearchIndex(downloadedIndex);setCachedIndex(localeId,downloadedIndex,fallbackBaseUrl);setStatus(\"success\");log(\"Using downloaded fallback index\");return;}if(cacheResult.status===\"miss\"){setStatus(\"pending-index-generation\");log(\"Fallback failed, no cache\");}else{setStatus(\"success\");log(\"Fallback failed, using cache\");}}loadSearchIndex().catch(error=>{// TODO: Check for error type here. If it's a network error,\n// we could do a few retries.\nsetStatus(\"error\");log(\"Failed to load search index\",error);});},[localeId]);log({status,results});return{results,status};}function getBaseUrl(name){return safeDocument?.querySelector(`meta[name=\"${name}\"]`)?.getAttribute(\"content\");}function getSearchIndexUrl(baseURL,localeId){if(isDefaultLocaleId(localeId))return baseURL;return baseURL.replace(\".json\",`-${localeId}.json`);}\nexport const __FramerMetadata__ = {\"exports\":{\"SearchIndex\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useSearch\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./useSearch.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useSearch}from\"https://framerusercontent.com/modules/MyBp84Z0p9nUcMimVMnY/1vZ2fdkLJI4IprrVTHqR/useSearch.js\";import React,{useEffect,useState,useMemo,forwardRef,useRef,useDeferredValue,useLayoutEffect,useCallback,useImperativeHandle}from\"react\";import{Browser}from\"https://framerusercontent.com/modules/PJVBcBLmDteTEAZh3J9Z/keXJyjyE9VnzUcDMayjg/browser.js\";import{motion,clamp,useAnimate}from\"framer-motion\";import{SearchIcon,ClearIcon,SpinnerIcon}from\"https://framerusercontent.com/modules/LV9trClbmNwd5PVj9l8y/L4rFqMGNzGSwRZpGTGF3/Icons.js\";import{clampText,getFontFamily,localStorageDebugFlag,animationKeyFromLayout,stripLocaleSlugFromPath}from\"https://framerusercontent.com/modules/MWsEnYfRnoOQq31DN4ql/fxR5MNtgeSOU8Mj4iY9n/utils.js\";import{useCallbackOnMouseMove}from\"https://framerusercontent.com/modules/Gzef0nFihI9m9vZG45th/lIUxbZcreiDm2GzUkt3y/useCallbackOnMouseMove.js\";import{scrollIntoView}from\"https://framerusercontent.com/modules/eAnjm75CdfYT1Zz4BIaz/7KDSfnnyD1T3Ap75L4m8/scrollIntoView.js\";import{useLocaleInfo,// @ts-expect-error Internal API\nuseRouter,// @ts-expect-error Internal API\ninferInitialRouteFromPath}from\"framer\";const MAX_DESCRIPTION_LENGTH=120;const MODAL_MAX_HEIGHT=496;const VERTICAL_SPACING_MULTIPLIER=.6;function ClearButton({theme,type,onClick,text}){const shouldDisplayIcon=type===\"icon\";const iconOrText=shouldDisplayIcon?/*#__PURE__*/_jsx(ClearIcon,{style:{color:theme.inputIconColor,width:theme.inputIconSize,height:theme.inputIconSize}}):text;return /*#__PURE__*/_jsx(\"div\",{style:{flexShrink:0,fontSize:theme&&theme.titleFont&&theme.titleFont.fontSize?theme.titleFont.fontSize:15},children:/*#__PURE__*/_jsx(\"button\",{className:\"__framer-search-clear-button\",onClick:onClick,style:{fontFamily:\"inherit\",border:\"none\",background:\"none\",cursor:\"pointer\",display:\"flex\",textTransform:\"uppercase\",color:theme.inputIconColor,fontSize:\"0.75em\",padding:0},children:iconOrText})});}function Divider({theme,type}){const styles={background:theme.foregroundColor,height:1,flexShrink:0,opacity:.05};if(type===\"contained\"&&theme){styles.marginLeft=theme.horizontalSpacing;styles.marginRight=theme.horizontalSpacing;}return /*#__PURE__*/_jsx(\"div\",{style:styles});}export const Input=/*#__PURE__*/forwardRef(function Input(props,ref){const{value=\"\",status,autofocus,theme,placeholder,iconType,clearButtonType,onChange}=props;const[inputValue,setInputValue]=useState(value);const[isFocused,setIsFocused]=useState(false);const inputRef=useRef();useImperativeHandle(ref,()=>inputRef.current);React.useLayoutEffect(()=>{// Runs on unmount, fixes a bug in Safari that scrolls to the bottom\n// of the page when the input unmounts.\nreturn()=>{const inputElement=inputRef.current;if(!inputElement||inputElement!==document.activeElement)return;inputElement.blur();};},[]);const handleInputClick=()=>{if(inputRef.current){inputRef.current.focus();}};const handleClearClick=()=>{setInputValue(\"\");};useEffect(()=>{onChange(inputValue);},[inputValue]);const hasInputText=inputValue.length>0;const showClearButton=inputValue.length>0&&clearButtonType&&clearButtonType!==\"none\";const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);const searchIcon=iconType===\"custom\"&&theme.inputIconImage?/*#__PURE__*/_jsx(\"img\",{alt:\"icon alongside the Site Search input\",src:theme.inputIconImage.src,width:theme.inputIconSize,height:theme.inputIconSize,decoding:\"async\"}):/*#__PURE__*/_jsx(SearchIcon,{color:theme.inputIconColor,width:theme.inputIconSize,height:theme.inputIconSize});return /*#__PURE__*/_jsxs(\"div\",{role:\"search\",style:{...inputContainerStyle,fontFamily:getFontFamily(theme),paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,gap:12,paddingTop:verticalSpacing,paddingBottom:verticalSpacing,touchAction:\"none\"},onClick:handleInputClick,children:[/*#__PURE__*/_jsx(\"div\",{style:{flexShrink:0,display:\"flex\"},children:status===\"loading\"&&inputValue?/*#__PURE__*/_jsx(SpinnerIcon,{color:theme.inputIconColor,backgroundColor:theme.backgroundColor,style:{height:theme&&theme.inputIconSize,width:theme&&theme.inputIconSize}}):searchIcon}),/*#__PURE__*/_jsx(\"input\",{ref:inputRef,spellCheck:false,autoFocus:autofocus,style:{...inputStyle,WebkitTapHighlightColor:\"rgba(0,0,0,0)\",color:theme.foregroundColor,lineHeight:\"2em\",verticalAlign:\"baseline\",...theme.titleFont,...theme.inputFont,fontSize:theme.inputFontSize,// @ts-ignore\n\"--framer-search-placeholder-color\":theme.placeholderColor},onFocus:()=>{const scrollOffset=document.documentElement.scrollTop;document.documentElement.scrollTop=scrollOffset;},placeholder:placeholder,value:inputValue,onChange:()=>setInputValue(inputRef.current.value)}),showClearButton&&/*#__PURE__*/_jsx(ClearButton,{theme:theme,type:props.clearButtonType,text:props.clearButtonText,onClick:handleClearClick})]});});const inputContainerStyle={display:\"inline-flex\",alignItems:\"center\",flexShrink:0};const inputStyle={outline:\"none\",border:\"none\",background:\"transparent\",fontWeight:500,height:\"2em\",padding:0,width:\"100%\"};export const ResultRow=/*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function ResultRow(props,ref){const{index,result,prevMousePositionRef,type=\"contained\",subtitleType=\"path\",selected=false,theme,localeSlug,style,onMouseMove,onPointerDown,onNavigateTo}=props;const{url,title,score}=result;const urlPath=useMemo(()=>{return stripLocaleSlugFromPath(url,localeSlug);},[url,localeSlug]);const handleMouseMove=useCallbackOnMouseMove(event=>onMouseMove(event,index),prevMousePositionRef);const isContained=type===\"contained\";const borderRadius=isContained?clamp(0,Infinity,theme.borderRadius-theme.spacing):0;const subtitleText=subtitleType===\"path\"?urlPath:clampText(result.description,MAX_DESCRIPTION_LENGTH);const handleClick=event=>{event.preventDefault();onNavigateTo(result.url);};const focusTrap=event=>{event.preventDefault();};return /*#__PURE__*/_jsx(\"a\",{ref:ref,style:{textDecoration:\"none\"},href:result.url,onClick:handleClick,onMouseMove:handleMouseMove,onMouseDown:focusTrap,onPointerDown:event=>onPointerDown(event,index),children:/*#__PURE__*/_jsxs(\"li\",{style:{...resultContainer,...style,paddingTop:isContained?12:16,paddingBottom:isContained?12:16,color:theme.foregroundColor,position:\"relative\",paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing},children:[/*#__PURE__*/_jsx(\"div\",{style:{backgroundColor:theme.foregroundColor,position:\"absolute\",opacity:selected?.06:0,borderRadius,left:theme&&isContained?theme.spacing:0,right:theme&&isContained?theme.spacing:0,top:0,bottom:0}}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",overflow:\"hidden\",gap:4},children:[/*#__PURE__*/_jsx(\"h3\",{style:{...resultTitle,...theme.titleFont,lineHeight:\"1.4em\"},children:title}),/*#__PURE__*/_jsxs(\"p\",{style:{margin:0,color:theme.subtitleColor,...theme.subtitleFont,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\",lineHeight:\"1.4em\"},children:[localStorageDebugFlag?score:\"\",\" \",subtitleText]})]})]},result.url)});}));/**\n * Flexible gap used inside a flexbox layout to push down the quick menu\n * by 20% of the screen height, but also allow it to collapse to zero if\n * there is not enough vertical room.\n */function QuickMenuSpacer({onClick}){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",flexBasis:\"20vh\"},onClick:onClick});}const layoutContainerStyle={display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"flex-start\",gap:15,overflow:\"visible\"};function LayoutContainer({layoutType,theme,onKeyDown,onDismiss,children,modalOptions}){const layoutStyles=getLayoutBaseStyles(layoutType,theme);const style={...layoutContainerStyle,...layoutStyles,willChange:\"transform\",marginTop:layoutType===\"FixedTop\"?theme.offsetTop:0,height:layoutType===\"Sidebar\"?\"100%\":\"auto\",maxHeight:layoutType===\"QuickMenu\"?\"100%\":\"none\",justifyContent:layoutType===\"Sidebar\"?\"flex-end\":\"flex-start\",flexDirection:layoutType===\"Sidebar\"?\"column-reverse\":\"column\"};const innerStyle={...layoutContainerStyle,...layoutStyles,height:layoutType===\"Sidebar\"?\"100%\":\"auto\",maxHeight:layoutType===\"QuickMenu\"?\"100%\":\"none\",gap:layoutType===\"Sidebar\"?0:theme.gapBetweenStatusAndSearch,backgroundColor:layoutType===\"Sidebar\"?theme.backgroundColor:\"transparent\",justifyContent:layoutType===\"Sidebar\"?\"flex-end\":\"flex-start\",flexDirection:layoutType===\"Sidebar\"?\"column-reverse\":\"column\",originX:.5,originY:.5};function getContainerAnimation(){switch(layoutType){case\"FixedTop\":{const key=animationKeyFromLayout(\"FixedTop\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{y:-10,opacity:.2,transition:{duration:Browser.isTouch()?0:.15}};}break;}case\"QuickMenu\":{const key=animationKeyFromLayout(\"QuickMenu\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{scale:.95,opacity:0,y:0,x:0,rotate:0,transition:{type:\"spring\",stiffness:600,damping:40}};}break;}case\"Sidebar\":{const key=animationKeyFromLayout(\"Sidebar\");const prop=modalOptions?modalOptions[key]:undefined;if(prop){return prop;}else{return{x:-10,opacity:0,transition:{duration:.15}};}break;}}}const containerAnimation=getContainerAnimation();return /*#__PURE__*/_jsxs(\"div\",{style:style,onKeyDown:onKeyDown,onClick:event=>event.stopPropagation(),children:[layoutType===\"QuickMenu\"&&/*#__PURE__*/_jsx(QuickMenuSpacer,{onClick:onDismiss}),/*#__PURE__*/_jsx(motion.div,{initial:containerAnimation,animate:{opacity:1,scale:1,x:0,y:0,rotate:0},transition:containerAnimation?containerAnimation.transition:undefined,exit:{opacity:0,transition:{duration:0}},style:innerStyle,children:children})]});}function ModalContainer({layoutType,theme,children,heightIsStatic,heightTransition,heightDeps}){const style={// This `willChange` is required to avoid weird rendering issues where\n// parts of the search window won't redraw, which we observed in Safari 16.4.\nwillChange:\"transform\",backgroundColor:theme.backgroundColor,color:theme.foregroundColor,borderRadius:layoutType===\"QuickMenu\"?theme.borderRadius:0,width:\"100%\",display:\"flex\",flexDirection:\"column\",overflow:\"hidden\",boxShadow:layoutType!==\"Sidebar\"?theme.shadow:undefined,maxHeight:layoutType===\"QuickMenu\"?`min(${MODAL_MAX_HEIGHT}px, calc(100vh - 30px))`:undefined};// Opt-in Height Animations for the Search Quick Actions menu.\n// These are disabled by default, but can be enabled via props.\nconst[scope,animate]=useAnimate();useLayoutEffect(()=>{if(layoutType!==\"QuickMenu\"||heightIsStatic)return;const prevHeight=scope.current.offsetHeight;scope.current.style.height=\"auto\";const height=scope.current.offsetHeight;scope.current.style.height=prevHeight+\"px\";animate(scope.current,{height:[prevHeight,height]},heightTransition);},heightDeps);return /*#__PURE__*/_jsx(\"div\",{ref:scope,role:\"dialog\",className:layoutType===\"FixedTop\"?\"__framer-max-height-80dvh\":undefined,style:style,children:children});}const ScrollView=/*#__PURE__*/React.forwardRef(function ScrollView({theme,children},ref){const isTouch=Browser.isTouch();const[canScroll,setCanScroll]=React.useState(true);React.useEffect(()=>{if(!isTouch)return;const element=ref.current;if(!element)return;setCanScroll(element.scrollHeight>element.clientHeight);});return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{width:`calc(100% + ${theme.scrollBarWidth}px)`,overflowY:\"scroll\",overflowX:\"hidden\",overscrollBehavior:\"contain\",touchAction:canScroll?undefined:\"none\",// Make the list appear slightly under the divider\n// so that the divider is still visible when the first\n// item is selected.\nmarginTop:-1},children:children});});const statusStyle={backgroundColor:\"#B5B5B5\",color:\"#FFF\",boxShadow:\"0px 20px 40px 0px rgba(0, 0, 0, 0.25)\",fontFamily:\"inherit\",textAlign:\"center\",fontSize:13,padding:\"8px 0\"};function StatusMessage({status,layoutType,theme}){const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);const style={...statusStyle,userSelect:\"none\",fontFamily:getFontFamily(theme),paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,fontWeight:500,lineHeight:`calc(${theme.inputFontSize} * 2)`,paddingTop:verticalSpacing,paddingBottom:verticalSpacing,...theme.titleFont,zIndex:theme.zIndex+1,maxWidth:layoutType===\"FixedTop\"?\"none\":theme.width,width:layoutType===\"FixedTop\"?`calc(100% - ${verticalSpacing*2}px`:\"100%\",boxShadow:layoutType!==\"Sidebar\"&&statusStyle.boxShadow,borderRadius:layoutType!==\"Sidebar\"&&theme.borderRadius};// Show less text on fixed text to look nicer on mobile\nconst previewInfoText=layoutType===\"FixedTop\"?\"Preview Mode\":\"Preview Mode. Publish your Site to Search.\";if(status===\"no-meta-tag-found\"){return /*#__PURE__*/_jsx(\"div\",{style:style,children:previewInfoText});}if(status===\"pending-index-generation\"){return /*#__PURE__*/_jsx(\"div\",{style:style,children:\"Site is being indexed\"});}return null;}const resultTitle={textOverflow:\"ellipsis\",maxWidth:\"100%\",overflow:\"hidden\",fontWeight:500,whiteSpace:\"nowrap\",flex:1,margin:0};const resultContainer={padding:\"16px 20px\",listStyle:\"none\",fontWeight:500};const sidebarStyles={left:0,width:500};const fixedTopStyles={top:0,width:\"100%\"};const quickMenuStyles={width:500};function getLayoutBaseStyles(layoutOption,theme){switch(layoutOption){case\"Sidebar\":return{...sidebarStyles,width:theme.width};case\"FixedTop\":return fixedTopStyles;case\"QuickMenu\":return{...quickMenuStyles,width:theme.width};}}export var SearchInputClearButtonType;(function(SearchInputClearButtonType){SearchInputClearButtonType[\"Icon\"]=\"icon\";SearchInputClearButtonType[\"Text\"]=\"text\";SearchInputClearButtonType[\"None\"]=\"none\";})(SearchInputClearButtonType||(SearchInputClearButtonType={}));export var SearchInputDividerType;(function(SearchInputDividerType){SearchInputDividerType[\"None\"]=\"none\";SearchInputDividerType[\"FullWidth\"]=\"fullWidth\";SearchInputDividerType[\"Contained\"]=\"contained\";})(SearchInputDividerType||(SearchInputDividerType={}));export var SearchResultTitleType;(function(SearchResultTitleType){SearchResultTitleType[\"H1\"]=\"h1\";SearchResultTitleType[\"Title\"]=\"title\";})(SearchResultTitleType||(SearchResultTitleType={}));export var SearchResultSubtitleType;(function(SearchResultSubtitleType){SearchResultSubtitleType[\"Description\"]=\"description\";SearchResultSubtitleType[\"Path\"]=\"path\";})(SearchResultSubtitleType||(SearchResultSubtitleType={}));export var SearchResultItemType;(function(SearchResultItemType){SearchResultItemType[\"FullWidth\"]=\"fullWidth\";SearchResultItemType[\"Contained\"]=\"contained\";})(SearchResultItemType||(SearchResultItemType={}));export var SearchLayoutType;(function(SearchLayoutType){SearchLayoutType[\"Sidebar\"]=\"Sidebar\";SearchLayoutType[\"FixedTop\"]=\"FixedTop\";SearchLayoutType[\"QuickMenu\"]=\"QuickMenu\";})(SearchLayoutType||(SearchLayoutType={}));export var SearchEntryType;(function(SearchEntryType){SearchEntryType[\"Icon\"]=\"icon\";SearchEntryType[\"Text\"]=\"text\";})(SearchEntryType||(SearchEntryType={}));export var SearchIconType;(function(SearchIconType){SearchIconType[\"Default\"]=\"default\";SearchIconType[\"Custom\"]=\"custom\";})(SearchIconType||(SearchIconType={}));/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export function SearchModal(props){const{layoutType,theme,urlScope,inputOptions,backdropOptions,modalOptions,resultOptions,onDismiss}=props;const{activeLocale}=useLocaleInfo();const localeId=activeLocale?.id;const localeSlug=activeLocale?.slug;const input=useRef();const selectedResultRow=useRef();const scrollView=useRef();const[selected,setSelected]=useState({index:0,scroll:true});const prevMousePositionRef=useRef(null);const[isKeyboardNavigationDisabled,setIsKeyboardNavigationDisabled]=useState(Browser.isTouch);const[query,setQuery]=useState(\"\");const deferredQuery=useDeferredValue(query);const{results,status}=useSearch(deferredQuery,{minimumScore:0,urlScope,titleType:resultOptions.titleType});const selectedResult=results[selected.index];const verticalSpacing=Math.floor(theme?theme.horizontalSpacing*VERTICAL_SPACING_MULTIPLIER:0);useEffect(()=>{// Reset the selection to the top if the query changes.\nsetSelected({index:0,scroll:true});},[deferredQuery]);const handleResultRowPointerDown=useCallback((event,index)=>{if(event.pointerType!==\"touch\")return;setIsKeyboardNavigationDisabled(true);setSelected({index,scroll:false});},[]);const handleResultRowMouseMove=useCallback((event,index)=>{setSelected(previousSelected=>{if(previousSelected.index===index){return previousSelected;}return{index,scroll:false};});},[]);const router=useRouter();const navigateTo=useCallback(async url=>{if(status===\"no-meta-tag-found\"){return;}try{// Ideally, we would directly expose `routeId` in the search index so that\n// we don't need to infer it from the URL.\nconst{routeId,pathVariables}=inferInitialRouteFromPath(router.routes,url);const route=router.getRoute?.(routeId);onDismiss();await route?.page?.preload?.();router.navigate?.(routeId,null,pathVariables,false);}catch(error){window.location.href=url;}},[status]);const handleKeyDown=event=>{const maxIndex=results.length-1;switch(event.code){case\"ArrowUp\":event.preventDefault();if(isKeyboardNavigationDisabled){setIsKeyboardNavigationDisabled(false);break;}setSelected(previousSelected=>({index:clamp(0,maxIndex,previousSelected.index-1),scroll:true}));break;case\"ArrowDown\":event.preventDefault();if(isKeyboardNavigationDisabled){setIsKeyboardNavigationDisabled(false);break;}setSelected(previousSelected=>({index:clamp(0,maxIndex,previousSelected.index+1),scroll:true}));break;case\"Escape\":break;case\"Enter\":if(selectedResult){navigateTo(selectedResult.url);}break;default:event.stopPropagation();}};const showNoResults=results.length===0&&deferredQuery.length>1&&status!==\"loading\";const showDivider=Boolean((deferredQuery.length>0&&results.length>0||showNoResults)&&status!==\"loading\"&&props.inputOptions&&props.inputOptions.dividerType!==\"none\");const isItemContained=Boolean(props.resultOptions&&props.resultOptions.itemType===\"contained\");const spacing=isItemContained?theme.spacing:10;const listPaddingTop=showDivider&&isItemContained?spacing+theme.gapBetweenResults*2:0;useEffect(()=>{if(!selected.scroll)return;const element=selectedResultRow.current;if(!element)return;scrollIntoView(element,scrollView.current,{offsetTop:showDivider&&isItemContained?listPaddingTop:0,offsetBottom:isItemContained?spacing:0});// `showDivider` and `isItemContained` are not dependencies because\n// they will be the latest values when `selected` changes. And including\n// them will cause unnecessary scrolling into view.\n},[selected]);return /*#__PURE__*/_jsxs(LayoutContainer,{layoutType:layoutType,modalOptions:modalOptions,theme:theme,onKeyDown:handleKeyDown,onDismiss:onDismiss,children:[/*#__PURE__*/_jsxs(ModalContainer,{layoutType:layoutType,theme:theme,heightIsStatic:modalOptions.heightIsStatic,heightTransition:modalOptions.heightTransition,heightDeps:[results.length,showNoResults],children:[/*#__PURE__*/_jsx(Input,{autofocus:true,ref:input,onChange:setQuery,value:query,theme:theme,status:status,iconType:inputOptions.iconOptions.iconType,placeholder:inputOptions.placeholderOptions.placeholderText,clearButtonType:inputOptions?inputOptions.clearButtonType:undefined,clearButtonText:inputOptions.clearButtonText}),showDivider&&/*#__PURE__*/_jsx(Divider,{theme:theme,type:inputOptions.dividerType}),/*#__PURE__*/_jsx(ScrollView,{ref:scrollView,theme:theme,children:/*#__PURE__*/_jsxs(\"ul\",{\"aria-live\":\"polite\",style:{display:\"flex\",flexDirection:\"column\",width:`calc(100% - ${theme.scrollBarWidth}px)`,padding:0,paddingTop:listPaddingTop,paddingBottom:results.length&&isItemContained?spacing:0,gap:theme.gapBetweenResults,margin:0},children:[results.map((result,index)=>{const isSelected=index===selected.index;return /*#__PURE__*/_jsx(ResultRow,{ref:isSelected?selectedResultRow:null,index:index,result:result,prevMousePositionRef:prevMousePositionRef,selected:!isKeyboardNavigationDisabled&&isSelected,type:props.resultOptions.itemType,subtitleType:props.resultOptions.subtitleOptions.subtitleType,theme:theme,localeSlug:localeSlug,onMouseMove:handleResultRowMouseMove,onPointerDown:handleResultRowPointerDown,onNavigateTo:navigateTo},result.url);}),showNoResults&&/*#__PURE__*/_jsx(\"li\",{style:{paddingTop:verticalSpacing-listPaddingTop,paddingBottom:verticalSpacing,lineHeight:\"2em\",paddingLeft:theme&&theme.horizontalSpacing,paddingRight:theme&&theme.horizontalSpacing,height:\"Sidebar\"?\"100%\":\"auto\"},children:/*#__PURE__*/_jsx(\"h3\",{style:{...resultTitle,textAlign:\"center\",lineHeight:`calc(${theme.inputFontSize} * 2)`,color:theme.subtitleColor,...theme.titleFont},children:\"No results\"})})]})})]}),/*#__PURE__*/_jsx(StatusMessage,{status:status,layoutType:layoutType,theme:theme})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"ResultRow\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultTitleType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultItemType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchLayoutType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchInputDividerType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchTheme\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchResultSubtitleType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchModal\":{\"type\":\"reactComponent\",\"name\":\"SearchModal\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"SearchIconType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Input\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchEntryType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SearchInputClearButtonType\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{useEffect,useState}from\"react\";function getViewportSize(){if(typeof window===\"undefined\"){return{width:0,height:0};}return{width:window.innerWidth,height:window.innerHeight};}export function useViewportSizeState(getState){const[state,setState]=useState(()=>getState(getViewportSize()));useEffect(()=>{const handleWindowResize=()=>setState(getState(getViewportSize()));window.addEventListener(\"resize\",handleWindowResize);return()=>{window.removeEventListener(\"resize\",handleWindowResize);};},[]);return state;}\nexport const __FramerMetadata__ = {\"exports\":{\"useViewportSizeState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./useViewportSizeState.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{createPortal}from\"react-dom\";import{useRef,useState,useEffect,forwardRef}from\"react\";import{AnimatePresence,motion}from\"framer-motion\";import{SearchIcon}from\"https://framerusercontent.com/modules/LV9trClbmNwd5PVj9l8y/L4rFqMGNzGSwRZpGTGF3/Icons.js\";import{addPropertyControls,ControlType,RenderTarget,withCSS}from\"framer\";import{SearchModal,SearchResultItemType,SearchResultTitleType,SearchResultSubtitleType,SearchInputDividerType,SearchInputClearButtonType,SearchLayoutType,SearchIconType}from\"https://framerusercontent.com/modules/tV9haTHllpHHc9Fjue2H/lCNMpf6DznmmCJRndYjM/SearchModal.js\";import{useViewportSizeState}from\"https://framerusercontent.com/modules/hqEf5wXaAewP8VPuaZ98/5A0QGVeEr2cwheQpIuEG/useViewportSizeState.js\";import{titleCase,DEFAULT_FONT_FAMILY,isEmptyObject,animationKeyFromLayout,checkIfOverLimit}from\"https://framerusercontent.com/modules/MWsEnYfRnoOQq31DN4ql/fxR5MNtgeSOU8Mj4iY9n/utils.js\";import{Browser}from\"https://framerusercontent.com/modules/PJVBcBLmDteTEAZh3J9Z/keXJyjyE9VnzUcDMayjg/browser.js\";var EntryPointOptions;// SITE SEARCH\n// By Anthony and Hunter\n(function(EntryPointOptions){EntryPointOptions[\"icon\"]=\"Icon\";EntryPointOptions[\"input\"]=\"Input\";})(EntryPointOptions||(EntryPointOptions={}));function buildShadow(shadowProperty,fallback=\"none\"){if(!shadowProperty)return fallback;const{x,y,blur,color,spread}=shadowProperty;return`${x}px ${y}px ${blur}px ${spread}px ${color}`;}const Overlay=/*#__PURE__*/forwardRef(function Overlay(props,ref){const{layoutType,theme,onDismiss}=props;useEffect(()=>{const handleKeyDown=event=>{if(event.code===\"Escape\"){event.stopPropagation();onDismiss();}};const handlePointerDown=event=>{if(event.pointerType!==\"touch\")return;const isWithinSearchHeader=Boolean(event.target instanceof Element&&event.target.closest(\"[role=search]\"));if(isWithinSearchHeader)return;if(document.activeElement instanceof HTMLInputElement){document.activeElement.blur();}};// Event listener added to window so that pressing escape key to dimiss\n// can be invoked from anywhere on the page.\nwindow.addEventListener(\"keydown\",handleKeyDown);window.addEventListener(\"pointerdown\",handlePointerDown,{capture:true});// Disable page scrolling when overlay is shown.\ndocument.body.classList.add(bodyOverflowHidden);return()=>{window.removeEventListener(\"keydown\",handleKeyDown);window.removeEventListener(\"pointerdown\",handlePointerDown,{capture:true});document.body.classList.remove(bodyOverflowHidden);};},[]);return /*#__PURE__*/createPortal(/*#__PURE__*/_jsxs(\"div\",{ref:ref,className:\"__framer-search-modal-container\",role:\"presentation\",style:{...backdropStyles,zIndex:props.backdropOptions.zIndex,justifyContent:layoutType===SearchLayoutType.Sidebar?\"flex-start\":\"center\"},onClick:onDismiss,children:[/*#__PURE__*/_jsx(motion.div,{role:\"presentation\",initial:{opacity:0},animate:{opacity:1},exit:{opacity:0,transition:{duration:0}},transition:theme.overlayTransition,style:{top:0,left:0,right:0,bottom:0,width:\"100%\",height:\"100%\",boxSizing:\"border-box\",position:\"absolute\",touchAction:\"none\",backgroundColor:props.backdropOptions.backgroundColor}}),/*#__PURE__*/_jsx(SearchModal,{urlScope:props.urlScope,layoutType:layoutType,inputOptions:props.inputOptions,resultOptions:props.resultOptions,modalOptions:props.modalOptions,backdropOptions:props.backdropOptions,theme:props.theme,onDismiss:onDismiss})]}),document.body);});const backdropStyles={width:\"100%\",boxSizing:\"border-box\",willChange:\"transform\",position:\"fixed\",display:\"flex\",alignItems:\"flex-start\",top:0,left:0,right:0,bottom:0};const containerStyle={height:\"100%\",display:\"flex\",borderRadius:10,cursor:\"inherit\",overflow:\"hidden\"};const bodyOverflowHidden=\"__framer-overflow-hidden\";/**\n *\n * SEARCH\n * By Anthony and Hunter\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n *\n * @framerDisableUnlink\n *\n * @framerIntrinsicWidth 40\n * @framerIntrinsicHeight 40\n */const EntryPoint=withCSS(function EntryPoint(props){const overlay=useRef(null);const[isOpen,setIsOpen]=useState(false);const[isOverLimit,setIsOverLimit]=useState(false);const[isSafariTouchDevice,setIsSafariTouchDevice]=useState(false);const[isOnCanvas]=useState(()=>RenderTarget.current()===RenderTarget.canvas);useEffect(()=>{setIsOverLimit(checkIfOverLimit());setIsSafariTouchDevice(Browser.isSafari()&&Browser.isTouch());},[]);const baseInputFontSize=props.inputOptions?.inputFont?.fontSize?props.inputOptions.inputFont.fontSize:\"16px\";// The font size is set to a minimum of `16px` on Safari with touch screens\n// because otherwise Safari will zoom in slightly if the type size is smaller.\nconst inputFontSize=isSafariTouchDevice?`max(16px, ${baseInputFontSize})`:baseInputFontSize;const layoutType=useViewportSizeState(size=>{if(size.width<props.modalOptions.width+10){return SearchLayoutType.FixedTop;}// @ts-ignore – Fallback\nreturn props.modalOptions.layoutType||props.layoutType;});const theme={subtitleColor:props.resultOptions.subtitleOptions.subtitleColor,backgroundColor:props.modalOptions.backgroundColor,foregroundColor:props.resultOptions.titleColor,placeholderColor:props.inputOptions.placeholderOptions.placeholderColor,titleFont:props.resultOptions?.titleFont&&!isEmptyObject(props.resultOptions.titleFont)?props.resultOptions.titleFont:{fontSize:14,fontFamily:DEFAULT_FONT_FAMILY,fontWeight:500},subtitleFont:props.resultOptions.subtitleOptions?.subtitleFont&&!isEmptyObject(props.resultOptions.subtitleOptions.subtitleFont)?props.resultOptions.subtitleOptions.subtitleFont:{fontSize:12,fontFamily:DEFAULT_FONT_FAMILY,fontWeight:500},inputFont:props.inputOptions?.inputFont&&!isEmptyObject(props.inputOptions.inputFont)?props.inputOptions.inputFont:{fontSize:16,fontFamily:DEFAULT_FONT_FAMILY,fontWeight:500},// Keep separate so we can more easily override\ninputFontSize:inputFontSize,width:props.modalOptions.width,offsetTop:props.modalOptions.top,borderRadius:props.modalOptions.borderRadius,shadow:buildShadow(props.modalOptions.shadow),entryIconColor:props.iconColor,entryIconSize:props.iconSize,entryIconImage:props.iconImage,inputIconSize:props.inputOptions.iconOptions.iconSize,inputIconColor:props.inputOptions.iconOptions.iconColor,inputIconImage:props.inputOptions.iconOptions.iconImage,gapBetweenStatusAndSearch:16,gapBetweenResults:1,scrollBarWidth:20,margin:10,spacing:8,zIndex:props.backdropOptions.zIndex,horizontalSpacing:20,overlayTransition:props.backdropOptions.transition};const handleClick=event=>{// Both need to keep `autofocus` working on the search input.\nevent.preventDefault();event.stopPropagation();if(isOverLimit)return;setIsOpen(true);};return /*#__PURE__*/_jsxs(\"div\",{style:{...containerStyle,...props.style,pointerEvents:isOverLimit?\"none\":\"auto\",opacity:isOverLimit?.4:1},children:[/*#__PURE__*/_jsx(\"button\",{\"aria-label\":\"Search Icon\",style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",background:\"none\",cursor:\"inherit\",color:\"inherit\",border:\"none\",borderRadius:10,padding:0},onClick:handleClick,children:props.iconType===SearchIconType.Custom&&theme.entryIconImage?/*#__PURE__*/_jsx(\"img\",{alt:\"icon entry point for Site Search\",src:theme.entryIconImage.src,width:theme.entryIconSize,height:theme.entryIconSize}):/*#__PURE__*/_jsx(SearchIcon,{color:theme.entryIconColor,width:theme.entryIconSize,height:theme.entryIconSize})}),/*#__PURE__*/_jsx(AnimatePresence,{children:isOpen&&!isOnCanvas&&/*#__PURE__*/_jsx(Overlay,{ref:overlay,layoutType:layoutType,urlScope:props.urlScope,inputOptions:props.inputOptions,resultOptions:props.resultOptions,backdropOptions:props.backdropOptions,modalOptions:props.modalOptions,theme:theme,onDismiss:()=>setIsOpen(false)})})]});},[// Prevent scrolling on iOS Safari when Input is focused.\n// From: https://gist.github.com/kiding/72721a0553fa93198ae2bb6eefaa3299\n`\n        @keyframes __framer-blink-input {\n            0% { opacity: 0; }\n            100% { opacity: 1; }\n        }\n\n        .__framer-search-modal-container input:focus {\n            animation: __framer-blink-input 0.01s;\n        }\n        `,// Allow styling of input placeholder\n`\n         .__framer-search-modal-container input::placeholder, \n         .__framer-search-modal-container input::-webkit-input-placeholder { \n            color: var(--framer-search-placeholder-color, #999999);\n            opacity: 1;\n        }\n        `,// Allow fallback to 100vh when dvh unit is not supported.\n`\n        .__framer-search-modal-container {\n            height: 100vh;\n            height: 100dvh;\n        }\n        .__framer-search-modal-container .__framer-max-height-80dvh {\n            max-height: 80vh;\n            max-height: 80dvh;\n        }\n        `,`\n        body.${bodyOverflowHidden} {\n            overflow: hidden;\n        }`,// Increase hit target\n`\n        button.__framer-search-clear-button {\n            position: relative;\n        }\n        button.__framer-search-clear-button::after {\n            content: \"\";\n            position: absolute;\n            top: -10px;\n            right: -10px;\n            bottom: -10px;\n            left: -10px;\n        }`],\"framer-lib-search\");export default EntryPoint;addPropertyControls(EntryPoint,{urlScope:{title:\"Scope\",// @ts-ignore - Internal\ntype:ControlType.PageScope},// entryType: {\n//     title: \"Type\",\n//     type: ControlType.Enum,\n//     options: Object.values(SearchEntryType),\n//     optionTitles: Object.values(SearchEntryType).map(titleCase),\n//     displaySegmentedControl: true,\n// },\niconType:{title:\"Icon\",type:ControlType.Enum,options:Object.values(SearchIconType),optionTitles:Object.values(SearchIconType).map(titleCase),displaySegmentedControl:true},iconColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"#333\",hidden:props=>props.iconType===SearchIconType.Custom},iconImage:{title:\"File\",type:ControlType.ResponsiveImage,allowedFileTypes:[\"jpg\",\"png\",\"svg\"],hidden:props=>props.iconType===SearchIconType.Default},iconSize:{title:\"Size\",type:ControlType.Number,displayStepper:true,defaultValue:24},inputOptions:{title:\"Input\",type:ControlType.Object,buttonTitle:\"Icon, Styles\",controls:{iconOptions:{title:\"Icon\",type:ControlType.Object,buttonTitle:\"Color, Size\",controls:{iconType:{title:\"Icon\",type:ControlType.Enum,options:Object.values(SearchIconType),optionTitles:Object.values(SearchIconType).map(titleCase),displaySegmentedControl:true},iconColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0, 0, 0, 0.45)\",hidden:({iconType})=>{return iconType===SearchIconType.Custom;}},iconImage:{title:\"File\",type:ControlType.ResponsiveImage,allowedFileTypes:[\"jpg\",\"png\",\"svg\"],hidden:({iconType})=>iconType===SearchIconType.Default},iconSize:{title:\"Icon Size\",type:ControlType.Number,displayStepper:true,defaultValue:18,min:0,max:100}}},inputFont:{title:\"Font\",// @ts-ignore – Internal\ntype:ControlType.Font,displayFontSize:true},textColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"#333\"},placeholderOptions:{title:\"Placeholder\",type:ControlType.Object,buttonTitle:\"Color, Text\",controls:{placeholderText:{title:\"Text\",type:ControlType.String,defaultValue:\"Search...\"},placeholderColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.4)\"}}},dividerType:{title:\"Divider\",type:ControlType.Enum,options:Object.values(SearchInputDividerType),optionTitles:Object.keys(SearchInputDividerType).map(titleCase),defaultValue:SearchInputDividerType.FullWidth},clearButtonType:{title:\"Clear Type\",type:ControlType.Enum,options:Object.values(SearchInputClearButtonType),optionTitles:Object.keys(SearchInputClearButtonType).map(titleCase),defaultValue:SearchInputClearButtonType.Icon},clearButtonText:{title:\"Clear Text\",type:ControlType.String,defaultValue:\"Clear\",hidden:props=>props.clearButtonType!==SearchInputClearButtonType.Text}}},modalOptions:{title:\"Modal\",buttonTitle:\"Layout, Width\",type:ControlType.Object,controls:{layoutType:{title:\"Layout\",type:ControlType.Enum,options:Object.keys(SearchLayoutType),optionTitles:Object.values(SearchLayoutType).map(titleCase),defaultValue:SearchLayoutType.QuickMenu},width:{title:\"Width\",type:ControlType.Number,defaultValue:500,min:200,max:1e3,displayStepper:true,step:5,hidden:props=>props.layoutType===SearchLayoutType.FixedTop},top:{title:\"Top\",type:ControlType.Number,defaultValue:0,min:0,max:1e3,displayStepper:true,hidden:props=>props.layoutType!==SearchLayoutType.FixedTop},heightIsStatic:{title:\"Height\",type:ControlType.Boolean,enabledTitle:\"Instant\",disabledTitle:\"Animate\",hidden:({layoutType})=>layoutType!==SearchLayoutType.QuickMenu},heightTransition:{title:\"Type\",type:ControlType.Transition,defaultValue:{type:\"spring\",stiffness:800,damping:60},hidden:({heightIsStatic,layoutType})=>layoutType!==SearchLayoutType.QuickMenu||heightIsStatic},borderRadius:{title:\"Radius\",type:ControlType.Number,defaultValue:16,displayStepper:true,min:0,hidden:({layoutType})=>layoutType!==SearchLayoutType.QuickMenu},shadow:{buttonTitle:\"Options\",type:ControlType.Object,defaultValue:{x:0,y:20,blur:40,spread:0,color:\"rgba(0,0,0,0.2)\"},controls:{color:{type:ControlType.Color,defaultValue:\"rgba(0,0,0,0.2)\"},x:{type:ControlType.Number,defaultValue:0},y:{type:ControlType.Number,defaultValue:20},blur:{type:ControlType.Number,defaultValue:40},spread:{type:ControlType.Number,defaultValue:0}}},backgroundColor:{title:\"Background\",type:ControlType.Color,defaultValue:\"#FFF\"},[animationKeyFromLayout(SearchLayoutType.QuickMenu)]:{title:\"Animation\",type:ControlType.Object,icon:\"effect\",hidden:({layoutType})=>layoutType!==SearchLayoutType.QuickMenu,optional:true,buttonTitle:\"Options\",controls:{opacity:{type:ControlType.Number,defaultValue:.5,step:.1,min:0,max:1},scale:{type:ControlType.Number,defaultValue:.75,step:.1,min:0,max:2},// rotate: {\n//     type: ControlType.Number,\n//     defaultValue: 0,\n//     min: -360,\n//     max: 360,\n// },\nx:{type:ControlType.Number,defaultValue:0,min:-500,max:500},y:{type:ControlType.Number,defaultValue:0,min:-500,max:500},transition:{type:ControlType.Transition}}},[animationKeyFromLayout(SearchLayoutType.FixedTop)]:{title:\"Animation\",type:ControlType.Object,icon:\"effect\",buttonTitle:\"Options\",hidden:({layoutType})=>layoutType!==SearchLayoutType.FixedTop,optional:true,controls:{opacity:{type:ControlType.Number,defaultValue:.8,step:.1,min:0,max:1},y:{type:ControlType.Number,defaultValue:0,min:-100,max:100},transition:{type:ControlType.Transition}}},[animationKeyFromLayout(SearchLayoutType.Sidebar)]:{title:\"Animation\",type:ControlType.Object,icon:\"effect\",buttonTitle:\"Options\",hidden:({layoutType})=>layoutType!==SearchLayoutType.Sidebar,optional:true,controls:{opacity:{type:ControlType.Number,defaultValue:.8,step:.1,min:0,max:1},x:{type:ControlType.Number,defaultValue:0,min:-1e3,max:1e3},transition:{type:ControlType.Transition}}}}},resultOptions:{title:\"Results\",buttonTitle:\"Fonts, Style\",type:ControlType.Object,defaultValue:{},// description:\n//     \"Learn more about how to use Site Search [here](https://framer.com/learn/site-search)\",\ncontrols:{itemType:{title:\"Style\",type:ControlType.Enum,options:Object.values(SearchResultItemType),optionTitles:Object.keys(SearchResultItemType).map(titleCase),defaultValue:SearchResultItemType.FullWidth},titleFont:{title:\"Title\",// @ts-ignore - Internal\ntype:ControlType.Font,defaultValue:{fontSize:15},displayFontSize:true},titleColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"#333\"},titleType:{title:\"Content\",type:ControlType.Enum,options:Object.values(SearchResultTitleType),optionTitles:Object.keys(SearchResultTitleType).map(titleCase),defaultValue:SearchResultTitleType.H1,displaySegmentedControl:true},subtitleOptions:{type:ControlType.Object,title:\"Subtitle\",buttonTitle:\"Font, Content\",controls:{subtitleFont:{title:\"Font\",// @ts-ignore - Internal\ntype:ControlType.Font,defaultValue:{fontSize:13},displayFontSize:true},subtitleColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0, 0, 0, 0.4)\"},subtitleType:{title:\"Content\",type:ControlType.Enum,options:Object.values(SearchResultSubtitleType),optionTitles:Object.keys(SearchResultSubtitleType).map(titleCase),defaultValue:SearchResultSubtitleType.Path}}}}},backdropOptions:{title:\"Backdrop\",type:ControlType.Object,buttonTitle:\"Color, Z Index\",controls:{backgroundColor:{title:\"Color\",type:ControlType.Color,defaultValue:\"rgba(0, 0, 0, 0.8)\"},zIndex:{title:\"Z Index\",type:ControlType.Number,defaultValue:10,displayStepper:true,min:0,max:10},transition:{type:ControlType.Transition}}}});EntryPoint.displayName=\"Search\";\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"EntryPoint\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"40\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"*\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"40\"}},\"ResponsiveImage\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Shadow\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"EntryPointProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"WindowAnimation\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (8e1ebfe)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"CUSTOMV2;Canela Deck Trial Light\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Canela Deck Trial Light\",source:\"custom\",style:\"normal\",uiFamilyName:\"Canela Deck Trial\",url:\"https://framerusercontent.com/assets/ljkWpz5VnVJ61kJaNFE4z10DFc8.woff2\",weight:\"300\"}]}];export const css=['.framer-1kaOh .framer-styles-preset-1yzozv2:not(.rich-text-wrapper), .framer-1kaOh .framer-styles-preset-1yzozv2.rich-text-wrapper p { --framer-font-family: \"Canela Deck Trial Light\", \"Canela Deck Trial Light Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: calc(var(--framer-root-font-size, 1rem) * 1.5); --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 300; --framer-letter-spacing: 0em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #333333; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }','@media (max-width: 1199px) and (min-width: 810px) { .framer-1kaOh .framer-styles-preset-1yzozv2:not(.rich-text-wrapper), .framer-1kaOh .framer-styles-preset-1yzozv2.rich-text-wrapper p { --framer-font-family: \"Canela Deck Trial Light\", \"Canela Deck Trial Light Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: calc(var(--framer-root-font-size, 1rem) * 1.2); --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 300; --framer-letter-spacing: 0em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #333333; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }','@media (max-width: 809px) and (min-width: 0px) { .framer-1kaOh .framer-styles-preset-1yzozv2:not(.rich-text-wrapper), .framer-1kaOh .framer-styles-preset-1yzozv2.rich-text-wrapper p { --framer-font-family: \"Canela Deck Trial Light\", \"Canela Deck Trial Light Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: calc(var(--framer-root-font-size, 1rem) * 0.96); --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 300; --framer-letter-spacing: 0em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #333333; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-1kaOh\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (8e1ebfe)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-VjEAV .framer-styles-preset-1u3rffp:not(.rich-text-wrapper), .framer-VjEAV .framer-styles-preset-1u3rffp.rich-text-wrapper a { --framer-link-current-text-color: var(--token-a57f3d5a-1a00-4c3a-8cf1-76c34fccb57c, #304438); --framer-link-hover-text-color: var(--token-a57f3d5a-1a00-4c3a-8cf1-76c34fccb57c, #304438); --framer-link-text-color: var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, #030303); }\"];export const className=\"framer-VjEAV\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (8e1ebfe)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-EYTql .framer-styles-preset-147ubbm:not(.rich-text-wrapper), .framer-EYTql .framer-styles-preset-147ubbm.rich-text-wrapper a { --framer-link-current-text-color: var(--token-c9aad3ae-55ca-4a80-adb7-33ceb44b5272, #5c7956); --framer-link-hover-text-color: #b6ccb1; --framer-link-text-color: var(--token-db64ccb5-8084-4ef1-b335-93ac108d8476, #ffffff); }\"];export const className=\"framer-EYTql\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (8e1ebfe)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,SVG,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const cycleOrder=[\"ebY7N3MIw\",\"B0yg77hNn\",\"ZK9ujIR3m\",\"seqwEWzWC\"];const serializationHash=\"framer-dIYpP\";const variantClassNames={B0yg77hNn:\"framer-v-jbdi0d\",ebY7N3MIw:\"framer-v-1b6ua6a\",seqwEWzWC:\"framer-v-u7nyx5\",ZK9ujIR3m:\"framer-v-iruap0\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Full:\"ebY7N3MIw\",Symbol:\"seqwEWzWC\",Variant:\"ZK9ujIR3m\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"ebY7N3MIw\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"ebY7N3MIw\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"B0yg77hNn\",\"seqwEWzWC\"].includes(baseVariant))return true;return false;};const isDisplayed1=()=>{if(baseVariant===\"seqwEWzWC\")return false;return true;};const isDisplayed2=()=>{if([\"B0yg77hNn\",\"seqwEWzWC\"].includes(baseVariant))return false;return true;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1b6ua6a\",className,classNames),\"data-framer-name\":\"Full\",layoutDependency:layoutDependency,layoutId:\"ebY7N3MIw\",ref:refBinding,style:{...style},...addPropertyOverrides({B0yg77hNn:{\"data-framer-name\":\"Symbol\"},seqwEWzWC:{\"data-framer-name\":\"Symbol\"},ZK9ujIR3m:{\"data-framer-name\":undefined}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsxs(SVG,{className:\"framer-jbfteb\",\"data-framer-name\":\"Symbol\",layoutDependency:layoutDependency,layoutId:\"DH5MwaRrg\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 33.727 40.117\" overflow=\"visible\"></svg>',withExternalLayout:true,...addPropertyOverrides({B0yg77hNn:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 33.727 40.117\" overflow=\"visible\"><g><path d=\"M 0 0 L 33.726 0 L 33.726 40.116 L 0 40.116 Z\" fill=\"transparent\"></path><path d=\"M 16.863 40.116 C 19.448 40.147 21.849 38.785 23.151 36.551 C 24.452 34.318 24.452 31.557 23.151 29.324 C 21.849 27.09 19.448 25.728 16.863 25.759 C 12.931 25.805 9.769 29.006 9.769 32.937 C 9.769 36.869 12.931 40.07 16.863 40.116 Z M 16.863 18.266 C 21.353 18.266 26.523 14.972 28.182 8.75 C 28.182 8.75 29.719 8.775 29.719 11.402 C 29.719 14.522 32.095 14.447 33.229 16.251 C 34.592 18.42 33.319 22.17 27.372 22.17 L 16.863 22.17\" fill=\"rgb(255,255,255)\"></path><path d=\"M 16.863 26.074 C 21.353 26.074 26.523 29.368 28.182 35.59 C 28.182 35.59 29.719 35.565 29.719 32.938 C 29.719 29.818 32.095 29.893 33.229 28.089 C 34.592 25.92 33.319 22.17 27.372 22.17 L 16.863 22.17 M 16.863 18.266 C 12.373 18.266 7.203 14.972 5.544 8.75 C 5.544 8.75 4.007 8.775 4.007 11.402 C 4.007 14.522 1.632 14.447 0.498 16.251 C -0.865 18.42 0.408 22.17 6.354 22.17 L 16.864 22.17\" fill=\"rgb(255,255,255)\"></path><path d=\"M 16.863 22.17 L 6.353 22.17 C 0.408 22.17 -0.865 25.92 0.498 28.089 C 1.632 29.893 4.008 29.818 4.008 32.938 C 4.008 35.565 5.544 35.59 5.544 35.59 C 7.204 29.368 12.374 26.074 16.864 26.074 M 22.397 7.835 C 21.62 6.692 21.734 5.803 20.813 4.501 C 19.632 2.832 17.909 2.411 16.863 0 L 16.863 18.58 C 19.304 18.58 21.578 17.338 22.896 15.284 L 22.903 15.284 C 24.453 12.844 24.045 10.257 22.397 7.835 Z\" fill=\"rgb(255,255,255)\"></path><path d=\"M 11.329 7.835 C 12.106 6.692 11.992 5.803 12.914 4.501 C 14.094 2.832 15.817 2.411 16.864 0 L 16.864 18.58 C 14.423 18.58 12.149 17.338 10.831 15.284 L 10.824 15.284 C 9.274 12.844 9.682 10.257 11.329 7.835 Z\" fill=\"rgb(255,255,255)\"></path></g></svg>'},seqwEWzWC:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 33.727 40.117\" overflow=\"visible\"><g><path d=\"M 16.863 40.116 C 19.448 40.147 21.849 38.785 23.151 36.551 C 24.452 34.318 24.452 31.557 23.151 29.324 C 21.849 27.09 19.448 25.728 16.863 25.759 C 12.931 25.805 9.769 29.006 9.769 32.937 C 9.769 36.869 12.931 40.07 16.863 40.116 Z M 16.863 18.266 C 21.353 18.266 26.523 14.972 28.182 8.75 C 28.182 8.75 29.719 8.775 29.719 11.402 C 29.719 14.522 32.095 14.447 33.229 16.251 C 34.592 18.42 33.319 22.17 27.372 22.17 L 16.863 22.17\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path><path d=\"M 16.863 26.074 C 21.353 26.074 26.523 29.368 28.182 35.59 C 28.182 35.59 29.719 35.565 29.719 32.938 C 29.719 29.818 32.095 29.893 33.229 28.089 C 34.592 25.92 33.319 22.17 27.372 22.17 L 16.863 22.17 M 16.863 18.266 C 12.373 18.266 7.203 14.972 5.544 8.75 C 5.544 8.75 4.007 8.775 4.007 11.402 C 4.007 14.522 1.632 14.447 0.498 16.251 C -0.865 18.42 0.408 22.17 6.354 22.17 L 16.864 22.17\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path><path d=\"M 16.863 22.17 L 6.353 22.17 C 0.408 22.17 -0.865 25.92 0.498 28.089 C 1.632 29.893 4.008 29.818 4.008 32.938 C 4.008 35.565 5.544 35.59 5.544 35.59 C 7.204 29.368 12.374 26.074 16.864 26.074 M 22.397 7.835 C 21.62 6.692 21.734 5.803 20.813 4.501 C 19.632 2.832 17.909 2.411 16.863 0 L 16.863 18.58 C 19.304 18.58 21.578 17.338 22.896 15.284 L 22.903 15.284 C 24.453 12.844 24.045 10.257 22.397 7.835 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path><path d=\"M 11.329 7.835 C 12.106 6.692 11.992 5.803 12.914 4.501 C 14.094 2.832 15.817 2.411 16.864 0 L 16.864 18.58 C 14.423 18.58 12.149 17.338 10.831 15.284 L 10.824 15.284 C 9.274 12.844 9.682 10.257 11.329 7.835 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path></g></svg>'}},baseVariant,gestureVariant),children:[isDisplayed1()&&/*#__PURE__*/_jsx(SVG,{className:\"framer-130fuc9\",layoutDependency:layoutDependency,layoutId:\"s849asPsE\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 33.726 40.116\" overflow=\"visible\"><path d=\"M 0 0 L 33.726 0 L 33.726 40.116 L 0 40.116 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsxs(SVG,{className:\"framer-13wi96b\",layoutDependency:layoutDependency,layoutId:\"jhrQzRSfB\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 23.958 31.367\" overflow=\"visible\"><path d=\"M 7.094 31.366 C 9.679 31.397 12.081 30.035 13.382 27.801 C 14.683 25.568 14.683 22.807 13.382 20.574 C 12.081 18.34 9.679 16.978 7.094 17.009 C 3.163 17.055 0 20.256 0 24.187 C 0 28.119 3.163 31.32 7.094 31.366 Z M 7.094 9.516 C 11.584 9.516 16.754 6.222 18.413 0 C 18.413 0 19.95 0.025 19.95 2.652 C 19.95 5.772 22.326 5.697 23.46 7.501 C 24.823 9.67 23.55 13.42 17.603 13.42 L 7.094 13.42\" fill=\"rgb(255,255,255)\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({seqwEWzWC:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 23.958 31.367\" overflow=\"visible\"><path d=\"M 7.094 31.366 C 9.679 31.397 12.081 30.035 13.382 27.801 C 14.683 25.568 14.683 22.807 13.382 20.574 C 12.081 18.34 9.679 16.978 7.094 17.009 C 3.163 17.055 0 20.256 0 24.187 C 0 28.119 3.163 31.32 7.094 31.366 Z M 7.094 9.516 C 11.584 9.516 16.754 6.222 18.413 0 C 18.413 0 19.95 0.025 19.95 2.652 C 19.95 5.772 22.326 5.697 23.46 7.501 C 24.823 9.67 23.55 13.42 17.603 13.42 L 7.094 13.42\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-l5e1nn\",layoutDependency:layoutDependency,layoutId:\"q287V4peJ\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 14.358 14.358\" overflow=\"visible\"><path d=\"M 7.094 14.358 C 9.679 14.388 12.081 13.027 13.382 10.793 C 14.683 8.559 14.683 5.799 13.382 3.565 C 12.081 1.331 9.679 -0.03 7.094 0.001 C 3.163 0.047 0 3.247 0 7.179 C 0 11.111 3.163 14.311 7.094 14.358 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-13xfmi6\",layoutDependency:layoutDependency,layoutId:\"Dq_NJajEj\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 16.864 13.42\" overflow=\"visible\"><path d=\"M 0 9.516 C 4.49 9.516 9.66 6.222 11.319 0 C 11.319 0 12.856 0.025 12.856 2.652 C 12.856 5.772 15.232 5.697 16.366 7.501 C 17.729 9.67 16.456 13.42 10.509 13.42 L 0 13.42\" fill=\"transparent\"></path></svg>',withExternalLayout:true})]}),/*#__PURE__*/_jsxs(SVG,{className:\"framer-1ohesj7\",layoutDependency:layoutDependency,layoutId:\"htVKBjztd\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 33.727 26.84\" overflow=\"visible\"><path d=\"M 16.863 17.324 C 21.353 17.324 26.523 20.618 28.182 26.84 C 28.182 26.84 29.719 26.815 29.719 24.188 C 29.719 21.068 32.095 21.143 33.229 19.339 C 34.592 17.17 33.319 13.42 27.372 13.42 L 16.863 13.42 M 16.863 9.516 C 12.373 9.516 7.203 6.222 5.544 0 C 5.544 0 4.007 0.025 4.007 2.652 C 4.007 5.772 1.632 5.697 0.498 7.501 C -0.865 9.67 0.408 13.42 6.354 13.42 L 16.864 13.42\" fill=\"rgb(255,255,255)\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({seqwEWzWC:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 33.727 26.84\" overflow=\"visible\"><path d=\"M 16.863 17.324 C 21.353 17.324 26.523 20.618 28.182 26.84 C 28.182 26.84 29.719 26.815 29.719 24.188 C 29.719 21.068 32.095 21.143 33.229 19.339 C 34.592 17.17 33.319 13.42 27.372 13.42 L 16.863 13.42 M 16.863 9.516 C 12.373 9.516 7.203 6.222 5.544 0 C 5.544 0 4.007 0.025 4.007 2.652 C 4.007 5.772 1.632 5.697 0.498 7.501 C -0.865 9.67 0.408 13.42 6.354 13.42 L 16.864 13.42\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-177t0dw\",layoutDependency:layoutDependency,layoutId:\"R1MQgaQQF\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 16.864 13.42\" overflow=\"visible\"><path d=\"M 0 3.904 C 4.49 3.904 9.66 7.198 11.319 13.42 C 11.319 13.42 12.856 13.395 12.856 10.768 C 12.856 7.648 15.232 7.723 16.366 5.919 C 17.729 3.75 16.456 0 10.509 0 L 0 0\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1w87d1p\",layoutDependency:layoutDependency,layoutId:\"eryGeOvtx\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 16.864 13.42\" overflow=\"visible\"><path d=\"M 16.863 9.516 C 12.373 9.516 7.203 6.222 5.544 0 C 5.544 0 4.007 0.025 4.007 2.652 C 4.007 5.772 1.632 5.697 0.498 7.501 C -0.865 9.67 0.408 13.42 6.354 13.42 L 16.864 13.42\" fill=\"transparent\"></path></svg>',withExternalLayout:true})]}),/*#__PURE__*/_jsxs(SVG,{className:\"framer-14ml1l1\",layoutDependency:layoutDependency,layoutId:\"SkPJx84dr\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 23.873 35.59\" overflow=\"visible\"><path d=\"M 16.863 22.17 L 6.353 22.17 C 0.408 22.17 -0.865 25.92 0.498 28.089 C 1.632 29.893 4.008 29.818 4.008 32.938 C 4.008 35.565 5.544 35.59 5.544 35.59 C 7.204 29.368 12.374 26.074 16.864 26.074 M 22.397 7.835 C 21.62 6.692 21.734 5.803 20.813 4.501 C 19.632 2.832 17.909 2.411 16.863 0 L 16.863 18.58 C 19.304 18.58 21.577 17.338 22.896 15.284 L 22.903 15.284 C 24.453 12.844 24.045 10.257 22.397 7.835 Z\" fill=\"rgb(255,255,255)\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({seqwEWzWC:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 23.873 35.59\" overflow=\"visible\"><path d=\"M 16.863 22.17 L 6.353 22.17 C 0.408 22.17 -0.865 25.92 0.498 28.089 C 1.632 29.893 4.008 29.818 4.008 32.938 C 4.008 35.565 5.544 35.59 5.544 35.59 C 7.204 29.368 12.374 26.074 16.864 26.074 M 22.397 7.835 C 21.62 6.692 21.734 5.803 20.813 4.501 C 19.632 2.832 17.909 2.411 16.863 0 L 16.863 18.58 C 19.304 18.58 21.577 17.338 22.896 15.284 L 22.903 15.284 C 24.453 12.844 24.045 10.257 22.397 7.835 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-wt4gvd\",layoutDependency:layoutDependency,layoutId:\"hFLYkHXum\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 16.864 13.42\" overflow=\"visible\"><path d=\"M 16.863 0 L 6.353 0 C 0.408 0 -0.865 3.75 0.498 5.919 C 1.632 7.723 4.008 7.648 4.008 10.768 C 4.008 13.395 5.544 13.42 5.544 13.42 C 7.204 7.198 12.374 3.904 16.864 3.904\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1xanqwt\",layoutDependency:layoutDependency,layoutId:\"t9M4i2Q0_\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 7.01 18.58\" overflow=\"visible\"><path d=\"M 5.534 7.835 C 4.757 6.692 4.871 5.803 3.95 4.501 C 2.769 2.832 1.046 2.411 0 0 L 0 18.58 C 2.441 18.58 4.715 17.338 6.033 15.284 L 6.04 15.284 C 7.59 12.844 7.182 10.257 5.534 7.835 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true})]}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1bhngr6\",layoutDependency:layoutDependency,layoutId:\"Gct1G8Nv8\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 7.011 18.58\" overflow=\"visible\"><path d=\"M 1.476 7.835 C 2.253 6.692 2.139 5.803 3.061 4.501 C 4.241 2.832 5.964 2.411 7.011 0 L 7.011 18.58 C 4.569 18.58 2.296 17.338 0.978 15.284 L 0.971 15.284 C -0.579 12.844 -0.171 10.257 1.476 7.835 Z\" fill=\"rgb(255,255,255)\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({seqwEWzWC:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 7.011 18.58\" overflow=\"visible\"><path d=\"M 1.476 7.835 C 2.253 6.692 2.139 5.803 3.061 4.501 C 4.241 2.832 5.964 2.411 7.011 0 L 7.011 18.58 C 4.569 18.58 2.296 17.338 0.978 15.284 L 0.971 15.284 C -0.579 12.844 -0.171 10.257 1.476 7.835 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path></svg>'}},baseVariant,gestureVariant)})]}),isDisplayed2()&&/*#__PURE__*/_jsxs(SVG,{className:\"framer-1up7zd5\",\"data-framer-name\":\"Full\",layoutDependency:layoutDependency,layoutId:\"cCggAqvkk\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 82.046 78.984\" overflow=\"visible\"><g><path d=\"M 0.436 78.984 L 0.436 78.93 C 0.791 77.817 0.873 76.836 0.873 75.06 L 0.873 63.873 C 0.873 62.521 0.463 61.752 0 61.196 L 0 61.142 L 2.426 59.844 L 2.426 61.858 L 2.563 61.885 C 3.19 60.798 4.253 59.977 5.535 59.977 C 7.852 59.977 9.188 62.495 9.188 66.1 C 9.188 70.05 7.552 73.417 4.499 73.417 C 3.654 73.417 2.999 73.151 2.508 72.807 L 2.508 75.034 C 2.508 76.81 2.536 77.817 2.945 78.93 L 2.945 78.984 Z M 4.744 72.939 C 6.489 72.939 7.416 70.607 7.416 66.816 C 7.416 63.237 6.544 61.302 4.635 61.302 C 3.708 61.302 2.917 61.832 2.508 62.415 L 2.508 70.235 C 2.89 72.197 3.79 72.939 4.744 72.939 Z M 15.76 60.241 L 15.951 62.654 L 15.815 62.707 C 14.833 60.931 13.988 60.454 13.143 60.454 C 12.134 60.454 11.588 61.169 11.588 62.071 C 11.588 64.589 16.523 66.179 16.523 69.917 C 16.523 71.985 15.132 73.417 12.925 73.417 C 12.052 73.417 11.125 73.178 10.498 72.913 L 10.307 70.103 L 10.416 70.05 C 11.37 72.064 12.27 72.939 13.442 72.939 C 14.642 72.939 15.161 72.012 15.161 70.845 C 15.161 67.452 10.47 66.339 10.47 62.972 C 10.47 61.036 11.916 59.976 13.797 59.976 C 14.451 59.976 15.242 60.109 15.76 60.241 Z M 17.47 78.984 L 17.47 76.889 C 18.205 76.836 19.759 76.359 20.414 73.921 L 20.659 72.992 L 18.042 63.211 C 17.606 61.646 17.333 60.984 16.869 60.427 L 16.869 60.374 L 19.814 60.374 L 19.814 60.427 C 19.515 60.931 19.351 61.806 19.705 63.132 L 21.532 69.917 L 23.304 63.581 C 23.713 62.018 23.331 60.957 22.949 60.427 L 22.949 60.374 L 25.021 60.374 L 25.021 60.427 C 24.422 61.222 24.258 61.779 23.849 63.29 L 20.714 74.477 C 19.787 77.737 18.832 78.612 17.47 78.984 Z M 25.969 73.019 L 25.969 72.966 C 26.27 72.25 26.378 71.534 26.378 70.023 L 26.378 55.602 C 26.378 54.516 26.024 53.906 25.56 53.429 L 25.56 53.376 L 28.042 52.368 L 28.042 70.023 C 28.042 71.508 28.178 72.276 28.478 72.966 L 28.478 73.019 Z M 34.213 73.417 C 31.705 73.417 29.769 70.368 29.769 66.709 C 29.769 63.051 31.705 59.977 34.213 59.977 C 36.748 59.977 38.684 63.051 38.684 66.709 C 38.684 70.368 36.748 73.417 34.213 73.417 Z M 34.213 72.939 C 36.121 72.939 36.858 70.077 36.858 66.709 C 36.858 63.317 36.094 60.454 34.213 60.454 C 32.332 60.454 31.596 63.343 31.596 66.709 C 31.596 70.103 32.332 72.939 34.213 72.939 Z M 40.187 78.984 L 40.187 78.93 C 40.542 77.817 40.624 76.836 40.624 75.06 L 40.624 63.873 C 40.624 62.521 40.215 61.752 39.751 61.196 L 39.751 61.142 L 42.178 59.844 L 42.178 61.858 L 42.313 61.885 C 42.941 60.798 44.005 59.977 45.286 59.977 C 47.603 59.977 48.939 62.495 48.939 66.1 C 48.939 70.05 47.303 73.417 44.25 73.417 C 43.404 73.417 42.751 73.151 42.259 72.807 L 42.259 75.034 C 42.259 76.81 42.287 77.817 42.696 78.93 L 42.696 78.984 L 40.188 78.984 Z M 44.495 72.939 C 46.24 72.939 47.167 70.607 47.167 66.816 C 47.167 63.237 46.294 61.302 44.386 61.302 C 43.459 61.302 42.669 61.832 42.259 62.415 L 42.259 70.235 C 42.641 72.197 43.541 72.939 44.495 72.939 Z M 54.854 71.932 C 56.135 71.932 57.089 71.031 57.689 69.864 L 57.798 69.917 C 57.307 71.826 56.108 73.417 54.199 73.417 C 51.746 73.417 50.137 70.659 50.137 66.922 C 50.137 62.68 52.182 59.977 54.281 59.977 C 56.38 59.977 57.853 62.654 57.744 65.146 L 51.773 65.146 C 51.746 65.411 51.746 65.676 51.746 65.941 C 51.746 69.679 52.837 71.932 54.854 71.932 Z M 54.199 60.454 C 52.918 60.454 51.991 62.098 51.8 64.722 L 56.053 64.589 L 56.053 64.297 C 56.053 61.646 55.29 60.454 54.199 60.454 Z M 63.939 59.977 C 64.548 59.981 65.151 60.107 65.711 60.347 L 65.711 55.602 C 65.711 54.516 65.329 53.906 64.893 53.429 L 64.893 53.376 L 67.346 52.368 L 67.346 69.281 C 67.346 71.588 67.592 72.038 68.246 72.568 L 68.246 72.621 L 65.793 73.337 L 65.793 70.951 C 65.302 72.197 64.211 73.417 62.684 73.417 C 60.367 73.417 59.031 70.792 59.031 67.267 C 59.031 63.29 60.666 59.977 63.939 59.977 Z M 60.803 66.577 C 60.803 70.129 61.73 72.091 63.557 72.091 C 64.456 72.091 65.193 71.508 65.711 70.607 L 65.711 63.927 C 65.711 61.169 64.538 60.454 63.584 60.454 C 61.785 60.454 60.803 62.813 60.803 66.577 Z M 70.755 57.405 C 70.155 57.405 69.664 56.928 69.664 56.318 C 69.664 55.761 70.155 55.258 70.755 55.258 C 71.381 55.258 71.873 55.761 71.873 56.318 C 71.873 56.928 71.381 57.405 70.755 57.405 Z M 69.609 73.019 L 69.609 72.966 C 69.909 71.932 70.046 71.004 70.046 69.387 L 70.046 63.608 C 70.046 62.389 69.664 61.646 69.173 61.117 L 69.173 61.037 L 71.682 59.844 L 71.682 69.361 C 71.682 71.005 71.736 71.933 72.118 72.967 L 72.118 73.019 L 69.609 73.019 Z M 75.857 73.417 C 74.576 73.417 73.54 72.595 73.54 71.004 C 73.54 68.354 76.485 67.028 78.693 66.445 L 78.693 63.263 C 78.693 62.044 78.229 61.196 76.702 61.196 C 75.748 61.196 74.767 61.567 74.003 62.256 L 73.894 62.124 C 74.685 60.851 75.966 59.977 77.602 59.977 C 79.729 59.977 80.356 61.329 80.356 62.919 L 80.356 71.19 C 80.356 71.747 80.547 72.171 81.092 72.171 C 81.447 72.171 81.719 72.012 81.991 71.721 L 82.046 71.8 C 81.828 72.41 81.31 73.338 80.22 73.338 C 79.238 73.338 78.747 72.595 78.72 71.721 C 78.12 72.622 77.111 73.417 75.857 73.417 Z M 75.039 70.342 C 75.039 71.349 75.53 72.197 76.702 72.197 C 77.52 72.197 78.257 71.852 78.693 71.402 L 78.693 66.868 C 76.866 67.479 75.039 68.512 75.039 70.341 Z\" fill=\"rgb(255,255,255)\"></path><g transform=\"translate(23.53 0)\"><path d=\"M 0 23.544 L 34.589 23.544 L 34.589 64.61 L 0 64.61 Z\" fill=\"transparent\"></path><path d=\"M 17.295 41.066 C 21.361 41.066 24.657 37.776 24.657 33.717 C 24.657 29.658 21.361 26.369 17.295 26.369 C 13.228 26.369 9.933 29.658 9.933 33.717 C 9.933 37.776 13.228 41.066 17.295 41.066 Z M 17.294 18.698 C 21.899 18.698 27.201 15.326 28.903 8.957 C 28.903 8.957 30.479 8.983 30.479 11.672 C 30.479 14.866 32.916 14.789 34.078 16.636 C 35.476 18.856 34.171 22.694 28.073 22.694 L 17.294 22.694\" fill=\"rgb(255,255,255)\"></path><path d=\"M 17.294 26.691 C 21.899 26.691 27.201 30.063 28.903 36.432 C 28.903 36.432 30.479 36.407 30.479 33.717 C 30.479 30.523 32.916 30.6 34.078 28.754 C 35.476 26.533 34.171 22.694 28.073 22.694 L 17.294 22.694 M 17.294 18.698 C 12.69 18.698 7.388 15.326 5.686 8.957 C 5.686 8.957 4.11 8.983 4.11 11.672 C 4.11 14.866 1.674 14.789 0.511 16.636 C -0.887 18.856 0.418 22.694 6.517 22.694 L 17.294 22.694 M 17.294 22.694 L 6.517 22.694 C 0.418 22.694 -0.887 26.533 0.511 28.754 C 1.674 30.6 4.11 30.523 4.11 33.717 C 4.11 36.407 5.686 36.432 5.686 36.432 C 7.388 30.063 12.69 26.691 17.294 26.691 M 22.97 8.021 C 22.173 6.85 22.29 5.94 21.345 4.608 C 20.133 2.9 18.367 2.467 17.295 0 L 17.295 19.02 C 19.892 19.02 22.171 17.674 23.481 15.646 L 23.488 15.646 C 25.078 13.147 24.659 10.5 22.97 8.02 Z\" fill=\"rgb(255,255,255)\"></path><path d=\"M 11.619 8.021 C 12.416 6.85 12.299 5.94 13.244 4.608 C 14.456 2.9 16.222 2.467 17.294 0 L 17.294 19.02 C 14.697 19.02 12.418 17.674 11.108 15.646 L 11.101 15.646 C 9.511 13.147 9.93 10.5 11.619 8.02 Z\" fill=\"rgb(255,255,255)\"></path></g></g></svg>',withExternalLayout:true,...addPropertyOverrides({ZK9ujIR3m:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 82.046 78.984\" overflow=\"visible\"><g><path d=\"M 0.436 78.984 L 0.436 78.93 C 0.791 77.817 0.873 76.836 0.873 75.06 L 0.873 63.873 C 0.873 62.521 0.463 61.752 0 61.196 L 0 61.142 L 2.426 59.844 L 2.426 61.858 L 2.563 61.885 C 3.19 60.798 4.253 59.977 5.535 59.977 C 7.852 59.977 9.188 62.495 9.188 66.1 C 9.188 70.05 7.552 73.417 4.499 73.417 C 3.654 73.417 2.999 73.151 2.508 72.807 L 2.508 75.034 C 2.508 76.81 2.536 77.817 2.945 78.93 L 2.945 78.984 Z M 4.744 72.939 C 6.489 72.939 7.416 70.607 7.416 66.816 C 7.416 63.237 6.544 61.302 4.635 61.302 C 3.708 61.302 2.917 61.832 2.508 62.415 L 2.508 70.235 C 2.89 72.197 3.79 72.939 4.744 72.939 Z M 15.76 60.241 L 15.951 62.654 L 15.815 62.707 C 14.833 60.931 13.988 60.454 13.143 60.454 C 12.134 60.454 11.588 61.169 11.588 62.071 C 11.588 64.589 16.523 66.179 16.523 69.917 C 16.523 71.985 15.132 73.417 12.925 73.417 C 12.052 73.417 11.125 73.178 10.498 72.913 L 10.307 70.103 L 10.416 70.05 C 11.37 72.064 12.27 72.939 13.442 72.939 C 14.642 72.939 15.161 72.012 15.161 70.845 C 15.161 67.452 10.47 66.339 10.47 62.972 C 10.47 61.036 11.916 59.976 13.797 59.976 C 14.451 59.976 15.242 60.109 15.76 60.241 Z M 17.47 78.984 L 17.47 76.889 C 18.205 76.836 19.759 76.359 20.414 73.921 L 20.659 72.992 L 18.042 63.211 C 17.606 61.646 17.333 60.984 16.869 60.427 L 16.869 60.374 L 19.814 60.374 L 19.814 60.427 C 19.515 60.931 19.351 61.806 19.705 63.132 L 21.532 69.917 L 23.304 63.581 C 23.713 62.018 23.331 60.957 22.949 60.427 L 22.949 60.374 L 25.021 60.374 L 25.021 60.427 C 24.422 61.222 24.258 61.779 23.849 63.29 L 20.714 74.477 C 19.787 77.737 18.832 78.612 17.47 78.984 Z M 25.969 73.019 L 25.969 72.966 C 26.27 72.25 26.378 71.534 26.378 70.023 L 26.378 55.602 C 26.378 54.516 26.024 53.906 25.56 53.429 L 25.56 53.376 L 28.042 52.368 L 28.042 70.023 C 28.042 71.508 28.178 72.276 28.478 72.966 L 28.478 73.019 Z M 34.213 73.417 C 31.705 73.417 29.769 70.368 29.769 66.709 C 29.769 63.051 31.705 59.977 34.213 59.977 C 36.748 59.977 38.684 63.051 38.684 66.709 C 38.684 70.368 36.748 73.417 34.213 73.417 Z M 34.213 72.939 C 36.121 72.939 36.858 70.077 36.858 66.709 C 36.858 63.317 36.094 60.454 34.213 60.454 C 32.332 60.454 31.596 63.343 31.596 66.709 C 31.596 70.103 32.332 72.939 34.213 72.939 Z M 40.187 78.984 L 40.187 78.93 C 40.542 77.817 40.624 76.836 40.624 75.06 L 40.624 63.873 C 40.624 62.521 40.215 61.752 39.751 61.196 L 39.751 61.142 L 42.178 59.844 L 42.178 61.858 L 42.313 61.885 C 42.941 60.798 44.005 59.977 45.286 59.977 C 47.603 59.977 48.939 62.495 48.939 66.1 C 48.939 70.05 47.303 73.417 44.25 73.417 C 43.404 73.417 42.751 73.151 42.259 72.807 L 42.259 75.034 C 42.259 76.81 42.287 77.817 42.696 78.93 L 42.696 78.984 L 40.188 78.984 Z M 44.495 72.939 C 46.24 72.939 47.167 70.607 47.167 66.816 C 47.167 63.237 46.294 61.302 44.386 61.302 C 43.459 61.302 42.669 61.832 42.259 62.415 L 42.259 70.235 C 42.641 72.197 43.541 72.939 44.495 72.939 Z M 54.854 71.932 C 56.135 71.932 57.089 71.031 57.689 69.864 L 57.798 69.917 C 57.307 71.826 56.108 73.417 54.199 73.417 C 51.746 73.417 50.137 70.659 50.137 66.922 C 50.137 62.68 52.182 59.977 54.281 59.977 C 56.38 59.977 57.853 62.654 57.744 65.146 L 51.773 65.146 C 51.746 65.411 51.746 65.676 51.746 65.941 C 51.746 69.679 52.837 71.932 54.854 71.932 Z M 54.199 60.454 C 52.918 60.454 51.991 62.098 51.8 64.722 L 56.053 64.589 L 56.053 64.297 C 56.053 61.646 55.29 60.454 54.199 60.454 Z M 63.939 59.977 C 64.548 59.981 65.151 60.107 65.711 60.347 L 65.711 55.602 C 65.711 54.516 65.329 53.906 64.893 53.429 L 64.893 53.376 L 67.346 52.368 L 67.346 69.281 C 67.346 71.588 67.592 72.038 68.246 72.568 L 68.246 72.621 L 65.793 73.337 L 65.793 70.951 C 65.302 72.197 64.211 73.417 62.684 73.417 C 60.367 73.417 59.031 70.792 59.031 67.267 C 59.031 63.29 60.666 59.977 63.939 59.977 Z M 60.803 66.577 C 60.803 70.129 61.73 72.091 63.557 72.091 C 64.456 72.091 65.193 71.508 65.711 70.607 L 65.711 63.927 C 65.711 61.169 64.538 60.454 63.584 60.454 C 61.785 60.454 60.803 62.813 60.803 66.577 Z M 70.755 57.405 C 70.155 57.405 69.664 56.928 69.664 56.318 C 69.664 55.761 70.155 55.258 70.755 55.258 C 71.381 55.258 71.873 55.761 71.873 56.318 C 71.873 56.928 71.381 57.405 70.755 57.405 Z M 69.609 73.019 L 69.609 72.966 C 69.909 71.932 70.046 71.004 70.046 69.387 L 70.046 63.608 C 70.046 62.389 69.664 61.646 69.173 61.117 L 69.173 61.037 L 71.682 59.844 L 71.682 69.361 C 71.682 71.005 71.736 71.933 72.118 72.967 L 72.118 73.019 L 69.609 73.019 Z M 75.857 73.417 C 74.576 73.417 73.54 72.595 73.54 71.004 C 73.54 68.354 76.485 67.028 78.693 66.445 L 78.693 63.263 C 78.693 62.044 78.229 61.196 76.702 61.196 C 75.748 61.196 74.767 61.567 74.003 62.256 L 73.894 62.124 C 74.685 60.851 75.966 59.977 77.602 59.977 C 79.729 59.977 80.356 61.329 80.356 62.919 L 80.356 71.19 C 80.356 71.747 80.547 72.171 81.092 72.171 C 81.447 72.171 81.719 72.012 81.991 71.721 L 82.046 71.8 C 81.828 72.41 81.31 73.338 80.22 73.338 C 79.238 73.338 78.747 72.595 78.72 71.721 C 78.12 72.622 77.111 73.417 75.857 73.417 Z M 75.039 70.342 C 75.039 71.349 75.53 72.197 76.702 72.197 C 77.52 72.197 78.257 71.852 78.693 71.402 L 78.693 66.868 C 76.866 67.479 75.039 68.512 75.039 70.341 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path><g transform=\"translate(23.53 0)\"><path d=\"M 0 23.544 L 34.589 23.544 L 34.589 64.61 L 0 64.61 Z\" fill=\"transparent\"></path><path d=\"M 17.295 41.066 C 21.361 41.066 24.657 37.776 24.657 33.717 C 24.657 29.658 21.361 26.369 17.295 26.369 C 13.228 26.369 9.933 29.658 9.933 33.717 C 9.933 37.776 13.228 41.066 17.295 41.066 Z M 17.294 18.698 C 21.899 18.698 27.201 15.326 28.903 8.957 C 28.903 8.957 30.479 8.983 30.479 11.672 C 30.479 14.866 32.916 14.789 34.078 16.636 C 35.476 18.856 34.171 22.694 28.073 22.694 L 17.294 22.694\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path><path d=\"M 17.294 26.691 C 21.899 26.691 27.201 30.063 28.903 36.432 C 28.903 36.432 30.479 36.407 30.479 33.717 C 30.479 30.523 32.916 30.6 34.078 28.754 C 35.476 26.533 34.171 22.694 28.073 22.694 L 17.294 22.694 M 17.294 18.698 C 12.69 18.698 7.388 15.326 5.686 8.957 C 5.686 8.957 4.11 8.983 4.11 11.672 C 4.11 14.866 1.674 14.789 0.511 16.636 C -0.887 18.856 0.418 22.694 6.517 22.694 L 17.294 22.694 M 17.294 22.694 L 6.517 22.694 C 0.418 22.694 -0.887 26.533 0.511 28.754 C 1.674 30.6 4.11 30.523 4.11 33.717 C 4.11 36.407 5.686 36.432 5.686 36.432 C 7.388 30.063 12.69 26.691 17.294 26.691 M 22.97 8.021 C 22.173 6.85 22.29 5.94 21.345 4.608 C 20.133 2.9 18.367 2.467 17.295 0 L 17.295 19.02 C 19.892 19.02 22.171 17.674 23.481 15.646 L 23.488 15.646 C 25.078 13.147 24.659 10.5 22.97 8.02 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path><path d=\"M 11.619 8.021 C 12.416 6.85 12.299 5.94 13.244 4.608 C 14.456 2.9 16.222 2.467 17.294 0 L 17.294 19.02 C 14.697 19.02 12.418 17.674 11.108 15.646 L 11.101 15.646 C 9.511 13.147 9.93 10.5 11.619 8.02 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path></g></g></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(SVG,{className:\"framer-1i894vx\",layoutDependency:layoutDependency,layoutId:\"vOEqDxu42\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 82.046 26.615\" overflow=\"visible\"><path d=\"M 0.436 26.615 L 0.436 26.562 C 0.791 25.449 0.873 24.468 0.873 22.692 L 0.873 11.505 C 0.873 10.153 0.463 9.384 0 8.827 L 0 8.774 L 2.426 7.475 L 2.426 9.49 L 2.563 9.516 C 3.19 8.43 4.253 7.608 5.535 7.608 C 7.852 7.608 9.188 10.126 9.188 13.732 C 9.188 17.682 7.552 21.048 4.499 21.048 C 3.654 21.048 2.999 20.783 2.508 20.438 L 2.508 22.665 C 2.508 24.442 2.536 25.449 2.945 26.562 L 2.945 26.615 Z M 4.744 20.571 C 6.489 20.571 7.416 18.238 7.416 14.447 C 7.416 10.869 6.544 8.933 4.635 8.933 C 3.708 8.933 2.917 9.464 2.508 10.047 L 2.508 17.867 C 2.89 19.829 3.79 20.571 4.744 20.571 Z M 15.76 7.873 L 15.951 10.286 L 15.815 10.338 C 14.833 8.563 13.988 8.085 13.143 8.085 C 12.134 8.085 11.588 8.801 11.588 9.702 C 11.588 12.221 16.523 13.811 16.523 17.549 C 16.523 19.617 15.132 21.048 12.925 21.048 C 12.052 21.048 11.125 20.81 10.498 20.544 L 10.307 17.734 L 10.416 17.681 C 11.37 19.696 12.27 20.571 13.442 20.571 C 14.642 20.571 15.161 19.643 15.161 18.477 C 15.161 15.083 10.47 13.97 10.47 10.604 C 10.47 8.668 11.916 7.607 13.797 7.607 C 14.451 7.607 15.242 7.741 15.76 7.873 Z M 17.47 26.615 L 17.47 24.521 C 18.205 24.468 19.759 23.99 20.414 21.552 L 20.659 20.624 L 18.042 10.842 C 17.606 9.278 17.333 8.615 16.869 8.059 L 16.869 8.005 L 19.814 8.005 L 19.814 8.059 C 19.515 8.563 19.351 9.437 19.705 10.763 L 21.532 17.549 L 23.304 11.213 C 23.713 9.649 23.331 8.589 22.949 8.059 L 22.949 8.005 L 25.021 8.005 L 25.021 8.059 C 24.422 8.854 24.258 9.411 23.849 10.921 L 20.714 22.109 C 19.787 25.369 18.832 26.244 17.47 26.615 Z M 25.969 20.65 L 25.969 20.598 C 26.27 19.882 26.378 19.166 26.378 17.655 L 26.378 3.234 C 26.378 2.147 26.024 1.537 25.56 1.06 L 25.56 1.007 L 28.042 0 L 28.042 17.655 C 28.042 19.139 28.178 19.908 28.478 20.598 L 28.478 20.65 Z M 34.213 21.048 C 31.705 21.048 29.769 17.999 29.769 14.341 C 29.769 10.683 31.705 7.608 34.213 7.608 C 36.748 7.608 38.684 10.683 38.684 14.341 C 38.684 17.999 36.748 21.048 34.213 21.048 Z M 34.213 20.571 C 36.121 20.571 36.858 17.708 36.858 14.341 C 36.858 10.948 36.094 8.085 34.213 8.085 C 32.332 8.085 31.596 10.975 31.596 14.341 C 31.596 17.734 32.332 20.571 34.213 20.571 Z M 40.187 26.615 L 40.187 26.562 C 40.542 25.449 40.624 24.468 40.624 22.692 L 40.624 11.505 C 40.624 10.153 40.215 9.384 39.751 8.827 L 39.751 8.774 L 42.178 7.475 L 42.178 9.49 L 42.313 9.516 C 42.941 8.43 44.005 7.608 45.286 7.608 C 47.603 7.608 48.939 10.126 48.939 13.732 C 48.939 17.682 47.303 21.048 44.25 21.048 C 43.404 21.048 42.751 20.783 42.259 20.438 L 42.259 22.665 C 42.259 24.442 42.287 25.449 42.696 26.562 L 42.696 26.615 L 40.188 26.615 Z M 44.495 20.571 C 46.24 20.571 47.167 18.238 47.167 14.447 C 47.167 10.869 46.294 8.933 44.386 8.933 C 43.459 8.933 42.669 9.464 42.259 10.047 L 42.259 17.867 C 42.641 19.829 43.541 20.571 44.495 20.571 Z M 54.854 19.564 C 56.135 19.564 57.089 18.663 57.689 17.496 L 57.798 17.549 C 57.307 19.457 56.108 21.048 54.199 21.048 C 51.746 21.048 50.137 18.291 50.137 14.553 C 50.137 10.311 52.182 7.608 54.281 7.608 C 56.38 7.608 57.853 10.286 57.744 12.777 L 51.773 12.777 C 51.746 13.042 51.746 13.308 51.746 13.572 C 51.746 17.31 52.837 19.564 54.854 19.564 Z M 54.199 8.085 C 52.918 8.085 51.991 9.729 51.8 12.353 L 56.053 12.221 L 56.053 11.929 C 56.053 9.278 55.29 8.086 54.199 8.086 Z M 63.939 7.608 C 64.548 7.612 65.151 7.738 65.711 7.979 L 65.711 3.234 C 65.711 2.147 65.329 1.537 64.893 1.06 L 64.893 1.007 L 67.346 0 L 67.346 16.912 C 67.346 19.219 67.592 19.67 68.246 20.2 L 68.246 20.252 L 65.793 20.968 L 65.793 18.583 C 65.302 19.829 64.211 21.048 62.684 21.048 C 60.367 21.048 59.031 18.423 59.031 14.898 C 59.031 10.921 60.666 7.608 63.939 7.608 Z M 60.803 14.209 C 60.803 17.761 61.73 19.723 63.557 19.723 C 64.456 19.723 65.193 19.139 65.711 18.238 L 65.711 11.558 C 65.711 8.801 64.538 8.085 63.584 8.085 C 61.785 8.085 60.803 10.444 60.803 14.209 Z M 70.755 5.036 C 70.155 5.036 69.664 4.559 69.664 3.95 C 69.664 3.393 70.155 2.89 70.755 2.89 C 71.381 2.89 71.873 3.393 71.873 3.95 C 71.873 4.559 71.381 5.037 70.755 5.037 Z M 69.609 20.65 L 69.609 20.598 C 69.909 19.564 70.046 18.635 70.046 17.018 L 70.046 11.239 C 70.046 10.02 69.664 9.278 69.173 8.748 L 69.173 8.669 L 71.682 7.475 L 71.682 16.993 C 71.682 18.637 71.736 19.564 72.118 20.598 L 72.118 20.651 L 69.609 20.651 Z M 75.857 21.048 C 74.576 21.048 73.54 20.226 73.54 18.635 C 73.54 15.985 76.485 14.659 78.693 14.076 L 78.693 10.895 C 78.693 9.676 78.229 8.827 76.702 8.827 C 75.748 8.827 74.767 9.198 74.003 9.888 L 73.894 9.755 C 74.685 8.483 75.966 7.608 77.602 7.608 C 79.729 7.608 80.356 8.96 80.356 10.55 L 80.356 18.822 C 80.356 19.378 80.547 19.803 81.092 19.803 C 81.447 19.803 81.719 19.644 81.991 19.352 L 82.046 19.432 C 81.828 20.042 81.31 20.969 80.22 20.969 C 79.238 20.969 78.747 20.227 78.72 19.352 C 78.12 20.253 77.111 21.049 75.857 21.049 Z M 75.039 17.974 C 75.039 18.981 75.53 19.829 76.702 19.829 C 77.52 19.829 78.257 19.484 78.693 19.033 L 78.693 14.5 C 76.866 15.11 75.039 16.144 75.039 17.973 Z\" fill=\"rgb(255,255,255)\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({ZK9ujIR3m:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 82.046 26.615\" overflow=\"visible\"><path d=\"M 0.436 26.615 L 0.436 26.562 C 0.791 25.449 0.873 24.468 0.873 22.692 L 0.873 11.505 C 0.873 10.153 0.463 9.384 0 8.827 L 0 8.774 L 2.426 7.475 L 2.426 9.49 L 2.563 9.516 C 3.19 8.43 4.253 7.608 5.535 7.608 C 7.852 7.608 9.188 10.126 9.188 13.732 C 9.188 17.682 7.552 21.048 4.499 21.048 C 3.654 21.048 2.999 20.783 2.508 20.438 L 2.508 22.665 C 2.508 24.442 2.536 25.449 2.945 26.562 L 2.945 26.615 Z M 4.744 20.571 C 6.489 20.571 7.416 18.238 7.416 14.447 C 7.416 10.869 6.544 8.933 4.635 8.933 C 3.708 8.933 2.917 9.464 2.508 10.047 L 2.508 17.867 C 2.89 19.829 3.79 20.571 4.744 20.571 Z M 15.76 7.873 L 15.951 10.286 L 15.815 10.338 C 14.833 8.563 13.988 8.085 13.143 8.085 C 12.134 8.085 11.588 8.801 11.588 9.702 C 11.588 12.221 16.523 13.811 16.523 17.549 C 16.523 19.617 15.132 21.048 12.925 21.048 C 12.052 21.048 11.125 20.81 10.498 20.544 L 10.307 17.734 L 10.416 17.681 C 11.37 19.696 12.27 20.571 13.442 20.571 C 14.642 20.571 15.161 19.643 15.161 18.477 C 15.161 15.083 10.47 13.97 10.47 10.604 C 10.47 8.668 11.916 7.607 13.797 7.607 C 14.451 7.607 15.242 7.741 15.76 7.873 Z M 17.47 26.615 L 17.47 24.521 C 18.205 24.468 19.759 23.99 20.414 21.552 L 20.659 20.624 L 18.042 10.842 C 17.606 9.278 17.333 8.615 16.869 8.059 L 16.869 8.005 L 19.814 8.005 L 19.814 8.059 C 19.515 8.563 19.351 9.437 19.705 10.763 L 21.532 17.549 L 23.304 11.213 C 23.713 9.649 23.331 8.589 22.949 8.059 L 22.949 8.005 L 25.021 8.005 L 25.021 8.059 C 24.422 8.854 24.258 9.411 23.849 10.921 L 20.714 22.109 C 19.787 25.369 18.832 26.244 17.47 26.615 Z M 25.969 20.65 L 25.969 20.598 C 26.27 19.882 26.378 19.166 26.378 17.655 L 26.378 3.234 C 26.378 2.147 26.024 1.537 25.56 1.06 L 25.56 1.007 L 28.042 0 L 28.042 17.655 C 28.042 19.139 28.178 19.908 28.478 20.598 L 28.478 20.65 Z M 34.213 21.048 C 31.705 21.048 29.769 17.999 29.769 14.341 C 29.769 10.683 31.705 7.608 34.213 7.608 C 36.748 7.608 38.684 10.683 38.684 14.341 C 38.684 17.999 36.748 21.048 34.213 21.048 Z M 34.213 20.571 C 36.121 20.571 36.858 17.708 36.858 14.341 C 36.858 10.948 36.094 8.085 34.213 8.085 C 32.332 8.085 31.596 10.975 31.596 14.341 C 31.596 17.734 32.332 20.571 34.213 20.571 Z M 40.187 26.615 L 40.187 26.562 C 40.542 25.449 40.624 24.468 40.624 22.692 L 40.624 11.505 C 40.624 10.153 40.215 9.384 39.751 8.827 L 39.751 8.774 L 42.178 7.475 L 42.178 9.49 L 42.313 9.516 C 42.941 8.43 44.005 7.608 45.286 7.608 C 47.603 7.608 48.939 10.126 48.939 13.732 C 48.939 17.682 47.303 21.048 44.25 21.048 C 43.404 21.048 42.751 20.783 42.259 20.438 L 42.259 22.665 C 42.259 24.442 42.287 25.449 42.696 26.562 L 42.696 26.615 L 40.188 26.615 Z M 44.495 20.571 C 46.24 20.571 47.167 18.238 47.167 14.447 C 47.167 10.869 46.294 8.933 44.386 8.933 C 43.459 8.933 42.669 9.464 42.259 10.047 L 42.259 17.867 C 42.641 19.829 43.541 20.571 44.495 20.571 Z M 54.854 19.564 C 56.135 19.564 57.089 18.663 57.689 17.496 L 57.798 17.549 C 57.307 19.457 56.108 21.048 54.199 21.048 C 51.746 21.048 50.137 18.291 50.137 14.553 C 50.137 10.311 52.182 7.608 54.281 7.608 C 56.38 7.608 57.853 10.286 57.744 12.777 L 51.773 12.777 C 51.746 13.042 51.746 13.308 51.746 13.572 C 51.746 17.31 52.837 19.564 54.854 19.564 Z M 54.199 8.085 C 52.918 8.085 51.991 9.729 51.8 12.353 L 56.053 12.221 L 56.053 11.929 C 56.053 9.278 55.29 8.086 54.199 8.086 Z M 63.939 7.608 C 64.548 7.612 65.151 7.738 65.711 7.979 L 65.711 3.234 C 65.711 2.147 65.329 1.537 64.893 1.06 L 64.893 1.007 L 67.346 0 L 67.346 16.912 C 67.346 19.219 67.592 19.67 68.246 20.2 L 68.246 20.252 L 65.793 20.968 L 65.793 18.583 C 65.302 19.829 64.211 21.048 62.684 21.048 C 60.367 21.048 59.031 18.423 59.031 14.898 C 59.031 10.921 60.666 7.608 63.939 7.608 Z M 60.803 14.209 C 60.803 17.761 61.73 19.723 63.557 19.723 C 64.456 19.723 65.193 19.139 65.711 18.238 L 65.711 11.558 C 65.711 8.801 64.538 8.085 63.584 8.085 C 61.785 8.085 60.803 10.444 60.803 14.209 Z M 70.755 5.036 C 70.155 5.036 69.664 4.559 69.664 3.95 C 69.664 3.393 70.155 2.89 70.755 2.89 C 71.381 2.89 71.873 3.393 71.873 3.95 C 71.873 4.559 71.381 5.037 70.755 5.037 Z M 69.609 20.65 L 69.609 20.598 C 69.909 19.564 70.046 18.635 70.046 17.018 L 70.046 11.239 C 70.046 10.02 69.664 9.278 69.173 8.748 L 69.173 8.669 L 71.682 7.475 L 71.682 16.993 C 71.682 18.637 71.736 19.564 72.118 20.598 L 72.118 20.651 L 69.609 20.651 Z M 75.857 21.048 C 74.576 21.048 73.54 20.226 73.54 18.635 C 73.54 15.985 76.485 14.659 78.693 14.076 L 78.693 10.895 C 78.693 9.676 78.229 8.827 76.702 8.827 C 75.748 8.827 74.767 9.198 74.003 9.888 L 73.894 9.755 C 74.685 8.483 75.966 7.608 77.602 7.608 C 79.729 7.608 80.356 8.96 80.356 10.55 L 80.356 18.822 C 80.356 19.378 80.547 19.803 81.092 19.803 C 81.447 19.803 81.719 19.644 81.991 19.352 L 82.046 19.432 C 81.828 20.042 81.31 20.969 80.22 20.969 C 79.238 20.969 78.747 20.227 78.72 19.352 C 78.12 20.253 77.111 21.049 75.857 21.049 Z M 75.039 17.974 C 75.039 18.981 75.53 19.829 76.702 19.829 C 77.52 19.829 78.257 19.484 78.693 19.033 L 78.693 14.5 C 76.866 15.11 75.039 16.144 75.039 17.973 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-mywo73\",layoutDependency:layoutDependency,layoutId:\"IXbzpuym0\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 9.188 19.14\" overflow=\"visible\"><path d=\"M 0.436 19.14 L 0.436 19.087 C 0.791 17.974 0.873 16.993 0.873 15.216 L 0.873 4.03 C 0.873 2.677 0.463 1.909 0 1.352 L 0 1.299 L 2.426 0 L 2.426 2.015 L 2.563 2.041 C 3.19 0.954 4.253 0.133 5.535 0.133 C 7.852 0.133 9.188 2.651 9.188 6.257 C 9.188 10.207 7.552 13.573 4.499 13.573 C 3.654 13.573 2.999 13.308 2.508 12.963 L 2.508 15.19 C 2.508 16.966 2.536 17.974 2.945 19.087 L 2.945 19.14 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-3ei5qs\",layoutDependency:layoutDependency,layoutId:\"I4Y0bP7Q1\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 4.907 11.637\" overflow=\"visible\"><path d=\"M 2.235 11.637 C 3.98 11.637 4.907 9.305 4.907 5.514 C 4.907 1.935 4.035 0 2.126 0 C 1.199 0 0.409 0.53 0 1.113 L 0 8.933 C 0.381 10.896 1.281 11.637 2.235 11.637 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-if85yi\",layoutDependency:layoutDependency,layoutId:\"N_4QjPMaE\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 6.216 13.441\" overflow=\"visible\"><path d=\"M 5.453 0.265 L 5.644 2.678 L 5.508 2.731 C 4.526 0.955 3.681 0.478 2.836 0.478 C 1.827 0.478 1.281 1.194 1.281 2.095 C 1.281 4.613 6.216 6.203 6.216 9.941 C 6.216 12.009 4.825 13.441 2.618 13.441 C 1.745 13.441 0.818 13.202 0.191 12.937 L 0 10.127 L 0.109 10.074 C 1.063 12.088 1.963 12.963 3.135 12.963 C 4.335 12.963 4.854 12.036 4.854 10.869 C 4.854 7.476 0.163 6.363 0.163 2.996 C 0.163 1.06 1.609 0 3.49 0 C 4.144 0 4.935 0.133 5.453 0.265 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1ptydsq\",layoutDependency:layoutDependency,layoutId:\"ClPG9s34a\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 8.152 18.61\" overflow=\"visible\"><path d=\"M 0.6 18.61 L 0.6 16.515 C 1.336 16.463 2.89 15.985 3.545 13.547 L 3.79 12.619 L 1.173 2.837 C 0.737 1.273 0.463 0.61 0 0.053 L 0 0 L 2.945 0 L 2.945 0.053 C 2.645 0.557 2.481 1.432 2.836 2.758 L 4.663 9.543 L 6.435 3.208 C 6.844 1.644 6.462 0.584 6.08 0.053 L 6.08 0 L 8.152 0 L 8.152 0.053 C 7.553 0.848 7.389 1.406 6.98 2.916 L 3.845 14.103 C 2.918 17.364 1.963 18.238 0.6 18.61 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-17mbm5j\",layoutDependency:layoutDependency,layoutId:\"hTYaBoFyp\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 2.918 20.65\" overflow=\"visible\"><path d=\"M 0.409 20.65 L 0.409 20.598 C 0.709 19.882 0.818 19.166 0.818 17.655 L 0.818 3.234 C 0.818 2.147 0.463 1.537 0 1.06 L 0 1.007 L 2.481 0 L 2.481 17.655 C 2.481 19.139 2.618 19.908 2.918 20.598 L 2.918 20.65 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-6oj5v\",layoutDependency:layoutDependency,layoutId:\"QMmJLHXqL\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 8.915 13.44\" overflow=\"visible\"><path d=\"M 4.444 13.44 C 1.936 13.44 0 10.391 0 6.733 C 0 3.075 1.936 0 4.444 0 C 6.979 0 8.915 3.075 8.915 6.733 C 8.915 10.391 6.979 13.44 4.444 13.44 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-2nwv33\",layoutDependency:layoutDependency,layoutId:\"N8nE71lSC\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 5.262 12.486\" overflow=\"visible\"><path d=\"M 2.617 12.486 C 4.526 12.486 5.262 9.623 5.262 6.256 C 5.262 2.863 4.499 0 2.617 0 C 0.736 0 0 2.89 0 6.256 C 0 9.649 0.736 12.486 2.617 12.486 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-2bxc47\",layoutDependency:layoutDependency,layoutId:\"M6Cn_jLRs\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 9.188 19.14\" overflow=\"visible\"><path d=\"M 0.436 19.14 L 0.436 19.087 C 0.791 17.974 0.872 16.993 0.872 15.216 L 0.872 4.03 C 0.872 2.677 0.463 1.909 0 1.352 L 0 1.299 L 2.426 0 L 2.426 2.015 L 2.562 2.041 C 3.189 0.954 4.253 0.133 5.535 0.133 C 7.852 0.133 9.188 2.651 9.188 6.257 C 9.188 10.207 7.552 13.573 4.499 13.573 C 3.653 13.573 2.999 13.308 2.508 12.963 L 2.508 15.19 C 2.508 16.966 2.536 17.974 2.944 19.087 L 2.944 19.14 L 0.436 19.14 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1daz8lg\",layoutDependency:layoutDependency,layoutId:\"wOZg8wjNq\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 4.908 11.637\" overflow=\"visible\"><path d=\"M 2.236 11.637 C 3.981 11.637 4.908 9.305 4.908 5.514 C 4.908 1.935 4.035 0 2.127 0 C 1.2 0 0.409 0.53 0 1.113 L 0 8.933 C 0.382 10.896 1.281 11.637 2.236 11.637 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1ahtb0d\",layoutDependency:layoutDependency,layoutId:\"guHOOeOJm\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 7.661 13.44\" overflow=\"visible\"><path d=\"M 4.717 11.955 C 5.998 11.955 6.952 11.054 7.552 9.888 L 7.661 9.94 C 7.17 11.849 5.971 13.44 4.062 13.44 C 1.609 13.44 0 10.683 0 6.945 C 0 2.703 2.045 0 4.144 0 C 6.243 0 7.716 2.677 7.607 5.169 L 1.636 5.169 C 1.609 5.434 1.609 5.699 1.609 5.964 C 1.609 9.702 2.7 11.955 4.717 11.955 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1i1qazx\",layoutDependency:layoutDependency,layoutId:\"U25NXn7Jv\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 4.253 4.268\" overflow=\"visible\"><path d=\"M 2.399 0 C 1.118 0 0.191 1.644 0 4.268 L 4.253 4.136 L 4.253 3.844 C 4.253 1.193 3.49 0.001 2.399 0.001 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-fa3cha\",layoutDependency:layoutDependency,layoutId:\"W_nxKI0m2\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 9.215 21.048\" overflow=\"visible\"><path d=\"M 4.908 7.608 C 5.517 7.612 6.12 7.738 6.68 7.979 L 6.68 3.234 C 6.68 2.147 6.298 1.537 5.862 1.06 L 5.862 1.007 L 8.316 0 L 8.316 16.912 C 8.316 19.219 8.561 19.67 9.215 20.2 L 9.215 20.252 L 6.762 20.968 L 6.762 18.583 C 6.271 19.829 5.18 21.048 3.654 21.048 C 1.336 21.048 0 18.423 0 14.898 C 0 10.921 1.636 7.608 4.908 7.608 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1gejod8\",layoutDependency:layoutDependency,layoutId:\"OHSPwL6OP\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 4.907 11.638\" overflow=\"visible\"><path d=\"M 0 6.124 C 0 9.676 0.927 11.638 2.754 11.638 C 3.653 11.638 4.389 11.054 4.907 10.153 L 4.907 3.473 C 4.907 0.716 3.735 0 2.781 0 C 0.981 0 0 2.359 0 6.124 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1eb8ts3\",layoutDependency:layoutDependency,layoutId:\"qRtn_E1A2\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 2.209 2.147\" overflow=\"visible\"><path d=\"M 1.091 2.147 C 0.491 2.147 0 1.67 0 1.06 C 0 0.503 0.491 0 1.091 0 C 1.718 0 2.209 0.503 2.209 1.06 C 2.209 1.67 1.718 2.147 1.091 2.147 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1hxtavh\",layoutDependency:layoutDependency,layoutId:\"jXKTNk7Eh\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 2.945 13.176\" overflow=\"visible\"><path d=\"M 0.436 13.175 L 0.436 13.123 C 0.736 12.088 0.873 11.16 0.873 9.543 L 0.873 3.764 C 0.873 2.545 0.491 1.803 0 1.273 L 0 1.194 L 2.508 0 L 2.508 9.518 C 2.508 11.162 2.563 12.089 2.945 13.123 L 2.945 13.176 L 0.436 13.176 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1x21fhs\",layoutDependency:layoutDependency,layoutId:\"XC_j_I5b3\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 8.507 13.441\" overflow=\"visible\"><path d=\"M 2.317 13.44 C 1.036 13.44 0 12.618 0 11.027 C 0 8.377 2.945 7.051 5.153 6.468 L 5.153 3.287 C 5.153 2.068 4.69 1.219 3.162 1.219 C 2.208 1.219 1.227 1.59 0.463 2.28 L 0.354 2.147 C 1.145 0.875 2.426 0 4.062 0 C 6.189 0 6.816 1.352 6.816 2.942 L 6.816 11.214 C 6.816 11.77 7.007 12.194 7.552 12.194 C 7.907 12.194 8.179 12.036 8.452 11.744 L 8.507 11.824 C 8.288 12.434 7.77 13.361 6.68 13.361 C 5.698 13.361 5.207 12.619 5.18 11.744 C 4.581 12.645 3.572 13.441 2.317 13.441 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-2llykt\",layoutDependency:layoutDependency,layoutId:\"aFeyB0eCb\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 3.654 5.329\" overflow=\"visible\"><path d=\"M 0 3.474 C 0 4.481 0.491 5.329 1.663 5.329 C 2.481 5.329 3.217 4.984 3.654 4.534 L 3.654 0 C 1.827 0.611 0 1.644 0 3.473 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true})]}),/*#__PURE__*/_jsxs(SVG,{className:\"framer-1hcwxmy\",layoutDependency:layoutDependency,layoutId:\"pc9hgkXgF\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 34.589 64.61\" overflow=\"visible\"><g><path d=\"M 0 23.544 L 34.589 23.544 L 34.589 64.61 L 0 64.61 Z\" fill=\"transparent\"></path><path d=\"M 17.295 41.066 C 21.361 41.066 24.657 37.776 24.657 33.717 C 24.657 29.658 21.361 26.369 17.295 26.369 C 13.228 26.369 9.933 29.658 9.933 33.717 C 9.933 37.776 13.228 41.066 17.295 41.066 Z M 17.294 18.698 C 21.899 18.698 27.201 15.326 28.903 8.957 C 28.903 8.957 30.479 8.983 30.479 11.672 C 30.479 14.866 32.916 14.789 34.078 16.636 C 35.476 18.856 34.171 22.694 28.073 22.694 L 17.294 22.694\" fill=\"rgb(255,255,255)\"></path><path d=\"M 17.294 26.691 C 21.899 26.691 27.201 30.063 28.903 36.432 C 28.903 36.432 30.479 36.407 30.479 33.717 C 30.479 30.523 32.916 30.6 34.078 28.754 C 35.476 26.533 34.171 22.694 28.073 22.694 L 17.294 22.694 M 17.294 18.698 C 12.69 18.698 7.388 15.326 5.686 8.957 C 5.686 8.957 4.11 8.983 4.11 11.672 C 4.11 14.866 1.674 14.789 0.511 16.636 C -0.887 18.856 0.418 22.694 6.517 22.694 L 17.294 22.694 M 17.294 22.694 L 6.517 22.694 C 0.418 22.694 -0.887 26.533 0.511 28.754 C 1.674 30.6 4.11 30.523 4.11 33.717 C 4.11 36.407 5.686 36.432 5.686 36.432 C 7.388 30.063 12.69 26.691 17.294 26.691 M 22.97 8.021 C 22.173 6.85 22.29 5.94 21.345 4.608 C 20.133 2.9 18.367 2.467 17.295 0 L 17.295 19.02 C 19.892 19.02 22.171 17.674 23.481 15.646 L 23.488 15.646 C 25.078 13.147 24.659 10.5 22.97 8.02 Z\" fill=\"rgb(255,255,255)\"></path><path d=\"M 11.619 8.021 C 12.416 6.85 12.299 5.94 13.244 4.608 C 14.456 2.9 16.222 2.467 17.294 0 L 17.294 19.02 C 14.697 19.02 12.418 17.674 11.108 15.646 L 11.101 15.646 C 9.511 13.147 9.93 10.5 11.619 8.02 Z\" fill=\"rgb(255,255,255)\"></path></g></svg>',withExternalLayout:true,...addPropertyOverrides({ZK9ujIR3m:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 34.589 64.61\" overflow=\"visible\"><g><path d=\"M 0 23.544 L 34.589 23.544 L 34.589 64.61 L 0 64.61 Z\" fill=\"transparent\"></path><path d=\"M 17.295 41.066 C 21.361 41.066 24.657 37.776 24.657 33.717 C 24.657 29.658 21.361 26.369 17.295 26.369 C 13.228 26.369 9.933 29.658 9.933 33.717 C 9.933 37.776 13.228 41.066 17.295 41.066 Z M 17.294 18.698 C 21.899 18.698 27.201 15.326 28.903 8.957 C 28.903 8.957 30.479 8.983 30.479 11.672 C 30.479 14.866 32.916 14.789 34.078 16.636 C 35.476 18.856 34.171 22.694 28.073 22.694 L 17.294 22.694\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path><path d=\"M 17.294 26.691 C 21.899 26.691 27.201 30.063 28.903 36.432 C 28.903 36.432 30.479 36.407 30.479 33.717 C 30.479 30.523 32.916 30.6 34.078 28.754 C 35.476 26.533 34.171 22.694 28.073 22.694 L 17.294 22.694 M 17.294 18.698 C 12.69 18.698 7.388 15.326 5.686 8.957 C 5.686 8.957 4.11 8.983 4.11 11.672 C 4.11 14.866 1.674 14.789 0.511 16.636 C -0.887 18.856 0.418 22.694 6.517 22.694 L 17.294 22.694 M 17.294 22.694 L 6.517 22.694 C 0.418 22.694 -0.887 26.533 0.511 28.754 C 1.674 30.6 4.11 30.523 4.11 33.717 C 4.11 36.407 5.686 36.432 5.686 36.432 C 7.388 30.063 12.69 26.691 17.294 26.691 M 22.97 8.021 C 22.173 6.85 22.29 5.94 21.345 4.608 C 20.133 2.9 18.367 2.467 17.295 0 L 17.295 19.02 C 19.892 19.02 22.171 17.674 23.481 15.646 L 23.488 15.646 C 25.078 13.147 24.659 10.5 22.97 8.02 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path><path d=\"M 11.619 8.021 C 12.416 6.85 12.299 5.94 13.244 4.608 C 14.456 2.9 16.222 2.467 17.294 0 L 17.294 19.02 C 14.697 19.02 12.418 17.674 11.108 15.646 L 11.101 15.646 C 9.511 13.147 9.93 10.5 11.619 8.02 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path></g></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-t3zdiu\",layoutDependency:layoutDependency,layoutId:\"V83izvvyR\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 34.589 41.066\" overflow=\"visible\"><path d=\"M 0 0 L 34.589 0 L 34.589 41.066 L 0 41.066 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsxs(SVG,{className:\"framer-53z7k6\",layoutDependency:layoutDependency,layoutId:\"GhacFtgZ0\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 24.656 32.109\" overflow=\"visible\"><path d=\"M 7.362 32.109 C 11.428 32.109 14.724 28.819 14.724 24.76 C 14.724 20.702 11.428 17.412 7.362 17.412 C 3.296 17.412 0 20.702 0 24.76 C 0 28.819 3.296 32.109 7.362 32.109 Z M 7.361 9.741 C 11.966 9.741 17.268 6.369 18.97 0 C 18.97 0 20.546 0.026 20.546 2.715 C 20.546 5.909 22.983 5.832 24.146 7.679 C 25.543 9.899 24.238 13.737 18.14 13.737 L 7.361 13.737\" fill=\"rgb(255,255,255)\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({ZK9ujIR3m:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 24.656 32.109\" overflow=\"visible\"><path d=\"M 7.362 32.109 C 11.428 32.109 14.724 28.819 14.724 24.76 C 14.724 20.702 11.428 17.412 7.362 17.412 C 3.296 17.412 0 20.702 0 24.76 C 0 28.819 3.296 32.109 7.362 32.109 Z M 7.361 9.741 C 11.966 9.741 17.268 6.369 18.97 0 C 18.97 0 20.546 0.026 20.546 2.715 C 20.546 5.909 22.983 5.832 24.146 7.679 C 25.543 9.899 24.238 13.737 18.14 13.737 L 7.361 13.737\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-1ssnqi5\",layoutDependency:layoutDependency,layoutId:\"GLQzsUxn1\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 14.724 14.697\" overflow=\"visible\"><path d=\"M 7.362 14.697 C 11.428 14.697 14.724 11.407 14.724 7.348 C 14.724 3.29 11.428 0 7.362 0 C 3.296 0 0 3.29 0 7.348 C 0 11.407 3.296 14.697 7.362 14.697 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-5jmcad\",layoutDependency:layoutDependency,layoutId:\"FfMQKLx6b\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 17.295 13.737\" overflow=\"visible\"><path d=\"M 0 9.741 C 4.605 9.741 9.907 6.369 11.608 0 C 11.608 0 13.185 0.026 13.185 2.715 C 13.185 5.909 15.621 5.832 16.784 7.679 C 18.182 9.899 16.877 13.737 10.778 13.737 L 0 13.737\" fill=\"transparent\"></path></svg>',withExternalLayout:true})]}),/*#__PURE__*/_jsxs(SVG,{className:\"framer-hubb8i\",layoutDependency:layoutDependency,layoutId:\"Ixate4B_C\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 34.589 36.432\" overflow=\"visible\"><path d=\"M 17.294 26.691 C 21.899 26.691 27.201 30.063 28.902 36.432 C 28.902 36.432 30.479 36.407 30.479 33.717 C 30.479 30.523 32.915 30.6 34.078 28.754 C 35.476 26.533 34.171 22.694 28.072 22.694 L 17.294 22.694 M 17.294 18.698 C 12.69 18.698 7.388 15.326 5.686 8.957 C 5.686 8.957 4.11 8.983 4.11 11.672 C 4.11 14.866 1.673 14.789 0.51 16.636 C -0.887 18.856 0.418 22.694 6.516 22.694 L 17.294 22.694 M 17.294 22.694 L 6.516 22.694 C 0.418 22.694 -0.887 26.533 0.51 28.754 C 1.673 30.6 4.11 30.523 4.11 33.717 C 4.11 36.407 5.686 36.432 5.686 36.432 C 7.388 30.063 12.69 26.691 17.294 26.691 M 22.97 8.021 C 22.173 6.85 22.29 5.94 21.345 4.608 C 20.133 2.9 18.367 2.467 17.295 0 L 17.295 19.02 C 19.892 19.02 22.171 17.674 23.481 15.646 L 23.488 15.646 C 25.078 13.147 24.659 10.5 22.97 8.02 Z\" fill=\"rgb(255,255,255)\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({ZK9ujIR3m:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 34.589 36.432\" overflow=\"visible\"><path d=\"M 17.294 26.691 C 21.899 26.691 27.201 30.063 28.902 36.432 C 28.902 36.432 30.479 36.407 30.479 33.717 C 30.479 30.523 32.915 30.6 34.078 28.754 C 35.476 26.533 34.171 22.694 28.072 22.694 L 17.294 22.694 M 17.294 18.698 C 12.69 18.698 7.388 15.326 5.686 8.957 C 5.686 8.957 4.11 8.983 4.11 11.672 C 4.11 14.866 1.673 14.789 0.51 16.636 C -0.887 18.856 0.418 22.694 6.516 22.694 L 17.294 22.694 M 17.294 22.694 L 6.516 22.694 C 0.418 22.694 -0.887 26.533 0.51 28.754 C 1.673 30.6 4.11 30.523 4.11 33.717 C 4.11 36.407 5.686 36.432 5.686 36.432 C 7.388 30.063 12.69 26.691 17.294 26.691 M 22.97 8.021 C 22.173 6.85 22.29 5.94 21.345 4.608 C 20.133 2.9 18.367 2.467 17.295 0 L 17.295 19.02 C 19.892 19.02 22.171 17.674 23.481 15.646 L 23.488 15.646 C 25.078 13.147 24.659 10.5 22.97 8.02 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-1uf03pj\",layoutDependency:layoutDependency,layoutId:\"ODNk0LQKo\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 17.295 13.737\" overflow=\"visible\"><path d=\"M 0 3.996 C 4.605 3.996 9.907 7.368 11.608 13.737 C 11.608 13.737 13.185 13.713 13.185 11.023 C 13.185 7.829 15.621 7.906 16.784 6.06 C 18.182 3.839 16.877 0 10.778 0 L 0 0\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-11yymxy\",layoutDependency:layoutDependency,layoutId:\"CGTyas_DQ\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 17.294 13.737\" overflow=\"visible\"><path d=\"M 17.294 9.741 C 12.69 9.741 7.388 6.369 5.686 0 C 5.686 0 4.11 0.026 4.11 2.715 C 4.11 5.909 1.673 5.832 0.51 7.679 C -0.887 9.899 0.418 13.737 6.516 13.737 L 17.294 13.737\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-11x3w3i\",layoutDependency:layoutDependency,layoutId:\"Fk4iGAtwJ\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 17.294 13.737\" overflow=\"visible\"><path d=\"M 17.294 0 L 6.516 0 C 0.418 0 -0.887 3.839 0.51 6.06 C 1.673 7.906 4.11 7.829 4.11 11.023 C 4.11 13.713 5.686 13.737 5.686 13.737 C 7.388 7.368 12.69 3.996 17.294 3.996\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1q9nhhd\",layoutDependency:layoutDependency,layoutId:\"ErZfcnO8e\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 7.189 19.02\" overflow=\"visible\"><path d=\"M 5.675 8.021 C 4.878 6.85 4.995 5.94 4.05 4.608 C 2.839 2.9 1.072 2.467 0 0 L 0 19.02 C 2.598 19.02 4.876 17.674 6.186 15.646 L 6.193 15.646 C 7.784 13.147 7.364 10.5 5.675 8.02 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true})]}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1a47a1x\",layoutDependency:layoutDependency,layoutId:\"of5ZDeMlW\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 7.189 19.02\" overflow=\"visible\"><path d=\"M 1.514 8.021 C 2.311 6.85 2.194 5.94 3.139 4.608 C 4.351 2.9 6.116 2.467 7.189 0 L 7.189 19.02 C 4.591 19.02 2.313 17.674 1.003 15.646 L 0.995 15.646 C -0.595 13.147 -0.175 10.5 1.514 8.02 Z\" fill=\"rgb(255,255,255)\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({ZK9ujIR3m:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 7.189 19.02\" overflow=\"visible\"><path d=\"M 1.514 8.021 C 2.311 6.85 2.194 5.94 3.139 4.608 C 4.351 2.9 6.116 2.467 7.189 0 L 7.189 19.02 C 4.591 19.02 2.313 17.674 1.003 15.646 L 0.995 15.646 C -0.595 13.147 -0.175 10.5 1.514 8.02 Z\" fill=\"var(--token-5c2bc9ca-17a7-41f0-b755-35c5443c43a1, rgb(3, 3, 3)) /* {&quot;name&quot;:&quot;Black&quot;} */\"></path></svg>'}},baseVariant,gestureVariant)})]})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-dIYpP.framer-17gt1wr, .framer-dIYpP .framer-17gt1wr { display: block; }\",\".framer-dIYpP.framer-1b6ua6a { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-dIYpP .framer-jbfteb { height: 40px; position: relative; width: 34px; }\",\".framer-dIYpP .framer-130fuc9 { height: 40px; left: 0px; position: absolute; top: 0px; width: 34px; }\",\".framer-dIYpP .framer-13wi96b { height: 32px; left: 10px; position: absolute; top: 9px; width: 24px; }\",\".framer-dIYpP .framer-l5e1nn { height: 15px; left: 0px; position: absolute; top: 17px; width: 15px; }\",\".framer-dIYpP .framer-13xfmi6 { height: 14px; left: 7px; position: absolute; top: 0px; width: 17px; }\",\".framer-dIYpP .framer-1ohesj7 { height: 27px; left: 0px; position: absolute; top: 9px; width: 34px; }\",\".framer-dIYpP .framer-177t0dw { height: 14px; left: 17px; position: absolute; top: 14px; width: 17px; }\",\".framer-dIYpP .framer-1w87d1p { height: 14px; left: 0px; position: absolute; top: 0px; width: 17px; }\",\".framer-dIYpP .framer-14ml1l1 { height: 36px; left: 0px; position: absolute; top: 0px; width: 24px; }\",\".framer-dIYpP .framer-wt4gvd { height: 14px; left: 0px; position: absolute; top: 22px; width: 17px; }\",\".framer-dIYpP .framer-1xanqwt { height: 19px; left: 17px; position: absolute; top: 0px; width: 7px; }\",\".framer-dIYpP .framer-1bhngr6, .framer-dIYpP .framer-1a47a1x { height: 19px; left: 10px; position: absolute; top: 0px; width: 7px; }\",\".framer-dIYpP .framer-1up7zd5 { height: 79px; position: relative; width: 82px; }\",\".framer-dIYpP .framer-1i894vx { height: 27px; left: 0px; position: absolute; top: 53px; width: 82px; }\",\".framer-dIYpP .framer-mywo73 { height: 19px; left: 0px; position: absolute; top: 8px; width: 9px; }\",\".framer-dIYpP .framer-3ei5qs { height: 12px; left: 3px; position: absolute; top: 9px; width: 5px; }\",\".framer-dIYpP .framer-if85yi { height: 14px; left: 11px; position: absolute; top: 8px; width: 6px; }\",\".framer-dIYpP .framer-1ptydsq { height: 19px; left: 17px; position: absolute; top: 8px; width: 8px; }\",\".framer-dIYpP .framer-17mbm5j { height: 21px; left: 26px; position: absolute; top: 0px; width: 3px; }\",\".framer-dIYpP .framer-6oj5v { height: 14px; left: 30px; position: absolute; top: 8px; width: 9px; }\",\".framer-dIYpP .framer-2nwv33 { height: 13px; left: 32px; position: absolute; top: 8px; width: 6px; }\",\".framer-dIYpP .framer-2bxc47 { height: 19px; left: 40px; position: absolute; top: 8px; width: 9px; }\",\".framer-dIYpP .framer-1daz8lg { height: 12px; left: 43px; position: absolute; top: 9px; width: 5px; }\",\".framer-dIYpP .framer-1ahtb0d { height: 14px; left: 50px; position: absolute; top: 8px; width: 8px; }\",\".framer-dIYpP .framer-1i1qazx { height: 5px; left: 52px; position: absolute; top: 8px; width: 5px; }\",\".framer-dIYpP .framer-fa3cha { height: 21px; left: 59px; position: absolute; top: 0px; width: 9px; }\",\".framer-dIYpP .framer-1gejod8 { height: 12px; left: 61px; position: absolute; top: 8px; width: 5px; }\",\".framer-dIYpP .framer-1eb8ts3 { height: 2px; left: 70px; position: absolute; top: 3px; width: 2px; }\",\".framer-dIYpP .framer-1hxtavh { height: 13px; left: 69px; position: absolute; top: 8px; width: 3px; }\",\".framer-dIYpP .framer-1x21fhs { height: 14px; left: 74px; position: absolute; top: 8px; width: 9px; }\",\".framer-dIYpP .framer-2llykt { height: 6px; left: 75px; position: absolute; top: 15px; width: 4px; }\",\".framer-dIYpP .framer-1hcwxmy { height: 65px; left: 24px; position: absolute; top: 0px; width: 35px; }\",\".framer-dIYpP .framer-t3zdiu { height: 41px; left: 0px; position: absolute; top: 24px; width: 35px; }\",\".framer-dIYpP .framer-53z7k6 { height: 32px; left: 10px; position: absolute; top: 9px; width: 25px; }\",\".framer-dIYpP .framer-1ssnqi5 { height: 15px; left: 0px; position: absolute; top: 18px; width: 15px; }\",\".framer-dIYpP .framer-5jmcad { height: 14px; left: 8px; position: absolute; top: 0px; width: 18px; }\",\".framer-dIYpP .framer-hubb8i { height: 37px; left: 0px; position: absolute; top: 0px; width: 35px; }\",\".framer-dIYpP .framer-1uf03pj { height: 14px; left: 18px; position: absolute; top: 23px; width: 18px; }\",\".framer-dIYpP .framer-11yymxy { height: 14px; left: 0px; position: absolute; top: 9px; width: 18px; }\",\".framer-dIYpP .framer-11x3w3i { height: 14px; left: 0px; position: absolute; top: 23px; width: 18px; }\",\".framer-dIYpP .framer-1q9nhhd { height: 19px; left: 18px; position: absolute; top: 0px; width: 7px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 79\n * @framerIntrinsicWidth 82\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"B0yg77hNn\":{\"layout\":[\"auto\",\"auto\"]},\"ZK9ujIR3m\":{\"layout\":[\"auto\",\"auto\"]},\"seqwEWzWC\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerwDlknlLMe=withCSS(Component,css,\"framer-dIYpP\");export default FramerwDlknlLMe;FramerwDlknlLMe.displayName=\"Logo\";FramerwDlknlLMe.defaultProps={height:79,width:82};addPropertyControls(FramerwDlknlLMe,{variant:{options:[\"ebY7N3MIw\",\"B0yg77hNn\",\"ZK9ujIR3m\",\"seqwEWzWC\"],optionTitles:[\"Full\",\"Symbol\",\"Variant\",\"Symbol\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerwDlknlLMe,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerwDlknlLMe\",\"slots\":[],\"annotations\":{\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicWidth\":\"82\",\"framerImmutableVariables\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"B0yg77hNn\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"ZK9ujIR3m\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"seqwEWzWC\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicHeight\":\"79\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\",\"framerAutoSizeImages\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./wDlknlLMe.map","// Generated by Framer (8e1ebfe)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,Link,RichText,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Search from\"https://framerusercontent.com/modules/6wAE2eMb2Tl3zrU7u4UL/mKj6QS2p4Cgdaa0WrZKY/Search.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/POMyCEQwF81ycoXAPjdH/d19staIdC3a1EJdDaGKL/FE4xvCCnV.js\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/Ddbpnt2AfCrDU7IIjJus/vDWbYuNor3ccjFs4smPJ/LipGQhgjb.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/zFg8V0HaYbGrmEMHD0Oh/UouaKbjjpRT9843ChQTX/RBjS_xJc5.js\";import Logo from\"https://framerusercontent.com/modules/fLDWyJbRFMfN91ODliRK/WTBZt6aaD05SvOvbRODR/wDlknlLMe.js\";const LogoFonts=getFonts(Logo);const SearchFonts=getFonts(Search);const cycleOrder=[\"MbOGROfd0\",\"CHEe2d3Os\",\"Jj4fMjw_n\"];const serializationHash=\"framer-USdju\";const variantClassNames={CHEe2d3Os:\"framer-v-lpqlni\",Jj4fMjw_n:\"framer-v-2ni35v\",MbOGROfd0:\"framer-v-n9jxu1\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={Black:\"CHEe2d3Os\",Mobile:\"Jj4fMjw_n\",White:\"MbOGROfd0\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"MbOGROfd0\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"MbOGROfd0\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-n9jxu1\",className,classNames),\"data-framer-name\":\"White\",layoutDependency:layoutDependency,layoutId:\"MbOGROfd0\",ref:refBinding,style:{...style},...addPropertyOverrides({CHEe2d3Os:{\"data-framer-name\":\"Black\"},Jj4fMjw_n:{\"data-framer-name\":\"Mobile\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1savv95\",\"data-framer-name\":\"Frame 11\",layoutDependency:layoutDependency,layoutId:\"cmmrE0JcE\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1yzozv2\",\"data-styles-preset\":\"FE4xvCCnV\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"UjsIMMG9M\"},motionChild:true,nodeId:\"a8l00kapn\",openInNewTab:false,relValues:[],scopeId:\"TOOhuw3T4\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-147ubbm\",\"data-styles-preset\":\"RBjS_xJc5\",children:\"discover\"})})})}),className:\"framer-1ghw7mg\",\"data-framer-name\":\"explore\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"a8l00kapn\",style:{\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({CHEe2d3Os:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1yzozv2\",\"data-styles-preset\":\"FE4xvCCnV\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"UjsIMMG9M\"},motionChild:true,nodeId:\"a8l00kapn\",openInNewTab:false,relValues:[],scopeId:\"TOOhuw3T4\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1u3rffp\",\"data-styles-preset\":\"LipGQhgjb\",children:\"discover\"})})})})}},baseVariant,gestureVariant)})}),/*#__PURE__*/_jsx(Link,{href:{webPageId:\"JmFkLyOSl\"},motionChild:true,nodeId:\"G0gDVLEDS\",openInNewTab:false,scopeId:\"TOOhuw3T4\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-1uxzln framer-1wxmvbj\",layoutDependency:layoutDependency,layoutId:\"G0gDVLEDS\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:79,y:(componentViewport?.y||0)+24+0,...addPropertyOverrides({Jj4fMjw_n:{y:(componentViewport?.y||0)+16+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-162qiei-container\",layoutDependency:layoutDependency,layoutId:\"ptESpuxKE-container\",nodeId:\"ptESpuxKE\",rendersWithMotion:true,scopeId:\"TOOhuw3T4\",children:/*#__PURE__*/_jsx(Logo,{height:\"100%\",id:\"ptESpuxKE\",layoutId:\"ptESpuxKE\",variant:\"ebY7N3MIw\",width:\"100%\",...addPropertyOverrides({CHEe2d3Os:{variant:\"ZK9ujIR3m\"}},baseVariant,gestureVariant)})})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1xbe2np\",layoutDependency:layoutDependency,layoutId:\"GOfyNb_l5\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-38ymnj-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"H3V9Lvj8s-container\",nodeId:\"H3V9Lvj8s\",rendersWithMotion:true,scopeId:\"TOOhuw3T4\",children:/*#__PURE__*/_jsx(Search,{backdropOptions:{backgroundColor:\"rgba(0, 0, 0, 0.8)\",transition:{damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"},zIndex:10},height:\"100%\",iconColor:\"var(--token-dce7897c-de52-4442-a1d6-f3ae0e58cd41, rgb(248, 247, 242))\",iconSize:24,iconType:\"default\",id:\"H3V9Lvj8s\",inputOptions:{clearButtonText:\"Clear\",clearButtonType:\"icon\",dividerType:\"fullWidth\",iconOptions:{iconColor:\"rgba(0, 0, 0, 0.45)\",iconSize:18,iconType:\"default\"},inputFont:{},placeholderOptions:{placeholderColor:\"rgba(0, 0, 0, 0.4)\",placeholderText:\"Search...\"},textColor:\"rgb(51, 51, 51)\"},layoutId:\"H3V9Lvj8s\",modalOptions:{backgroundColor:\"rgb(255, 255, 255)\",borderRadius:16,heightIsStatic:true,heightTransition:{damping:60,delay:0,mass:1,stiffness:800,type:\"spring\"},layoutType:\"QuickMenu\",shadow:{blur:40,color:\"rgba(0, 0, 0, 0.2)\",spread:0,x:0,y:20},top:0,width:500},resultOptions:{itemType:\"fullWidth\",subtitleOptions:{subtitleColor:\"rgba(0, 0, 0, 0.4)\",subtitleFont:{},subtitleType:\"path\"},titleColor:\"rgb(51, 51, 51)\",titleFont:{},titleType:\"h1\"},style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({CHEe2d3Os:{iconColor:\"var(--token-ac3aba86-b999-41f0-9299-f50c21aeb99a, rgb(11, 15, 13))\"}},baseVariant,gestureVariant)})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1yzozv2\",\"data-styles-preset\":\"FE4xvCCnV\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"HcQcnuMh2\"},motionChild:true,nodeId:\"kUAH3DX_W\",openInNewTab:false,relValues:[],scopeId:\"TOOhuw3T4\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-147ubbm\",\"data-styles-preset\":\"RBjS_xJc5\",children:\"subscribe\"})})})}),className:\"framer-16hcfyk\",\"data-framer-name\":\"subscribe\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"kUAH3DX_W\",style:{\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({CHEe2d3Os:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1yzozv2\",\"data-styles-preset\":\"FE4xvCCnV\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"HcQcnuMh2\"},motionChild:true,nodeId:\"kUAH3DX_W\",openInNewTab:false,relValues:[],scopeId:\"TOOhuw3T4\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1u3rffp\",\"data-styles-preset\":\"LipGQhgjb\",children:\"subscribe\"})})})})}},baseVariant,gestureVariant)})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-USdju.framer-1wxmvbj, .framer-USdju .framer-1wxmvbj { display: block; }\",\".framer-USdju.framer-n9jxu1 { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: var(--overflow-clip-fallback, clip); padding: 24px; position: relative; width: 1200px; }\",\".framer-USdju .framer-1savv95 { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 32px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-USdju .framer-1ghw7mg, .framer-USdju .framer-16hcfyk { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-USdju .framer-1uxzln { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-USdju .framer-162qiei-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-USdju .framer-1xbe2np { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 32px; height: min-content; justify-content: flex-end; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 1px; }\",\".framer-USdju .framer-38ymnj-container { aspect-ratio: 1 / 1; cursor: pointer; flex: none; height: var(--framer-aspect-ratio-supported, 34px); position: relative; width: 34px; }\",\".framer-USdju.framer-v-2ni35v.framer-n9jxu1 { padding: 16px; width: 400px; }\",\".framer-USdju.framer-v-2ni35v .framer-1savv95, .framer-USdju.framer-v-2ni35v .framer-1xbe2np { gap: 16px; }\",\".framer-USdju.framer-v-2ni35v .framer-38ymnj-container { height: var(--framer-aspect-ratio-supported, 20px); order: 1; width: 20px; }\",\".framer-USdju.framer-v-2ni35v .framer-16hcfyk { order: 0; }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 127\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"CHEe2d3Os\":{\"layout\":[\"fixed\",\"auto\"]},\"Jj4fMjw_n\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerTOOhuw3T4=withCSS(Component,css,\"framer-USdju\");export default FramerTOOhuw3T4;FramerTOOhuw3T4.displayName=\"Menu\";FramerTOOhuw3T4.defaultProps={height:127,width:1200};addPropertyControls(FramerTOOhuw3T4,{variant:{options:[\"MbOGROfd0\",\"CHEe2d3Os\",\"Jj4fMjw_n\"],optionTitles:[\"White\",\"Black\",\"Mobile\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerTOOhuw3T4,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...LogoFonts,...SearchFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerTOOhuw3T4\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"CHEe2d3Os\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"Jj4fMjw_n\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerIntrinsicHeight\":\"127\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerAutoSizeImages\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TOOhuw3T4.map","// Generated by Framer (8e1ebfe)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,Container,ControlType,cx,GeneratedComponentContext,getFonts,getPropertyControls,PropertyOverrides,RenderTarget,safeCSSValue,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Menu from\"#framer/local/canvasComponent/TOOhuw3T4/TOOhuw3T4.js\";const MenuFonts=getFonts(Menu);const MenuControls=getPropertyControls(Menu);const breakpoints={ctIv77n9u:\"(min-width: 1200px) and (max-width: 1599.98px)\",m9_3n76Wj:\"(min-width: 1600px) and (max-width: 1919.98px)\",Q2_lzH6fD:\"(min-width: 810px) and (max-width: 1199.98px)\",TD1d0stdU:\"(max-width: 809.98px)\",WVmc4ZLLd:\"(min-width: 1920px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-opgTY\";const variantClassNames={ctIv77n9u:\"framer-v-1lvxbq8\",m9_3n76Wj:\"framer-v-ypuprz\",Q2_lzH6fD:\"framer-v-23bjzs\",TD1d0stdU:\"framer-v-9m2m2d\",WVmc4ZLLd:\"framer-v-1rlm7io\"};const O9Vy2En1m=undefined;const JK1Ks7sDF=undefined;const breakpointRules={};const breakpointKeys=Object.keys(breakpointRules);const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-opgTY.framer-395cxo, .framer-opgTY .framer-395cxo { display: block; }\",'.framer-opgTY.framer-1lvxbq8 { --selection-background-color: rgba(11, 15, 13, 0.9); --selection-color: var(--token-c9aad3ae-55ca-4a80-adb7-33ceb44b5272, #5c7956) /* {\"name\":\"Light green\"} */; align-content: center; align-items: center; background-color: var(--1viw46r); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }',\".framer-opgTY .framer-qea9oy { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-opgTY .framer-4lv2hh-container { flex: none; height: auto; left: 0px; order: 1001; position: var(--framer-canvas-fixed-position, fixed); right: 0px; top: 0px; z-index: 1; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }','.framer-opgTY[data-selection=\"true\"] * ::selection, .framer-opgTY [data-selection=\"true\"] * ::selection { color: var(--selection-color, none); background-color: var(--selection-background-color, none); }'];const mediaQueries={ctIv77n9u:\"(min-width: 1200px) and (max-width: 1599.98px)\",m9_3n76Wj:\"(min-width: 1600px) and (max-width: 1919.98px)\",Q2_lzH6fD:\"(min-width: 810px) and (max-width: 1199.98px)\",TD1d0stdU:\"(max-width: 809.98px)\",WVmc4ZLLd:\"(min-width: 1920px)\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const humanReadableEnumMap={Black:\"CHEe2d3Os\",Mobile:\"Jj4fMjw_n\",White:\"MbOGROfd0\"};const humanReadableVariantMap={\"Very Large\":\"WVmc4ZLLd\",Desktop:\"ctIv77n9u\",Large:\"m9_3n76Wj\",Phone:\"TD1d0stdU\",Tablet:\"Q2_lzH6fD\"};const getProps=({background,height,id,navigation,width,...props})=>{return{...props,JK1Ks7sDF:humanReadableEnumMap[navigation]??navigation??props.JK1Ks7sDF??\"MbOGROfd0\",O9Vy2En1m:background??props.O9Vy2En1m??\"rgb(0, 0, 0)\",variant:humanReadableVariantMap[props.variant]??props.variant??\"ctIv77n9u\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,O9Vy2En1m,JK1Ks7sDF,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{isLayoutTemplate:true,primaryVariantId:\"ctIv77n9u\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:`:root body { background: ${safeCSSValue(O9Vy2En1m)}; } @media (min-width: 1600px) and (max-width: 1919.98px) { :root { font-size: 112.5%; } } @media (min-width: 1920px) { :root { font-size: 125%; } }`}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1lvxbq8\",className),\"data-layout-template\":true,\"data-selection\":true,ref:refBinding,style:{\"--1viw46r\":O9Vy2En1m,...style},children:[children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-qea9oy\"}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:127,width:\"100vw\",y:0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-4lv2hh-container\",layoutScroll:true,nodeId:\"f_lOM6F2P\",scopeId:\"BoPVQlvuK\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{TD1d0stdU:{variant:\"Jj4fMjw_n\"}},children:/*#__PURE__*/_jsx(Menu,{height:\"100%\",id:\"f_lOM6F2P\",layoutId:\"f_lOM6F2P\",style:{width:\"100%\"},variant:JK1Ks7sDF,width:\"100%\"})})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"template-overlay\"})]})});});const css=target=>{const isStaticRenderer=target===RenderTarget.canvas||target===RenderTarget.export;if(!isStaticRenderer){return[...rules,...breakpointKeys.map(key=>{const query=mediaQueries[key];return`@media ${query} { ${breakpointRules[key].join(\" \")} }`;})];}return[...rules,...breakpointKeys.flatMap(key=>{const selector=breakpointRules[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"Q2_lzH6fD\":{\"layout\":[\"fixed\",\"fixed\"]},\"TD1d0stdU\":{\"layout\":[\"fixed\",\"fixed\"]},\"m9_3n76Wj\":{\"layout\":[\"fixed\",\"fixed\"]},\"WVmc4ZLLd\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"O9Vy2En1m\":\"background\",\"JK1Ks7sDF\":\"navigation\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"ctIv77n9u\":[\".framer-4lv2hh-container\"],\"Q2_lzH6fD\":[\".framer-4lv2hh-container\"],\"TD1d0stdU\":[\".framer-4lv2hh-container\"],\"m9_3n76Wj\":[\".framer-4lv2hh-container\"],\"WVmc4ZLLd\":[\".framer-4lv2hh-container\"]}\n * @framerBreakpoints {\"WVmc4ZLLd\":{\"min\":1920,\"canvasClassName\":\"framer-1rlm7io-override\",\"minHeight\":1000,\"viewportHeight\":844,\"name\":\"Very Large\",\"width\":1920,\"rootFontSize\":20},\"m9_3n76Wj\":{\"min\":1600,\"max\":1919,\"canvasClassName\":\"framer-ypuprz-override\",\"minHeight\":1000,\"viewportHeight\":844,\"name\":\"Large\",\"width\":1600,\"rootFontSize\":18},\"ctIv77n9u\":{\"min\":1200,\"max\":1599,\"canvasClassName\":\"framer-1lvxbq8-override\",\"minHeight\":1000,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16},\"Q2_lzH6fD\":{\"min\":810,\"max\":1199,\"canvasClassName\":\"framer-23bjzs-override\",\"minHeight\":1000,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":810,\"rootFontSize\":16},\"TD1d0stdU\":{\"max\":809,\"canvasClassName\":\"framer-9m2m2d-override\",\"minHeight\":1000,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant ctIv77n9u\n * @framerLayoutTemplate true\n */const FramerBoPVQlvuK=withCSS(Component,css,\"framer-opgTY\");export default FramerBoPVQlvuK;FramerBoPVQlvuK.displayName=\"Main\";FramerBoPVQlvuK.defaultProps={height:1e3,width:1200};addPropertyControls(FramerBoPVQlvuK,{O9Vy2En1m:{defaultValue:\"rgb(0, 0, 0)\",description:\"\",title:\"Background\",type:ControlType.Color},JK1Ks7sDF:MenuControls?.[\"variant\"]&&{...MenuControls[\"variant\"],defaultValue:\"MbOGROfd0\",description:undefined,hidden:undefined,title:\"Navigation\"}});addFonts(FramerBoPVQlvuK,[{explicitInter:true,fonts:[]},...MenuFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerBoPVQlvuK\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"1000\",\"framerDefaultVariant\":\"ctIv77n9u\",\"framerAutoSizeImages\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerBreakpoints\":\"{\\\"WVmc4ZLLd\\\":{\\\"min\\\":1920,\\\"canvasClassName\\\":\\\"framer-1rlm7io-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Very Large\\\",\\\"width\\\":1920,\\\"rootFontSize\\\":20},\\\"m9_3n76Wj\\\":{\\\"min\\\":1600,\\\"max\\\":1919,\\\"canvasClassName\\\":\\\"framer-ypuprz-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Large\\\",\\\"width\\\":1600,\\\"rootFontSize\\\":18},\\\"ctIv77n9u\\\":{\\\"min\\\":1200,\\\"max\\\":1599,\\\"canvasClassName\\\":\\\"framer-1lvxbq8-override\\\",\\\"minHeight\\\":1000,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16},\\\"Q2_lzH6fD\\\":{\\\"min\\\":810,\\\"max\\\":1199,\\\"canvasClassName\\\":\\\"framer-23bjzs-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":810,\\\"rootFontSize\\\":16},\\\"TD1d0stdU\\\":{\\\"max\\\":809,\\\"canvasClassName\\\":\\\"framer-9m2m2d-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerHitTargets\":\"{\\\"ctIv77n9u\\\":[\\\".framer-4lv2hh-container\\\"],\\\"Q2_lzH6fD\\\":[\\\".framer-4lv2hh-container\\\"],\\\"TD1d0stdU\\\":[\\\".framer-4lv2hh-container\\\"],\\\"m9_3n76Wj\\\":[\\\".framer-4lv2hh-container\\\"],\\\"WVmc4ZLLd\\\":[\\\".framer-4lv2hh-container\\\"]}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"Q2_lzH6fD\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"TD1d0stdU\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"m9_3n76Wj\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"WVmc4ZLLd\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"O9Vy2En1m\\\":\\\"background\\\",\\\"JK1Ks7sDF\\\":\\\"navigation\\\"}\",\"framerColorSyntax\":\"true\",\"framerLayoutTemplate\":\"true\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","\r\n        import * as Framer from \"framer\";\r\nimport * as React from \"react\";\r\nimport { createPortal } from \"react-dom\";\r\nimport * as ReactDOM from \"react-dom/client\";\r\nimport Main from \"https://framerusercontent.com/modules/IIIwW7Z14exgMXCAQ5d7/Y45QmRdmqbc2xHEre4rD/BoPVQlvuK.js\";\r\n\r\n        const routes = {JmFkLyOSl: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/C70XOWF18fziTJY7TeRo/n4qW68CR7v8JSRxildjd/JmFkLyOSl.js\")), path: \"/\"}, UjsIMMG9M: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ZNnQ3dDbs4QoNjrRjtSz/vFoDAInti0pQyY6t9lee/UjsIMMG9M.js\")), path: \"/discover\"}, yh537a6Mo: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/eUstyTm6gzhQkn17ukbw/NJW1ux7w0pMzojsA4zOU/yh537a6Mo.js\")), path: \"/404\"}, jxYyOTari: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/15QhntIlCWSX9PGmI8in/gP9vTFVRZSID8TsMEr6E/jxYyOTari.js\")), path: \"/learn\"}, VOTS09WK2: {collectionId: \"PgMksBNaS\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/BMIquwcalk6u5pKXQV2r/mGJW1m657SeJak5KCKBN/VOTS09WK2.js\")), path: \"/discover/:etAZGYNlN\"}, gyyTPRIPu: {collectionId: \"H3HyN7YJz\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/M2H4ZCzK92MFCcKHfcbT/UeFmFCeH9kajtH3qNUIo/gyyTPRIPu.js\")), path: \"/learn/:f9yp5aB9D\"}}\r\n\r\n        const locales = [{code: \"en-US\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n        const collectionUtils = {H3HyN7YJz: async () => (await import(\"https://framerusercontent.com/modules/qhZg46yOLlROoubPosCU/zBGso7yrCkA7AydxzFnv/H3HyN7YJz.js\"))?.[\"utils\"], PgMksBNaS: async () => (await import(\"https://framerusercontent.com/modules/nG5WsRwULl6OIZYuODLD/rVtor4wKN5qanUyeeZqS/PgMksBNaS.js\"))?.[\"utils\"]}\r\n        const framerSiteId = \"db3c81cc97344132212d36bf15a4a48aa8362a405385f224a5ceb42f5ceee18c\"\r\n        function Template({webPageId, children, style, ...rest}) {const props1 = {JK1Ks7sDF: \"MbOGROfd0\", O9Vy2En1m: \"rgb(0, 0, 0)\"}\r\nconst props2 = {...props1, O9Vy2En1m: \"var(--token-ac3aba86-b999-41f0-9299-f50c21aeb99a, rgb(11, 15, 13))\"}\r\nconst props3 = {...props1, JK1Ks7sDF: \"CHEe2d3Os\", O9Vy2En1m: \"var(--token-dce7897c-de52-4442-a1d6-f3ae0e58cd41, rgb(248, 247, 242))\"}\r\nconst templateProps = {C1oxooWKK: props1, gyyTPRIPu: props1, HcQcnuMh2: props1, JmFkLyOSl: props1, jxYyOTari: props3, UjsIMMG9M: props2, VOTS09WK2: props1}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"JmFkLyOSl\":\r\ncase \"UjsIMMG9M\":\r\ncase \"jxYyOTari\":\r\ncase \"HcQcnuMh2\":\r\ncase \"C1oxooWKK\":\r\ncase \"VOTS09WK2\":\r\ncase \"gyyTPRIPu\":\r\nreturn React.createElement(Main, {...props, key: \"Main\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"JmFkLyOSl\":\r\ncase \"UjsIMMG9M\":\r\ncase \"jxYyOTari\":\r\ncase \"HcQcnuMh2\":\r\ncase \"C1oxooWKK\":\r\ncase \"VOTS09WK2\":\r\ncase \"gyyTPRIPu\":\r\nreturn [{hash: \"1rlm7io\", mediaQuery: \"(min-width: 1920px)\"}, {hash: \"ypuprz\", mediaQuery: \"(min-width: 1600px) and (max-width: 1919.98px)\"}, {hash: \"1lvxbq8\", mediaQuery: \"(min-width: 1200px) and (max-width: 1599.98px)\"}, {hash: \"23bjzs\", mediaQuery: \"(min-width: 810px) and (max-width: 1199.98px)\"}, {hash: \"9m2m2d\", mediaQuery: \"(max-width: 809.98px)\"}]\r\ndefault: { return undefined }}}\r\n\r\n        export async function getPageRoot({ routeId, pathVariables, localeId }) {\r\n            const rootPreload = routes[routeId].page.preload()\r\n\r\n            const content = React.createElement(\r\n                Framer.PageRoot,\r\n                {\r\n                    isWebsite: true,\r\n                    routeId,\r\n                    pathVariables,\r\n                    routes,\r\n                    collectionUtils,\r\n                    framerSiteId,\r\n                    notFoundPage: Framer.lazy(() => import(\"https://framerusercontent.com/modules/eUstyTm6gzhQkn17ukbw/NJW1ux7w0pMzojsA4zOU/yh537a6Mo.js\")),\r\n                    isReducedMotion: undefined,\r\n                    localeId,\r\n                    locales,\r\n                    preserveQueryParams: undefined,\r\n                    siteCanonicalURL: \"https://psylopedia.com\",\r\n                    EditorBar: \r\n            typeof window !== \"undefined\" ? (() => {\r\n                const isBot = /bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)\r\n                if (isBot) {\r\n                    console.log(\"[Framer On-Page Editing] Unavailable because navigator is bot\")\r\n                    return\r\n                }\r\n\r\n                return Framer.lazy(async () => {\r\n                    const dependencies = {\r\n                        __version: 3,\r\n                        framer: {\r\n                            useCurrentRoute: Framer.useCurrentRoute,\r\n                            useLocaleInfo: Framer.useLocaleInfo,\r\n                            useRouter: Framer.useRouter,\r\n                        },\r\n                        react: {\r\n                            createElement: React.createElement,\r\n                            Fragment: React.Fragment,\r\n                            memo: React.memo,\r\n                            useCallback: React.useCallback,\r\n                            useEffect: React.useEffect,\r\n                            useRef: React.useRef,\r\n                            useState: React.useState,\r\n                            useLayoutEffect: React.useLayoutEffect,\r\n                        },\r\n                        \"react-dom\": { createPortal },\r\n                    }\r\n\r\n                    window.__framer_editorBarDependencies = dependencies\r\n\r\n                    const { createEditorBar } = await import(\"https://framer.com/edit/init.mjs\")\r\n                    return {\r\n                        default: createEditorBar(),\r\n                    }\r\n                })\r\n            })() : undefined\r\n        ,\r\n                    adaptLayoutToTextDirection: false,\r\n                    LayoutTemplate: Template,\r\n                    loadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/CE9jq118RNO7BGw2ml7n/yf2gw1zpwc01K5K4cWXg/snippets.js\")),\r\n                }\r\n            )\r\n\r\n            const contentWithFeaturesContext = React.createElement(\r\n                Framer.LibraryFeaturesProvider,\r\n                {\r\n                    children: content,\r\n                    value: {autobahnNavigation: false, customCodeSiteSettings: true, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: false, onPageMoveTool: false, synchronousNavigationOnDesktop: false, yieldOnTap: false}\r\n                }\r\n            )\r\n\r\n            const contentWithGracefullyDegradingErrorBoundary = React.createElement(Framer.GracefullyDegradingErrorBoundary, {\r\n                children: contentWithFeaturesContext\r\n            })\r\n\r\n            \r\n            const page = React.createElement(Framer.PageEffectsProvider, {\r\n                children: contentWithGracefullyDegradingErrorBoundary,\r\n                value: {global: {enter: {opacity: 0, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0, duration: 0.2, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"0px\"}, exit: {opacity: 0, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0.2, duration: 0.2, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"0px\"}}, routes: {}}\r\n            })\r\n\r\n            // We don't want the initial render to immediately have to suspend.\r\n            await rootPreload\r\n            return page\r\n        }\r\n\r\n        const isBrowser = typeof document !== \"undefined\"\r\n        if (isBrowser) {\r\n            window.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\r\n                return React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\r\n            }\r\n\r\n            window.__framer_events = window.__framer_events || []\r\n\r\n            // Initialize lazy modules cache for hydration\r\n            Framer.initLazyModulesCache()\r\n\r\n            // Fallback support for stack gaps\r\n            Framer.installFlexboxGapWorkaroundIfNeeded()\r\n\r\n            const container = document.getElementById(\"main\")\r\n            // We know that #main is parsed before this script, so we don't need to wait for DOMContentLoaded or similar events.\r\n            if (\"framerHydrateV2\" in container.dataset) main(true, container)\r\n            else main(false, container)\r\n        }\r\n\r\n        function track() {\r\n            if (!isBrowser) return\r\n            window.__framer_events.push(arguments)\r\n        }\r\n\r\n        async function main(shouldHydrate, container) {\r\n            function handleError(error, errorInfo, recoverable = true) {\r\n                if (error.caught || window.__framer_hadFatalError) return // we already logged it\r\n\r\n                const componentStack = errorInfo?.componentStack\r\n                if (recoverable) {\r\n                    console.warn(\"Caught a recoverable error. The site is still functional, but might have some UI flickering or degraded page load performance. If you are the author of this website, update external components and check recently added custom code or code overrides to fix the following server/client mismatches:\\n\", error, componentStack)\r\n                    // we only want to collect 1%, because this can be quite noisy (floods the data pipeline)\r\n                    if (Math.random() > 0.01) return\r\n                } else {\r\n                    console.error(\"Caught a fatal error. Please report the following to the Framer team via https://www.framer.com/contact/:\\n\", error, componentStack)\r\n                }\r\n                track(recoverable ? \"published_site_load_recoverable_error\" : \"published_site_load_error\", {\r\n                    message: String(error),\r\n                    componentStack, // componentStack is more useful\r\n                    stack: componentStack ? undefined : error instanceof Error && typeof error.stack === \"string\" ? error.stack : null,\r\n                })\r\n            }\r\n\r\n            try {\r\n                let routeId, localeId, pathVariables, breakpoints\r\n                if (shouldHydrate) {\r\n                    const routeData = JSON.parse(container.dataset[\"framerHydrateV2\"])\r\n                    routeId = routeData.routeId\r\n                    localeId = routeData.localeId\r\n                    pathVariables = routeData.pathVariables\r\n                    breakpoints = routeData.breakpoints\r\n\r\n                    routeId = Framer.patchRoutesForABTesting(routes, routeId) // Prioritize optimized route id to avoid flickering in browsers not supporting the server-timing header (Safari older than 16.4)\r\n                } else {\r\n                    Framer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\r\n                    \r\n                    const serverRouteExperimentEnabled = true\r\n                    const serverRoute = serverRouteExperimentEnabled && performance.getEntriesByType(\"navigation\")[0]?.serverTiming?.find(e => e.name === \"route\")?.description\r\n                    if (serverRoute) {\r\n                        const routeData = new URLSearchParams(serverRoute)\r\n                        routeId = routeData.get(\"id\")\r\n                        localeId = routeData.get(\"locale\")\r\n                        for (const [key, value] of routeData.entries()) {\r\n                            if (!key.startsWith(\"var.\")) continue\r\n                            pathVariables ??= {}\r\n                            pathVariables[key.slice(4)] = value\r\n                        }\r\n                    }\r\n                    if (!routeId || !localeId) {\r\n                        const routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\r\n                        routeId = routeData.routeId\r\n                        localeId = routeData.localeId\r\n                        pathVariables = routeData.pathVariables\r\n                    }\r\n                    \r\n                }\r\n\r\n                const pagePromise = getPageRoot({ routeId, localeId, pathVariables })\r\n\r\n                \r\nif (typeof window !== \"undefined\") {\r\n    void (async () => {\r\n        const route = routes[routeId]\r\n\r\n        const defaultLocaleId = \"default\"\r\n        const framerLocale = locales.find(({ id }) => !localeId ? id === defaultLocaleId : id === localeId).code\r\n\r\n        let collectionItemId = null\r\n        if (route?.collectionId && collectionUtils) {\r\n              const utils = await collectionUtils[route.collectionId]?.()\r\n              const [slug] = Object.values(pathVariables)\r\n              if (utils && typeof slug === \"string\") {\r\n                  collectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n              }\r\n        }\r\n\r\n        const resolvedDateTimeOptions = Intl.DateTimeFormat().resolvedOptions()\r\n        const timezone = resolvedDateTimeOptions.timeZone\r\n        const locale = resolvedDateTimeOptions.locale\r\n\r\n        // wait for the page to be activated before sending the pageview event\r\n        // https://developer.chrome.com/docs/web-platform/prerender-pages#impact-on-analytics\r\n        await new Promise((resolve) => {\r\n            if (document.prerendering) {\r\n                document.addEventListener(\"prerenderingchange\", resolve, { once: true })\r\n            } else {\r\n                resolve()\r\n            }\r\n        })\r\n\r\n        window.__framer_events.push([\r\n            \"published_site_pageview\",\r\n            {\r\n                framerSiteId: framerSiteId ?? null,\r\n                version: 2,\r\n                routePath: route?.path || \"/\",\r\n                collectionItemId,\r\n                framerLocale: framerLocale || null,\r\n                webPageId: route?.abTestingVariantId ?? routeId,\r\n                abTestId: route?.abTestId,\r\n                referrer: document.referrer || null,\r\n                url: window.location.href,\r\n                hostname: window.location.hostname || null,\r\n                pathname: window.location.pathname || null,\r\n                hash: window.location.hash || null,\r\n                search: window.location.search || null,\r\n                timezone,\r\n                locale,\r\n            },\r\n            \"eager\"\r\n        ])\r\n\r\n        // Yield to avoid blocking the main thread with the user code\r\n        await Framer.yieldToMain({ priority: \"background\", ensureContinueBeforeUnload: true, continueAfter: \"paint\" })\r\n\r\n        document.dispatchEvent(new CustomEvent(\"framer:pageview\", {\r\n            detail: { framerLocale: framerLocale || null }\r\n        }))\r\n    })()\r\n}\r\n\r\n\r\n                const page = await pagePromise\r\n                if (shouldHydrate) {\r\n                    \r\n\r\n                    Framer.withPerformanceMarks(\"framer-rewrite-breakpoints\", () => {\r\n                        Framer.removeHiddenBreakpointLayersV2(breakpoints)\r\n                        window.__framer_onRewriteBreakpoints?.(breakpoints)\r\n                    })\r\n\r\n                    \r\n\r\n                    const startTransition = React.startTransition\r\n                    startTransition(() => {\r\n                        Framer.markHydrationStart()\r\n                        if (true) Framer.turnOffReactEventHandling()\r\n                        ReactDOM.hydrateRoot(container, page, { onRecoverableError: handleError })\r\n                    })\r\n                } else {\r\n                    \r\n                    ReactDOM.createRoot(container, { onRecoverableError: handleError }).render(page)\r\n                }\r\n            } catch (error) {\r\n                handleError(error, undefined, false)\r\n                throw error\r\n            }\r\n        }\r\n\r\n        \r\n\r\n        \r\n    "],"mappings":"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"}