{"version":3,"file":"script_main.B5uEp4e_.mjs","names":["addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","SVG","addPropertyOverrides","Carrot","cycleOrder","serializationHash","variantClassNames","transition1","matchVariant","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","RichText","useState","addPropertyOverrides","TagSpaceProfileFonts","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","sharedStyle.className","RichText","sharedStyle.css","sharedStyle.fonts","NavbarTrigger","addPropertyOverrides","TagSpaceLogoStrokeLightHorizontalFonts","TagSpaceLogoStrokeLightHorizontal","Button","NavbarExapnded","cycleOrder","serializationHash","variantClassNames","transition1","matchVariant","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","sharedStyle.className","RichText","sharedStyle.css","sharedStyle.fonts","NavbarTrigger","fonts","css","className","css","TagSpaceLogoStrokeLightHorizontal","serializationHash","variantClassNames","React.useContext","React.useMemo","humanReadableVariantMap","React.Fragment","getProps","React.forwardRef","useRef","React.useId","sharedStyle.className","sharedStyle1.className","sharedStyle2.className","className","RichText","sharedStyle.css","sharedStyle1.css","sharedStyle2.css","sharedStyle.fonts","sharedStyle1.fonts","sharedStyle2.fonts","Navigation3","Footer","useRef","React.useId","PropertyOverrides","React.createElement","Navbar","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.GracefullyDegradingErrorBoundary","Framer.PageEffectsProvider","Framer.patchRoutesForABTesting","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder"],"sources":["https:/framerusercontent.com/modules/64erBVSomn8GjaEzXV5N/gcR7tEG7wDyxohS01cGy/Fyjn85alL.js","https:/framerusercontent.com/modules/aqMCxxOqlfziMcHUhKZ6/7dtk2ihDql4SF4vt1Cyu/eKxhKRl9m.js","https:/framerusercontent.com/modules/b6R2BcVLJR2Rqd6kFbSq/8xNgt3mVpsYuBG7AMOwB/TagSpaceProfile.js","https:/framerusercontent.com/modules/0amASGzXRQn8n8wAGrZv/xeCpz0YkFlhorgkSo8LT/rKO_1eR5s.js","https:/framerusercontent.com/modules/WI1rwIVVJXeMYeZFjDj8/nkgusO8CrDIN1r2gOv8J/E9INuSD06.js","https:/framerusercontent.com/modules/9hqpdwzFP8drjJzaFqpA/UkX8AJpWtPZOm62oDcdq/gGtoTtSLX.js","https:/framerusercontent.com/modules/pxzhk7vq3t3AmWLWZfKu/7d54lPOAwaG07yuz77K1/Yb57bkoSr.js","https:/framerusercontent.com/modules/mCedf7LqEDKP0n4pHP84/XTk5RDgxcYhrB5VQrcS5/oQJHlUdob.js","https:/framerusercontent.com/modules/nO6bFISWsTFdWRnhRuZE/oCkj49IWnxzTmfqnFrVw/cu0E82NUV.js","framer:toplevel/main"],"sourcesContent":["// Generated by Framer (4ecd144)\nimport{jsx as _jsx}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=[\"i4iiJok6f\",\"gAWWXLAA4\"];const serializationHash=\"framer-2w3tT\";const variantClassNames={gAWWXLAA4:\"framer-v-dr77o0\",i4iiJok6f:\"framer-v-cb6ski\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={\"Variant 1\":\"i4iiJok6f\",\"Variant 2\":\"gAWWXLAA4\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"i4iiJok6f\"};};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:\"i4iiJok6f\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-cb6ski\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"i4iiJok6f\",ref:refBinding,style:{...style},...addPropertyOverrides({gAWWXLAA4:{\"data-framer-name\":\"Variant 2\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SVG,{className:\"framer-1xjszn0\",\"data-framer-name\":\"Vector\",fill:\"rgba(0,0,0,1)\",intrinsicHeight:8,intrinsicWidth:12,layoutDependency:layoutDependency,layoutId:\"I8167:3003;4628:23120\",style:{rotate:0},svg:'<svg width=\"12\" height=\"8\" viewBox=\"0 0 12 8\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\\n<path d=\"M2.1251 1.00002L6.0051 4.88002L9.8851 1.00002C10.2751 0.61002 10.9051 0.61002 11.2951 1.00002C11.6851 1.39002 11.6851 2.02002 11.2951 2.41002L6.7051 7.00002C6.3151 7.39002 5.6851 7.39002 5.2951 7.00002L0.705098 2.41002C0.315098 2.02002 0.315098 1.39002 0.705098 1.00002C1.0951 0.62002 1.7351 0.61002 2.1251 1.00002Z\" fill=\"white\"/>\\n</svg>\\n',variants:{gAWWXLAA4:{rotate:-180}},withExternalLayout:true})})})})});});const css=[\".framer-2w3tT.framer-ysbso7, .framer-2w3tT .framer-ysbso7 { display: block; }\",\".framer-2w3tT.framer-cb6ski { gap: 0px; height: 24px; overflow: hidden; position: relative; width: 24px; }\",\".framer-2w3tT .framer-1xjszn0 { bottom: 9px; flex: none; left: 6px; position: absolute; right: 7px; top: 8px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 24\n * @framerIntrinsicWidth 24\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"gAWWXLAA4\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerFyjn85alL=withCSS(Component,css,\"framer-2w3tT\");export default FramerFyjn85alL;FramerFyjn85alL.displayName=\"Carrot\";FramerFyjn85alL.defaultProps={height:24,width:24};addPropertyControls(FramerFyjn85alL,{variant:{options:[\"i4iiJok6f\",\"gAWWXLAA4\"],optionTitles:[\"Variant 1\",\"Variant 2\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerFyjn85alL,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerFyjn85alL\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"gAWWXLAA4\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicWidth\":\"24\",\"framerIntrinsicHeight\":\"24\",\"framerContractVersion\":\"1\",\"framerAutoSizeImages\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Fyjn85alL.map","// Generated by Framer (4ecd144)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,RichText,runTasksWithYield,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Carrot from\"https://framerusercontent.com/modules/64erBVSomn8GjaEzXV5N/gcR7tEG7wDyxohS01cGy/Fyjn85alL.js\";const CarrotFonts=getFonts(Carrot);const cycleOrder=[\"DHPgEuZck\",\"VWTHifdJM\"];const serializationHash=\"framer-7FNhU\";const variantClassNames={DHPgEuZck:\"framer-v-rg25x8\",VWTHifdJM:\"framer-v-12rour5\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const eQzn4fqoB=undefined;const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={\"Variant 1\":\"DHPgEuZck\",\"Variant 2\":\"VWTHifdJM\"};const Variants=motion.create(React.Fragment);const getProps=({height,hover,id,width,...props})=>{return{...props,eQzn4fqoB:hover??props.eQzn4fqoB,variant:humanReadableVariantMap[props.variant]??props.variant??\"DHPgEuZck\"};};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,eQzn4fqoB,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"DHPgEuZck\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onMouseEnteryinuvf=activeVariantCallback(async(...args)=>{setGestureState({isHovered:true});if(eQzn4fqoB){const res=await eQzn4fqoB(...args);if(res===false)return false;}});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-rg25x8\",className,classNames),\"data-framer-name\":\"Variant 1\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"DHPgEuZck\",onMouseEnter:onMouseEnteryinuvf,ref:refBinding,style:{...style},...addPropertyOverrides({VWTHifdJM:{\"data-framer-name\":\"Variant 2\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"15px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.2px\",\"--framer-line-height\":\"2em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:\"Foundations\"})}),className:\"framer-1ufia4f\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"ffu9NxKk2\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:24,width:\"24px\",y:(componentViewport?.y||0)+(0+((componentViewport?.height||200)-0-24)/2),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1vi3kk2-container\",layoutDependency:layoutDependency,layoutId:\"BnZTTC2tE-container\",nodeId:\"BnZTTC2tE\",rendersWithMotion:true,scopeId:\"eKxhKRl9m\",style:{opacity:1},variants:{VWTHifdJM:{opacity:.8}},children:/*#__PURE__*/_jsx(Carrot,{height:\"100%\",id:\"BnZTTC2tE\",layoutId:\"BnZTTC2tE\",style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"i4iiJok6f\"),width:\"100%\",...addPropertyOverrides({VWTHifdJM:{variant:matchVariant(\"gAWWXLAA4\")}},baseVariant,gestureVariant)})})})]})})})});});const css=[\".framer-7FNhU.framer-629p2d, .framer-7FNhU .framer-629p2d { display: block; }\",\".framer-7FNhU.framer-rg25x8 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-7FNhU .framer-1ufia4f { -webkit-user-select: none; flex: none; height: auto; position: relative; user-select: none; white-space: pre; width: auto; }\",\".framer-7FNhU .framer-1vi3kk2-container { flex: none; height: 24px; position: relative; width: 24px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 30\n * @framerIntrinsicWidth 64\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"VWTHifdJM\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"eQzn4fqoB\":\"hover\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramereKxhKRl9m=withCSS(Component,css,\"framer-7FNhU\");export default FramereKxhKRl9m;FramereKxhKRl9m.displayName=\"Navbar Trigger\";FramereKxhKRl9m.defaultProps={height:30,width:64};addPropertyControls(FramereKxhKRl9m,{variant:{options:[\"DHPgEuZck\",\"VWTHifdJM\"],optionTitles:[\"Variant 1\",\"Variant 2\"],title:\"Variant\",type:ControlType.Enum},eQzn4fqoB:{title:\"Hover\",type:ControlType.EventHandler}});addFonts(FramereKxhKRl9m,[{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/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{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/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{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/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{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/UjlFhCnUjxhNfep4oYBPqnEssyo.woff2\",weight:\"500\"},{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/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"}]},...CarrotFonts],{supportsExplicitInterCodegen:true});FramereKxhKRl9m.loader={load:(props,context)=>{return runTasksWithYield([()=>forwardLoader(Carrot,{},context)],context);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramereKxhKRl9m\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"30\",\"framerComponentViewportWidth\":\"true\",\"framerContractVersion\":\"1\",\"framerAutoSizeImages\":\"true\",\"framerVariables\":\"{\\\"eQzn4fqoB\\\":\\\"hover\\\"}\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"VWTHifdJM\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"64\",\"framerColorSyntax\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./eKxhKRl9m.map","// @ts-nocheck\n// tagSpace profile button (Framer code component). GENERATED - do not edit in Framer.\n//\n// Source: tagSpace.SharedWeb/{hosted-login/hosted-login.js, session/tagspace-session.js, profile/tagspace-profile.js}\n// Rebuild: node tagSpace.SharedWeb/framer/build-framer.mjs, then paste this whole file over the\n// Framer code component's contents.\n//\n// Place it in the nav, left of \"Get The App\". Signed out it is a \"Log in\" link (match the nav links\n// with the Font / Color / Uppercase properties) that goes straight to tagSpace sign-in. Signed in it\n// is the visitor's profile picture, which drops down the profile panel (card, \"Edit my profile\",\n// Log out).\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{createElement,useEffect,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";const ApiBases={Development:\"https://development.api.tagspace-dev.com\",Production:\"https://api.tagspace-dev.com\"};// Defines <tagspace-profile> once, in the browser only.\nfunction defineTagSpaceProfile(){if(typeof window===\"undefined\"||customElements.get(\"tagspace-profile\"))return;// ── hosted-login/hosted-login.js ──────────────────────────────────────────────────────────\n// Frames the REST API's hosted sign-in page and hands back what it produces.\n//\n// Every browser client signs in the same way: fetch a nonce, show {api}/auth/login in\n// a full-viewport iframe, wait for the page to post its result, then send that payload\n// to POST {api}/auth/reown-login (directly, or through the client's own server). This\n// is the middle step, shared so that tagStudio and the website frame the page\n// identically. tagSpace web has its own copy in tagSpace.Blazor/wwwroot/index.html,\n// with WebXR concerns this one does not have.\n//\n// The page addresses its messages to one origin. Framed from another origin it has to\n// be told which, so parentOrigin is passed when the page is not on ours - and the\n// page's server only honours origins it knows.\n//\n// Resolves with the payload JSON string, or null when the user dismissed the widget\n// (or the page went away without a result). Never rejects.\n/**\n     * @param {object} options\n     * @param {string} options.loginPage   URL of the sign-in page (…/auth/login), absolute or relative.\n     * @param {string} options.nonce       Nonce from POST /auth/nonce.\n     * @param {string} [options.surface]   'desktop' (default), 'overlay' or 'mobile' - see Login.cshtml.\n     * @param {boolean} [options.showWhenReady]  Keep the frame invisible until the page reports\n     *     its widget is up (default true), so the host's own \"please wait\" is the only feedback.\n     * @param {number} [options.readyTimeoutMs]  Show the frame anyway after this long (default 8000),\n     *     so a page that failed is seen rather than waited on.\n     * @param {HTMLElement} [options.mount]  Where the frame goes (default document.body).\n     * @param {HTMLElement} [options.backdrop]  The host's own content, to be blurred and dimmed\n     *     behind the widget for as long as it is up - the glass effect the 'overlay' surface\n     *     is for. A frame cannot blur what is behind it (backdrop-filter samples its own\n     *     document only), so the host has to; pass the element the app renders into.\n     * @param {(line: string) => void} [options.log]  Diagnostics sink (default console.log).\n     * @returns {Promise<string|null>}\n     */function hostedLogin(options){const loginPage=options.loginPage;const surface=options.surface||\"desktop\";const showWhenReady=options.showWhenReady!==false;const readyTimeoutMs=options.readyTimeoutMs||8e3;const mount=options.mount||document.body;const backdrop=options.backdrop||null;const log=options.log||(line=>console.log(line));const pageUrl=new URL(loginPage,window.location.href);pageUrl.searchParams.set(\"nonce\",options.nonce);pageUrl.searchParams.set(\"surface\",surface);if(pageUrl.origin!==window.location.origin)pageUrl.searchParams.set(\"parentOrigin\",window.location.origin);const pageOrigin=pageUrl.origin;return new Promise(resolve=>{const frame=document.createElement(\"iframe\");frame.src=pageUrl.toString();frame.title=\"Sign in to tagSpace\";// The page paints its own ground (or, on the overlay surface, deliberately none),\n// so the frame itself stays clear.\nframe.style.cssText=\"position:fixed;top:0;left:0;width:100%;height:100%;border:0;\"+\"background:transparent;z-index:2147483000;pointer-events:auto\";if(showWhenReady)frame.style.visibility=\"hidden\";frame.allow=\"clipboard-write; publickey-credentials-get\";// The soft keyboard covers the bottom of the layout viewport without shrinking\n// it, and the widget's sheet is anchored to the bottom. The visual viewport does\n// shrink, so the frame is kept fitted to that and the sheet re-anchors above the\n// keyboard.\nconst vv=window.visualViewport;function fit(){frame.style.top=vv.offsetTop+\"px\";frame.style.left=vv.offsetLeft+\"px\";frame.style.width=vv.width+\"px\";frame.style.height=vv.height+\"px\";}if(vv){vv.addEventListener(\"resize\",fit);vv.addEventListener(\"scroll\",fit);fit();}let done=false;let revealTimer=null;// Applied when the widget shows and lifted when it goes, so nothing behind is\n// touched while the page is still loading unseen.\nlet savedBackdrop=null;function glass(on){if(!backdrop)return;if(on){if(savedBackdrop===null)savedBackdrop={filter:backdrop.style.filter,transition:backdrop.style.transition};backdrop.style.transition=\"filter .25s ease\";backdrop.style.filter=\"blur(10px) brightness(.7)\";}else if(savedBackdrop!==null){backdrop.style.filter=savedBackdrop.filter;backdrop.style.transition=savedBackdrop.transition;savedBackdrop=null;}}function reveal(){if(revealTimer){clearTimeout(revealTimer);revealTimer=null;}frame.style.visibility=\"visible\";glass(true);}function settle(payload){if(done)return;done=true;window.removeEventListener(\"message\",onMessage);if(vv){vv.removeEventListener(\"resize\",fit);vv.removeEventListener(\"scroll\",fit);}if(revealTimer)clearTimeout(revealTimer);glass(false);frame.remove();log(\"[HostedLogin] result: \"+(payload?\"signed in\":\"dismissed\"));resolve(payload||null);}function onMessage(event){if(event.origin!==pageOrigin)return;if(event.source!==frame.contentWindow)return;const data=event.data;if(!data||typeof data.type!==\"string\")return;if(data.type===\"tagspace:ready\"){reveal();}else if(data.type===\"tagspace:login-result\"){settle(data.payload);}}frame.addEventListener(\"load\",()=>{// Same-origin only: a cross-origin frame's window is sealed, and that is fine -\n// the page reports its own failures to its own console.\nlet w=null;try{w=frame.contentWindow;void w.document;}catch(e){w=null;}if(!w)return;log(\"[HostedLogin] frame loaded, secure=\"+w.isSecureContext);const fe=w.console.error.bind(w.console),fw=w.console.warn.bind(w.console);w.console.error=function(){fe.apply(null,arguments);log(\"[HostedLogin:frame:error] \"+Array.prototype.join.call(arguments,\" \"));};w.console.warn=function(){fw.apply(null,arguments);log(\"[HostedLogin:frame:warn] \"+Array.prototype.join.call(arguments,\" \"));};w.addEventListener(\"error\",e=>log(\"[HostedLogin:frame:uncaught] \"+(e.error&&e.error.stack||e.message)));w.addEventListener(\"unhandledrejection\",e=>log(\"[HostedLogin:frame:rejection] \"+(e.reason&&e.reason.stack||e.reason)));// The page navigating away (a form submit that was not intercepted, say) would\n// take the widget with it and never send a result.\nw.addEventListener(\"pagehide\",()=>{if(done)return;log(\"[HostedLogin] framed page is unloading WITHOUT a result\");settle(null);});});log(\"[HostedLogin] opening \"+pageUrl);window.addEventListener(\"message\",onMessage);if(showWhenReady){revealTimer=setTimeout(()=>{log(\"[HostedLogin] no ready signal after \"+readyTimeoutMs+\"ms, showing the page anyway\");reveal();},readyTimeoutMs);}mount.appendChild(frame);});}// ── session/tagspace-session.js ───────────────────────────────────────────────────────────\n// A tagSpace sign-in session for a browser page that isn't the Web App: the tagspace.com website\n// today, through the <tagspace-profile> component.\n//\n// It signs in exactly as tagStudio and the Web App do: fetch a nonce, frame rest-api's hosted\n// sign-in page (hosted-login.js), and send its payload to POST /auth/reown-login. The tokens are\n// kept in this origin's localStorage, so a returning visitor is restored with POST /auth/refresh.\n//\n// It is shared on purpose: anything on the page that wants to know who is signed in (the profile\n// card now, the leaderboards next, to highlight the visitor's rank) uses the one session, through\n// getSession(apiBase), and listens for its 'change' event.\n//\n// There is no guest account here. Signed out simply means no tokens.\nconst StorageKeyPrefix=\"tagspace.session:\";class TagSpaceSession extends EventTarget{get signedIn(){return!!(this.tokens&&this.tokens.idToken);}get email(){return this.tokens?this.tokens.email:null;}_changed(){this.dispatchEvent(new Event(\"change\"));}_save(){try{if(this.tokens)localStorage.setItem(this.storageKey,JSON.stringify(this.tokens));else localStorage.removeItem(this.storageKey);}catch(e){/* private mode: the session lasts as long as the page */}}/** Restores a stored session (once per page; later calls share the first). Never rejects. */restore(){if(!this._restoring)this._restoring=this._restore();return this._restoring;}async _restore(){let stored=null;try{stored=JSON.parse(localStorage.getItem(this.storageKey)||\"null\");}catch(e){stored=null;}if(!stored||!stored.refreshToken)return;this.tokens=stored;// A fresh id token per page load, as the apps do per launch; a stale one would fail later.\nconst ok=await this._refresh();if(ok)await this.loadProfile();this._changed();}/** @returns {Promise<boolean>} false when the session is gone (it is then cleared). */async _refresh(){if(!this.tokens||!this.tokens.refreshToken)return false;try{const response=await fetch(this.apiBase+\"/auth/refresh\",{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify({refreshToken:this.tokens.refreshToken})});if(response.status===401){this._clear();return false;}// revoked or expired: sign in again\nif(!response.ok)return!!this.tokens.idToken// API unreachable: keep what we have\n;const body=await response.json();this.tokens={idToken:body.idToken,refreshToken:body.refreshToken||this.tokens.refreshToken,email:this.tokens.email};this._save();return true;}catch(e){return!!this.tokens.idToken;}}_clear(){this.tokens=null;this.profile=null;this.xp=null;this._save();}/**\n         * Opens the hosted sign-in page over the site. Resolves to null on success (or when the visitor\n         * closed it), else a message fit to show them.\n         */async signIn(){if(this.busy)return null;this.busy=true;this._changed();try{const nonceResponse=await fetch(this.apiBase+\"/auth/nonce\",{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:\"{}\"});const nonce=nonceResponse.ok?(await nonceResponse.json()).nonce:null;if(!nonce)return\"Can't reach tagSpace right now. Please try again.\";const payload=await hostedLogin({loginPage:this.apiBase+\"/auth/login\",nonce,surface:\"overlay\",// Framer renders the site into #main: blurred behind the widget, which can't blur it itself.\nbackdrop:document.getElementById(\"main\")});if(!payload)return null// closed by the visitor\n;const loginResponse=await fetch(this.apiBase+\"/auth/reown-login\",{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:payload});if(!loginResponse.ok)return\"Sign-in failed. Please try again.\";const login=await loginResponse.json();if(login.status===\"verification_required\")return\"This account needs to be linked to your wallet before you can sign in. Please contact tagSpace support.\";if(!login.idToken)return\"Sign-in failed. Please try again.\";this.tokens={idToken:login.idToken,refreshToken:login.refreshToken,email:login.email||null};this._save();// The sign-in response carries the profile; no need to ask again.\nthis.profile=login.profile||null;if(!this.profile)await this.loadProfile(false);else await this.loadXp(false);return null;}catch(e){console.warn(\"[tagSpace] sign-in failed\",e);return\"Can't reach tagSpace right now. Please try again.\";}finally{this.busy=false;this._changed();}}signOut(){this._clear();this._changed();}/**\n         * One authorised call to rest-api, its { ok, result } envelope unwrapped. A 401 refreshes the\n         * id token once and retries. Never rejects.\n         * @returns {Promise<{ok:boolean, result?:any, error?:string, status?:number}>}\n         */async call(path,init={},retried=false){if(!this.signedIn)return{ok:false,error:\"You're not signed in\",status:401};let response;try{response=await fetch(this.apiBase+path,{...init,headers:{...init.headers||{},Authorization:\"Bearer \"+this.tokens.idToken}});}catch(e){return{ok:false,error:\"Can't reach tagSpace right now. Please try again.\"};}if(response.status===401&&!retried){if(await this._refresh())return this.call(path,init,true);this._changed();return{ok:false,error:\"Please sign in again.\",status:401};}// nginx refuses an oversized upload itself, with HTML rather than the envelope.\nif(response.status===413)return{ok:false,error:\"Pictures must be under 10 MB\",status:413};let body=null;try{body=await response.json();}catch(e){body=null;}if(!body)return{ok:false,error:\"Something went wrong. Please try again.\",status:response.status};if(!body.ok){const error=body.error||{};return{ok:false,error:error.message||\"Something went wrong. Please try again.\",status:error.status};}return{ok:true,result:body.result};}/** GET /profile (and the tagXP balance with it). */async loadProfile(notify=true){const r=await this.call(\"/profile\");if(r.ok)this.profile=r.result;await this.loadXp(false);if(notify)this._changed();return r;}/** GET /xp: the balance the apps show (spendable). */async loadXp(notify=true){const r=await this.call(\"/xp\");if(r.ok)this.xp=r.result;if(notify)this._changed();return r;}/** Applies a profile change's result (PUT/DELETE /profile/…). */async _profileChange(path,init){const r=await this.call(path,init);if(r.ok){this.profile=r.result;this._changed();}return r;}checkUsername(name){return this.call(\"/profile/username/check?username=\"+encodeURIComponent(name));}setUsername(name){return this._profileChange(\"/profile/username\",{method:\"PUT\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify({username:name})});}/** @param {Blob} jpeg the picture, already shrunk; the server crops it square to 512 px. */setPicture(jpeg){return this._profileChange(\"/profile/picture\",{method:\"PUT\",headers:{\"Content-Type\":jpeg.type||\"image/jpeg\"},body:jpeg});}removePicture(){return this._profileChange(\"/profile/picture\",{method:\"DELETE\"});}/** @param {string} apiBase rest-api origin, e.g. https://api.tagspace-dev.com */constructor(apiBase){super();this.apiBase=String(apiBase||\"\").replace(/\\/+$/,\"\");this.storageKey=StorageKeyPrefix+this.apiBase;/** @type {{idToken:string, refreshToken:string, email:string}|null} */this.tokens=null;/** GET /profile: { username, generated, canChange, nextChangeAt, changedAt, pictureUrl } */this.profile=null;/** GET /xp: { lifetime, spendable } */this.xp=null;this.busy=false;this._restoring=null;}}const sessions=new Map;/** The page's one session for this API: shared by every tagSpace component on the page. */function getSession(apiBase){const key=String(apiBase||\"\").replace(/\\/+$/,\"\");let session=sessions.get(key);if(!session){session=new TagSpaceSession(key);sessions.set(key,session);}return session;}// ── profile/tagspace-profile.js ───────────────────────────────────────────────────────────\n// <tagspace-profile>: the visitor's tagSpace profile as a picture button that opens a modal.\n//\n//   <tagspace-profile api-base=\"https://api.tagspace-dev.com\" size=\"44\"\n//                     signed-out=\"link\" label=\"Log in\"></tagspace-profile>\n//\n// Signed in, it is the visitor's profile picture (or their initial). Clicking it opens a panel\n// with the same profile card the apps' Profile screens show: picture, @username, email (to its\n// owner only), tagXP balance, \"Edit my profile\" (an overlaid menu: username, picture), and Log out.\n//\n// Signed out, it depends on signed-out:\n//   link   - a \"Log in\" text link that goes straight to sign-in: the website's nav. It takes the\n//            surrounding font and colour, so it matches the nav links next to it.\n//   avatar - (default) the guest placeholder picture, opening the card with Log in / Create account,\n//            as the apps' Profile screens do.\n//\n// The panel drops down under the button on wider screens, with no backdrop; on phones it is a\n// centred sheet over a dimmed page.\n//\n// Framework-free (a custom element with its own shadow DOM), so the same file serves the\n// tagspace.com website (wrapped as a Framer code component: ../framer/TagSpaceProfile.tsx) and,\n// later, the Web App and the native apps' WebViews, replacing their interim editors\n// (Docs/Handover-UserProfiles.md §6a).\n//\n// The modal is a column of sections. The profile card is the first; the leaderboards are the next\n// one planned (registerProfileSection), sharing this sign-in session to highlight the visitor.\n// ── Shared copy: as tagSpace.Shared/Profiles/ProfileService.cs, so every surface reads the same ──\nconst ProfileCopy={editMyProfile:\"Edit my profile\",chooseUsername:\"Choose your username\",changeUsername:\"Change username\",rulesHint:\"3 to 20 letters, numbers, '.', '_' or '-'.\",generatedHint:\"Replacing your generated username is free; after that you can change it once every 30 days.\",cooldownHint:\"You can change it once every 30 days.\",checking:\"Checking…\",available:\"Available\",saved:\"Saved.\",uploadPicture:\"Upload picture\",changePicture:\"Change picture\",removePicture:\"Remove picture\",pictureTooBig:\"Pictures must be under 10 MB\",pictureUnreadable:\"That picture couldn't be read. Try a JPEG or PNG.\",logIn:\"Log in / Create account\",logOut:\"Log out\",pleaseWait:\"Please wait…\",guestUsername:\"SpatialGuest\"};const MaxPictureBytes=10*1024*1024;const UploadMaxEdge=2048;const UploadJpegQuality=.9;const CheckDebounceMs=400;const UsernameMaxLength=20;const StandIn=\"#7b6cf6\";const Brand=\"#00ccbc\";// tagSpace.Shared/Resources/Images/profile_guest_avatar.svg, inlined so the component is one file.\nconst GuestAvatar=\"data:image/svg+xml;charset=utf-8,\"+encodeURIComponent('<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"256\" height=\"256\" viewBox=\"0 0 256 256\">'+'<defs><linearGradient id=\"bg\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"1\"><stop offset=\"0\" stop-color=\"#00CCBC\"/>'+'<stop offset=\"1\" stop-color=\"#1F3767\"/></linearGradient><clipPath id=\"disc\"><circle cx=\"128\" cy=\"128\" r=\"128\"/>'+'</clipPath></defs><circle cx=\"128\" cy=\"128\" r=\"128\" fill=\"url(#bg)\"/>'+'<g clip-path=\"url(#disc)\" fill=\"#FFFFFF\" fill-opacity=\"0.94\"><path d=\"M40 256 C40 196 78 166 128 166 '+'C178 166 216 196 216 256 Z\"/><circle cx=\"128\" cy=\"100\" r=\"48\"/></g>'+'<path d=\"M110 86 A18 18 0 1 1 138 101 C131 105 128 109 128 116 L128 120\" fill=\"none\" stroke=\"#00A99C\" '+'stroke-width=\"10\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><circle cx=\"128\" cy=\"136\" r=\"6\" fill=\"#00A99C\"/></svg>');/** \"@name\"; the \"@\" is display only and never stored. */function atName(name){return name?\"@\"+name:\"\";}/** What a typed name is sent as: trimmed, without one leading \"@\" (as the server's UsernameRules). */function normalizeUsername(typed){let name=String(typed||\"\").trim();if(name.startsWith(\"@\"))name=name.slice(1).trimStart();return name;}function initial(name){const n=normalizeUsername(name);return n?n[0].toUpperCase():\"?\";}function esc(s){return String(s==null?\"\":s).replace(/[&<>\"']/g,c=>({\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#39;\"})[c]);}function formatXp(n){return typeof n===\"number\"?n.toLocaleString(\"en-US\"):\"—\";}function nextChangeText(profile){if(!profile||profile.canChange||!profile.nextChangeAt)return null;const when=new Date(profile.nextChangeAt);return\"You can change your username again on \"+when.toLocaleDateString(undefined,{day:\"numeric\",month:\"long\",year:\"numeric\"})+\".\";}function editHint(profile){return ProfileCopy.rulesHint+\" \"+(profile&&profile.generated?ProfileCopy.generatedHint:ProfileCopy.cooldownHint);}/** The picked file, upright and shrunk to UploadMaxEdge, as a JPEG Blob. */async function shrinkToJpeg(file){// from-image: honour the photo's EXIF orientation, since re-encoding drops the tag.\nconst bitmap=await createImageBitmap(file,{imageOrientation:\"from-image\"});const scale=Math.min(1,UploadMaxEdge/Math.max(bitmap.width,bitmap.height));const w=Math.max(1,Math.round(bitmap.width*scale));const h=Math.max(1,Math.round(bitmap.height*scale));const canvas=document.createElement(\"canvas\");canvas.width=w;canvas.height=h;const ctx=canvas.getContext(\"2d\");ctx.fillStyle=\"#ffffff\"// JPEG has no alpha: transparency becomes white, as on the server\n;ctx.fillRect(0,0,w,h);ctx.drawImage(bitmap,0,0,w,h);if(bitmap.close)bitmap.close();const blob=await new Promise(r=>canvas.toBlob(r,\"image/jpeg\",UploadJpegQuality));if(!blob)throw new Error(\"JPEG encode failed\");return blob;}// ── Sections of the modal ───────────────────────────────────────────────────────────────────────\nconst sections=[];/**\n     * Adds a section to the modal, below the profile card (the leaderboards are next).\n     * @param {{ id: string, render: (container: HTMLElement, ctx: { session: any, host: HTMLElement }) => (void|(() => void)) }} section\n     *   render fills the container each time the modal opens or the session changes; it may return a cleanup.\n     */function registerProfileSection(section){if(!sections.some(s=>s.id===section.id))sections.push(section);}// ── Styles ──────────────────────────────────────────────────────────────────────────────────────\nconst ButtonCss=`\n      :host { display: inline-block; vertical-align: middle; }\n      .pic { all: unset; cursor: pointer; display: block; border-radius: 50%; overflow: hidden;\n        width: var(--ts-size, 44px); height: var(--ts-size, 44px); box-shadow: 0 2px 10px rgba(0,0,0,.25);\n        background: ${StandIn}; position: relative; }\n      .pic:focus-visible, .text:focus-visible { outline: 3px solid ${Brand}; outline-offset: 2px; }\n      .pic img { width: 100%; height: 100%; object-fit: cover; display: block; }\n      .pic span { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;\n        color: #fff; font: 600 calc(var(--ts-size, 44px) * .45) system-ui, -apple-system, Helvetica, sans-serif; line-height: 1; }\n      /* Signed out, as a nav link: everything typographic comes from the page around it. */\n      .text { all: unset; cursor: pointer; font: inherit; color: inherit; letter-spacing: inherit;\n        text-transform: inherit; white-space: nowrap; }\n      .text:hover { opacity: .8; }\n      .text[aria-busy=\"true\"] { opacity: .6; cursor: default; }\n    `;const ModalCss=`\n      :host { all: initial; }\n      * { box-sizing: border-box; }\n      .scrim, .dscrim { font-family: system-ui, -apple-system, \"SF Pro Text\", Helvetica, sans-serif; }\n      /* A dropdown under the button: the scrim is clear and only catches clicks outside the panel. */\n      .scrim { position: fixed; inset: 0; z-index: 2147482000; background: transparent; }\n      .sheet { position: absolute; top: var(--ts-top, 72px); right: var(--ts-right, 16px);\n        width: min(360px, calc(100vw - 32px)); max-height: calc(100dvh - var(--ts-top, 72px) - 16px); overflow-y: auto;\n        border-radius: 16px; background: #f7f7f7; box-shadow: 0 12px 40px rgba(0,0,0,.35); }\n      .head { display: none; }\n      .sections { padding-top: 16px !important; }\n      /* Phones: a centred sheet over a dimmed page, with a close button. */\n      @media (max-width: 480px) {\n        .scrim { display: flex; align-items: center; justify-content: center; padding: 16px; background: rgba(0,0,0,.45); }\n        .sheet { position: static; width: 100%; max-height: calc(100dvh - 32px); }\n        .head { display: flex; justify-content: flex-end; padding: 8px 8px 0; }\n        .sections { padding-top: 0 !important; }\n      }\n      /* On opening only: the panel re-renders on every change, which must not replay these. */\n      .scrim.enter { animation: fade .15s ease; }\n      .scrim.enter .sheet { animation: drop .18s ease; }\n      @keyframes fade { from { opacity: 0; } }\n      @keyframes drop { from { transform: translateY(-8px); opacity: 0; } }\n      .close { all: unset; cursor: pointer; width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center;\n        justify-content: center; color: #5f646c; font-size: 22px; line-height: 1; }\n      .close:hover { background: #ececec; }\n      .sections { display: flex; flex-direction: column; gap: 12px; padding: 0 16px 16px; }\n\n      .card { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 20px 16px 14px;\n        background: #fff; border: 1px solid #e7e7e7; border-radius: 8px; text-align: center; }\n      .avatar { width: 88px; height: 88px; border-radius: 50%; overflow: hidden; background: ${StandIn}; position: relative; margin-bottom: 8px; }\n      .avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }\n      .avatar span { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: #fff;\n        font-weight: 600; font-size: 38px; }\n      .name { font-size: 24px; font-weight: 700; color: #252729; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n      .email { font-size: 15px; color: #5f646c; }\n      .xp { font-size: 16px; font-weight: 700; color: #252729; margin-top: 8px; }\n      .link { all: unset; cursor: pointer; color: ${StandIn}; font-weight: 600; font-size: 15px; padding: 8px 12px; margin-top: 2px;\n        display: inline-flex; align-items: center; gap: 6px; }\n      .link[disabled] { opacity: .45; cursor: default; }\n      .status { margin: 0; font-size: 14px; color: #5f646c; }\n      .status.ok { color: #1e8e3e; } .status.bad { color: #b00020; }\n\n      .login { all: unset; box-sizing: border-box; cursor: pointer; width: 100%; padding: 13px; border-radius: 100px; text-align: center;\n        font-weight: 500; font-size: 17px; background: #fff; border: 1.5px solid ${Brand}; color: ${Brand}; }\n      .login.out { border-color: #a3a7ae; color: #a3a7ae; }\n      .login[disabled] { cursor: default; }\n      .error { margin: 0; font-size: 14px; color: #b00020; text-align: center; }\n\n      .spinner { width: 14px; height: 14px; border-radius: 50%; border: 2px solid currentColor; border-right-color: transparent;\n        animation: spin .8s linear infinite; display: inline-block; vertical-align: -2px; }\n      @keyframes spin { to { transform: rotate(360deg); } }\n\n      /* The \"Edit my profile\" menu and the username editor: dialogs over the modal, as the apps' */\n      .dscrim { position: fixed; inset: 0; z-index: 2147482001; display: flex; align-items: center; justify-content: center;\n        padding: 24px; background: rgba(0,0,0,.4); }\n      .dialog { width: 100%; max-width: 360px; display: flex; flex-direction: column; gap: 12px; padding: 24px 24px 12px;\n        border-radius: 12px; background: #fff; box-shadow: 0 8px 32px rgba(0,0,0,.25); }\n      .dtitle { font-size: 20px; font-weight: 600; color: #252729; }\n      .items { display: flex; flex-direction: column; margin: 0 -24px; }\n      .item { all: unset; cursor: pointer; padding: 14px 24px; font-size: 16px; color: #252729; }\n      .item:hover { background: #f2f2f2; }\n      .actions { display: flex; justify-content: flex-end; gap: 4px; }\n      .action { all: unset; cursor: pointer; padding: 10px 12px; color: ${StandIn}; font-weight: 600; font-size: 15px;\n        text-transform: uppercase; display: inline-flex; align-items: center; gap: 6px; }\n      .action[disabled] { opacity: .4; cursor: default; }\n      .at { display: flex; align-items: center; height: 44px; border: 1px solid #d0d0d0; border-radius: 8px; overflow: hidden; }\n      .at span { display: flex; align-items: center; height: 100%; padding: 0 12px; background: #f2f2f2; color: #5f646c; font-weight: 600; }\n      .at input { flex: 1; min-width: 0; height: 100%; padding: 0 12px; border: none; outline: none; font-size: 17px; color: #252729; font-family: inherit; }\n      .check { margin: 0; font-size: 14px; color: #5f646c; } .check.ok { color: #1e8e3e; } .check.bad { color: #b00020; }\n      .hint { margin: 0; font-size: 14px; line-height: 19px; color: #5f646c; }\n    `;// ── The element ─────────────────────────────────────────────────────────────────────────────────\nclass TagSpaceProfileElement extends HTMLElement{static get observedAttributes(){return[\"api-base\",\"size\",\"signed-out\",\"label\"];}connectedCallback(){this._attachSession();this._renderButton();}disconnectedCallback(){if(this._session)this._session.removeEventListener(\"change\",this._onChange);this._closeModal();}attributeChangedCallback(name){if(!this.isConnected)return;if(name===\"api-base\")this._attachSession();this._renderButton();}_attachSession(){const apiBase=this.getAttribute(\"api-base\");if(!apiBase)return;const session=getSession(apiBase);if(session===this._session)return;if(this._session)this._session.removeEventListener(\"change\",this._onChange);this._session=session;session.addEventListener(\"change\",this._onChange);session.restore();}get _signedIn(){return!!(this._session&&this._session.signedIn);}_avatarHtml(){const s=this._session;if(!this._signedIn)return`<img src=\"${GuestAvatar}\" alt=\"\">`;const p=s.profile;if(p&&p.pictureUrl)return`<img src=\"${esc(p.pictureUrl)}\" alt=\"\">`;return`<span>${esc(initial(p&&p.username))}</span>`;}get _linkWhenSignedOut(){return this.getAttribute(\"signed-out\")===\"link\";}_renderButton(){const size=parseInt(this.getAttribute(\"size\")||\"44\",10)||44;this.style.setProperty(\"--ts-size\",size+\"px\");// Signed out on the website: a plain \"Log in\" link, straight to sign-in.\nif(!this._signedIn&&this._linkWhenSignedOut){const busy=!!(this._session&&this._session.busy);const label=this.getAttribute(\"label\")||\"Log in\";this._root.innerHTML=`<style>${ButtonCss}</style>`+`<button type=\"button\" class=\"text\" aria-busy=\"${busy}\">${esc(label)}</button>`;this._root.querySelector(\"button\").addEventListener(\"click\",()=>this._signInFromLink());return;}const label=this._signedIn&&this._session.profile?\"Profile: \"+atName(this._session.profile.username):\"Profile\";this._root.innerHTML=`<style>${ButtonCss}</style><button type=\"button\" class=\"pic\" aria-label=\"${esc(label)}\">${this._avatarHtml()}</button>`;this._root.querySelector(\"button\").addEventListener(\"click\",()=>this.open());}// The \"Log in\" link signs in directly. Only a problem opens the panel, to say what went wrong\n// (with Log in / Create account to try again).\nasync _signInFromLink(){if(!this._session||this._session.busy)return;const problem=await this._session.signIn();if(problem){this.open();this._loginError=problem;this._renderModal();}}// ── Modal ──\n/** Opens the profile modal. */open(){if(this._modal)return;const host=document.createElement(\"div\");host.setAttribute(\"data-tagspace-profile-modal\",\"\");const root=host.attachShadow({mode:\"open\"});document.body.appendChild(host)// outside any transformed Framer layer, so fixed is the viewport\n;this._modal={host,root,cleanups:[]};this._onKey=e=>{if(e.key===\"Escape\")this._escape();};document.addEventListener(\"keydown\",this._onKey);window.addEventListener(\"resize\",this._onResize);this._status=null;this._loginError=null;this._renderModal();if(this._signedIn)this._session.loadProfile()// fresh figures each time it opens\n;}_closeModal(){if(!this._modal)return;this._modal.cleanups.forEach(c=>{try{c();}catch(e){/* ignore */}});this._modal.host.remove();this._modal=null;this._menuOpen=false;this._editor=null;document.removeEventListener(\"keydown\",this._onKey);window.removeEventListener(\"resize\",this._onResize);}_escape(){if(this._editor){this._editor=null;this._renderModal();}else if(this._menuOpen){this._menuOpen=false;this._renderModal();}else this._closeModal();}_renderModal(){if(!this._modal)return;const{root}=this._modal;const s=this._session;const signedIn=this._signedIn;const p=s.profile;const busy=s.busy;const keepFocus=this._editor&&root.activeElement&&root.activeElement.tagName===\"INPUT\";const name=signedIn?atName(p&&p.username||\"\"):atName(ProfileCopy.guestUsername);const xp=s.xp?formatXp(s.xp.spendable):\"—\";const status=this._status?`<p class=\"status ${this._status.kind||\"\"}\">${esc(this._status.text)}</p>`:\"\";const card=`\n          <div class=\"card\">\n            <div class=\"avatar\">${this._avatarHtml()}</div>\n            <div class=\"name\">${esc(name)}</div>\n            ${signedIn?`\n              <div class=\"email\">${esc(s.email||\"\")}</div>\n              <div class=\"xp\">${esc(xp)} tagXP</div>\n              <button class=\"link\" data-act=\"menu\" ${this._pictureBusy?\"disabled\":\"\"}>\n                ${this._pictureBusy?'<span class=\"spinner\"></span>':\"\"}${ProfileCopy.editMyProfile}</button>\n              ${status}`:\"\"}\n          </div>\n          <button class=\"login ${signedIn?\"out\":\"\"}\" data-act=\"login\" ${busy?\"disabled\":\"\"}>\n            ${busy?'<span class=\"spinner\"></span> '+ProfileCopy.pleaseWait:signedIn?ProfileCopy.logOut:ProfileCopy.logIn}</button>\n          ${this._loginError?`<p class=\"error\">${esc(this._loginError)}</p>`:\"\"}`;// Dropped down from the button: its bottom edge, right-aligned with it.\nconst anchor=this.getBoundingClientRect();const top=Math.round(anchor.bottom+8);const right=Math.max(16,Math.round(window.innerWidth-anchor.right));root.innerHTML=`<style>${ModalCss}</style>\n          <div class=\"scrim${this._modal.entered?\"\":\" enter\"}\" data-act=\"close\" style=\"--ts-top:${top}px;--ts-right:${right}px\">\n            <div class=\"sheet\" role=\"dialog\" aria-modal=\"true\" aria-label=\"Your tagSpace profile\">\n              <div class=\"head\"><button class=\"close\" data-act=\"close\" aria-label=\"Close\">\\xd7</button></div>\n              <div class=\"sections\"><section data-section=\"profile\">${card}</section></div>\n            </div>\n          </div>\n          ${this._menuHtml()}${this._editorHtml()}`;// Sections registered by other features (the leaderboards next), below the card.\nthis._modal.cleanups.forEach(c=>{try{c();}catch(e){/* ignore */}});this._modal.cleanups=[];const list=root.querySelector(\".sections\");for(const section of sections){const el=document.createElement(\"section\");el.setAttribute(\"data-section\",section.id);list.appendChild(el);const cleanup=section.render(el,{session:s,host:this});if(typeof cleanup===\"function\")this._modal.cleanups.push(cleanup);}this._modal.entered=true;root.querySelector(\".scrim\").addEventListener(\"click\",e=>{if(e.target.dataset.act===\"close\")this._closeModal();});root.querySelector(\".close\").addEventListener(\"click\",()=>this._closeModal());root.querySelector('[data-act=\"login\"]').addEventListener(\"click\",()=>this._onLoginClicked());const menu=root.querySelector('[data-act=\"menu\"]');if(menu)menu.addEventListener(\"click\",()=>{this._menuOpen=true;this._status=null;this._renderModal();});this._wireMenu(root);this._wireEditor(root,keepFocus);}async _onLoginClicked(){const s=this._session;this._loginError=null;if(s.signedIn){s.signOut();if(this._linkWhenSignedOut)this._closeModal();return;}const problem=await s.signIn();this._loginError=problem;this._renderModal();}// ── \"Edit my profile\" menu ──\n_menuHtml(){if(!this._menuOpen)return\"\";const p=this._session.profile;const hasPicture=!!(p&&p.pictureUrl);const generated=!p||p.generated;return`\n          <div class=\"dscrim\" data-act=\"menu-close\">\n            <div class=\"dialog\" role=\"dialog\" aria-modal=\"true\" aria-label=\"${ProfileCopy.editMyProfile}\">\n              <div class=\"dtitle\">${ProfileCopy.editMyProfile}</div>\n              <div class=\"items\">\n                <button class=\"item\" data-act=\"username\">${generated?ProfileCopy.chooseUsername:ProfileCopy.changeUsername}</button>\n                <button class=\"item\" data-act=\"picture\">${hasPicture?ProfileCopy.changePicture:ProfileCopy.uploadPicture}</button>\n                ${hasPicture?`<button class=\"item\" data-act=\"remove\">${ProfileCopy.removePicture}</button>`:\"\"}\n              </div>\n              <div class=\"actions\"><button class=\"action\" data-act=\"menu-close\">Cancel</button></div>\n            </div>\n          </div>`;}_wireMenu(root){if(!this._menuOpen)return;const close=()=>{this._menuOpen=false;this._renderModal();};root.querySelector(\".dscrim\").addEventListener(\"click\",e=>{if(e.target.dataset.act===\"menu-close\")close();});root.querySelector('[data-act=\"username\"]').addEventListener(\"click\",()=>{this._menuOpen=false;const p=this._session.profile;const next=nextChangeText(p);// Within the 30-day limit there is nothing to edit yet: say when there will be.\nif(p&&!p.generated&&next){this._status={text:next};this._renderModal();return;}this._editor={draft:!p||p.generated?\"\":p.username||\"\",check:null,checking:false,saving:false,error:null,seq:0};this._renderModal();});root.querySelector('[data-act=\"picture\"]').addEventListener(\"click\",()=>{this._menuOpen=false;this._renderModal();this._pickPicture();});const remove=root.querySelector('[data-act=\"remove\"]');if(remove)remove.addEventListener(\"click\",async()=>{this._menuOpen=false;this._pictureBusy=true;this._status=null;this._renderModal();const r=await this._session.removePicture();this._pictureBusy=false;this._status=r.ok?null:{text:r.error,kind:\"bad\"};this._renderModal();});}// ── Picture ──\n_pickPicture(){const input=document.createElement(\"input\");input.type=\"file\";input.accept=\"image/jpeg,image/png,image/webp,image/gif\";input.addEventListener(\"change\",async()=>{const file=input.files&&input.files[0];if(!file)return;if(file.size>MaxPictureBytes){this._status={text:ProfileCopy.pictureTooBig,kind:\"bad\"};this._renderModal();return;}this._pictureBusy=true;this._status=null;this._renderModal();let jpeg=null;try{jpeg=await shrinkToJpeg(file);}catch(e){jpeg=null;}const r=jpeg?await this._session.setPicture(jpeg):{ok:false,error:ProfileCopy.pictureUnreadable};this._pictureBusy=false;this._status=r.ok?null:{text:r.error,kind:\"bad\"};this._renderModal();});input.click();}// ── Username editor (as tagStudio's profile page and the apps) ──\n_editorHtml(){const ed=this._editor;if(!ed)return\"\";const p=this._session.profile;const name=normalizeUsername(ed.draft);const canSave=!ed.saving&&ed.check&&ed.check.valid&&ed.check.available&&ed.check.username===name;let check=\"\";if(ed.checking)check=`<p class=\"check\">${ProfileCopy.checking}</p>`;else if(ed.check){const ok=ed.check.valid&&ed.check.available;check=`<p class=\"check ${ok?\"ok\":\"bad\"}\">${esc(ok?ProfileCopy.available:ed.check.message||\"That username can't be used\")}</p>`;}return`\n          <div class=\"dscrim\" data-act=\"edit-close\">\n            <div class=\"dialog\" role=\"dialog\" aria-modal=\"true\">\n              <div class=\"dtitle\">${!p||p.generated?ProfileCopy.chooseUsername:ProfileCopy.changeUsername}</div>\n              <div class=\"at\"><span>@</span><input value=\"${esc(ed.draft)}\" maxlength=\"${UsernameMaxLength}\" autocomplete=\"off\"\n                autocapitalize=\"off\" autocorrect=\"off\" spellcheck=\"false\" aria-label=\"Username\"></div>\n              ${check}\n              ${ed.error?`<p class=\"check bad\">${esc(ed.error)}</p>`:\"\"}\n              <p class=\"hint\">${esc(editHint(p))}</p>\n              <div class=\"actions\">\n                <button class=\"action\" data-act=\"edit-close\">Cancel</button>\n                <button class=\"action\" data-act=\"save\" ${canSave?\"\":\"disabled\"}>${ed.saving?'<span class=\"spinner\"></span>':\"\"}Save</button>\n              </div>\n            </div>\n          </div>`;}_wireEditor(root,keepFocus){const ed=this._editor;if(!ed)return;const input=root.querySelector(\".at input\");const close=()=>{ed.seq++;this._editor=null;this._renderModal();};root.querySelector('.dscrim[data-act=\"edit-close\"]').addEventListener(\"click\",e=>{if(e.target.dataset.act===\"edit-close\")close();});root.querySelector('button[data-act=\"edit-close\"]').addEventListener(\"click\",close);root.querySelector('[data-act=\"save\"]').addEventListener(\"click\",()=>this._save());input.addEventListener(\"keydown\",e=>{if(e.key===\"Enter\")this._save();});input.addEventListener(\"input\",()=>this._onDraft(input));// Re-rendering replaces the input: keep the caret where the visitor was typing.\nconst caret=ed.caret!=null?ed.caret:input.value.length;if(keepFocus||ed.focus!==false){input.focus();try{input.setSelectionRange(caret,caret);}catch(e){/* ignore */}ed.focus=true;}}async _onDraft(input){const ed=this._editor;ed.draft=input.value;ed.caret=input.selectionStart;ed.error=null;const seq=++ed.seq;const name=normalizeUsername(ed.draft);const p=this._session.profile;ed.check=null;ed.checking=false;if(!name||p&&name===p.username){this._renderModal();return;}this._renderModal();await new Promise(r=>setTimeout(r,CheckDebounceMs));if(seq!==ed.seq||this._editor!==ed)return;ed.checking=true;this._renderModal();const r=await this._session.checkUsername(name);// A later keystroke (or Cancel) has superseded this answer.\nif(seq!==ed.seq||this._editor!==ed)return;ed.checking=false;if(r.ok)ed.check=r.result;else ed.error=r.error;this._renderModal();}async _save(){const ed=this._editor;if(!ed)return;const name=normalizeUsername(ed.draft);if(ed.saving||!(ed.check&&ed.check.valid&&ed.check.available&&ed.check.username===name))return;ed.saving=true;ed.error=null;this._renderModal();const r=await this._session.setUsername(name);if(this._editor!==ed)return;ed.saving=false;if(r.ok){ed.seq++;this._editor=null;this._status={text:ProfileCopy.saved,kind:\"ok\"};}else{ed.error=r.error// the dialog stays open, so the reason shows in it\n;}this._renderModal();}constructor(){super();this._root=this.attachShadow({mode:\"open\"});this._onChange=()=>{this._renderButton();this._renderModal();};this._modal=null// { host, root } while open\n;this._status=null// { text, kind } under the \"Edit my profile\" link\n;this._loginError=null;this._pictureBusy=false;this._menuOpen=false;this._editor=null// username editor state while open\n;this._onResize=()=>this._renderModal();}}if(!customElements.get(\"tagspace-profile\"))customElements.define(\"tagspace-profile\",TagSpaceProfileElement);}/**\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n */export default function TagSpaceProfile(props){const{api=\"Development\",size=44,label=\"Log in\",font,color=\"#FFFFFF\",uppercase=true,style}=props;const[ready,setReady]=useState(false);useEffect(()=>{defineTagSpaceProfile();setReady(true);},[]);// A plain root that Framer can measure. Signed out, the element is a \"Log in\" link that takes\n// its font and colour from here, to match the nav; signed in, it is the profile picture.\nreturn /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-flex\",alignItems:\"center\",minHeight:size,color,textTransform:uppercase?\"uppercase\":\"none\",...font,...style},children:ready&&/*#__PURE__*/createElement(\"tagspace-profile\",{\"api-base\":ApiBases[api]||ApiBases.Development,size:String(size),\"signed-out\":\"link\",label})});}addPropertyControls(TagSpaceProfile,{api:{type:ControlType.Enum,title:\"API\",options:[\"Development\",\"Production\"],defaultValue:\"Development\"},label:{type:ControlType.String,title:\"Log in label\",defaultValue:\"Log in\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:15,fontWeight:600}},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#FFFFFF\"},uppercase:{type:ControlType.Boolean,title:\"Uppercase\",defaultValue:true},size:{type:ControlType.Number,title:\"Picture size\",min:24,max:96,step:1,defaultValue:44}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"TagSpaceProfile\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TagSpaceProfile.map","// Generated by Framer (2f17f47)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,getFontsFromSharedStyle,Link,RichText,runTasksWithYield,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS,withFX,withOptimizedAppearEffect}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import NavbarTrigger from\"https://framerusercontent.com/modules/aqMCxxOqlfziMcHUhKZ6/7dtk2ihDql4SF4vt1Cyu/eKxhKRl9m.js\";import TagSpaceProfile from\"https://framerusercontent.com/modules/b6R2BcVLJR2Rqd6kFbSq/8xNgt3mVpsYuBG7AMOwB/TagSpaceProfile.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/d4tDnucRkE5T6ZgqzqjT/0l2vrC1C8Rjs7y0lJDF4/ro7OPezbn.js\";const TagSpaceProfileFonts=getFonts(TagSpaceProfile);const MotionDivWithFX=withFX(motion.div);const MotionDivWithFXWithOptimizedAppearEffect=withOptimizedAppearEffect(MotionDivWithFX);const cycleOrder=[\"CyJykYwr0\",\"TdiJBHyLP\"];const serializationHash=\"framer-ZcY41\";const variantClassNames={CyJykYwr0:\"framer-v-4fcii6\",TdiJBHyLP:\"framer-v-dma2tw\"};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 transition2={bounce:.2,delay:0,duration:1,type:\"spring\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition2,x:0,y:0};const animation1={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:20};const animation2={opacity:.7,rotate:0,rotateX:0,rotateY:0,scale:1.01,skewX:0,skewY:0,transition:transition1};const transition3={delay:0,duration:.4,ease:[.44,0,.56,1],type:\"tween\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={\"Desktop - Closed (Light)\":\"CyJykYwr0\",\"Mobile - Open (Dark)\":\"TdiJBHyLP\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"CyJykYwr0\"};};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:\"CyJykYwr0\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-4fcii6\",className,classNames),\"data-framer-name\":\"Desktop - Closed (Light)\",layoutDependency:layoutDependency,layoutId:\"CyJykYwr0\",ref:refBinding,style:{...style},...addPropertyOverrides({TdiJBHyLP:{\"data-framer-name\":\"Mobile - Open (Dark)\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(MotionDivWithFXWithOptimizedAppearEffect,{__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,animate:animation,className:\"framer-11jz9u9\",\"data-framer-appear-id\":\"11jz9u9\",\"data-framer-name\":\"Mobile\",initial:animation1,layoutDependency:layoutDependency,layoutId:\"QvHreLsZS\",optimized:true,children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1y5464b\",\"data-framer-name\":\"Links\",layoutDependency:layoutDependency,layoutId:\"bf5_O7h0Y\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"calc(var(--framer-root-font-size, 1rem) * 1.13)\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"F_pzU4eM2\"},motionChild:true,nodeId:\"rjxPm2v76\",openInNewTab:false,relValues:[],scopeId:\"rKO_1eR5s\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1wicq5s\",\"data-styles-preset\":\"ro7OPezbn\",children:\"Explorers\"})})})}),className:\"framer-17bgpgq\",\"data-framer-name\":\"Explorers\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"rjxPm2v76\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"calc(var(--framer-root-font-size, 1rem) * 1.13)\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"AU249UgGE\"},motionChild:true,nodeId:\"UxZMj7Teq\",openInNewTab:false,relValues:[],scopeId:\"rKO_1eR5s\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1wicq5s\",\"data-styles-preset\":\"ro7OPezbn\",children:\"Brands\"})})})}),className:\"framer-qykqzp\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"UxZMj7Teq\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"calc(var(--framer-root-font-size, 1rem) * 1.13)\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"pfzR3IGDJ\"},motionChild:true,nodeId:\"tc7ERpG3e\",openInNewTab:false,relValues:[],scopeId:\"rKO_1eR5s\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1wicq5s\",\"data-styles-preset\":\"ro7OPezbn\",children:\"Creatives\"})})})}),className:\"framer-1qkxbly\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"tc7ERpG3e\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"calc(var(--framer-root-font-size, 1rem) * 1.13)\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"oekcRR2kp\"},motionChild:true,nodeId:\"st1tkZQgP\",openInNewTab:false,relValues:[],scopeId:\"rKO_1eR5s\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1wicq5s\",\"data-styles-preset\":\"ro7OPezbn\",children:\"$TAGAI\"})})})}),className:\"framer-3jo75x\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"st1tkZQgP\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({TdiJBHyLP:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"calc(var(--framer-root-font-size, 1rem) * 1.13)\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"oekcRR2kp\"},motionChild:true,nodeId:\"st1tkZQgP\",openInNewTab:false,relValues:[],scopeId:\"rKO_1eR5s\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1wicq5s\",\"data-styles-preset\":\"ro7OPezbn\",children:\"Traders\"})})})})}},baseVariant,gestureVariant)})]}),/*#__PURE__*/_jsx(Transition,{value:transition3,children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-8l9snt\",\"data-border\":true,\"data-framer-name\":\"LOG IN\",layoutDependency:layoutDependency,layoutId:\"INDT0RxCK\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"rgb(255, 255, 255)\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backdropFilter:\"blur(5px)\",backgroundColor:\"rgba(255, 255, 255, 0)\",borderBottomLeftRadius:40,borderBottomRightRadius:40,borderTopLeftRadius:40,borderTopRightRadius:40,WebkitBackdropFilter:\"blur(5px)\"},whileHover:animation2,children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-10ybwwb-container\",isAuthoredByUser:true,layoutDependency:layoutDependency,layoutId:\"Y59Gie9VW-container\",nodeId:\"Y59Gie9VW\",rendersWithMotion:true,scopeId:\"rKO_1eR5s\",children:/*#__PURE__*/_jsx(TagSpaceProfile,{api:\"Development\",color:\"rgb(255, 255, 255)\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"calc(var(--framer-root-font-size, 1rem) * 0.88)\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"0em\",lineHeight:\"1em\"},height:\"100%\",id:\"Y59Gie9VW\",label:\"Log in\",layoutId:\"Y59Gie9VW\",size:24,uppercase:true,width:\"100%\"})})})})})]})})})})});});const css=[\".framer-ZcY41.framer-1ea2mz, .framer-ZcY41 .framer-1ea2mz { display: block; }\",\".framer-ZcY41.framer-4fcii6 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 390px; }\",\".framer-ZcY41 .framer-11jz9u9 { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 48px; height: min-content; justify-content: center; overflow: hidden; padding: 40px 24px 40px 24px; position: relative; width: 1px; }\",\".framer-ZcY41 .framer-1y5464b { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 18px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-ZcY41 .framer-17bgpgq, .framer-ZcY41 .framer-qykqzp, .framer-ZcY41 .framer-1qkxbly, .framer-ZcY41 .framer-3jo75x { -webkit-user-select: none; flex: none; height: auto; position: relative; user-select: none; white-space: pre; width: auto; }\",\".framer-ZcY41 .framer-8l9snt { align-content: center; align-items: center; cursor: pointer; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 48px; justify-content: center; overflow: visible; padding: 8px 24px 8px 24px; position: relative; width: 100%; will-change: var(--framer-will-change-effect-override, transform); }\",\".framer-ZcY41 .framer-10ybwwb-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-ZcY41.framer-v-dma2tw.framer-4fcii6 { overflow: visible; }\",\".framer-ZcY41.framer-v-dma2tw .framer-1y5464b { justify-content: flex-start; order: 0; }\",\".framer-ZcY41.framer-v-dma2tw .framer-8l9snt { order: 1; }\",...sharedStyle.css,'.framer-ZcY41[data-border=\"true\"]::after, .framer-ZcY41 [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; corner-shape: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 302.5\n * @framerIntrinsicWidth 390\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"TdiJBHyLP\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerrKO_1eR5s=withCSS(Component,css,\"framer-ZcY41\");export default FramerrKO_1eR5s;FramerrKO_1eR5s.displayName=\"Navbar Exapnded\";FramerrKO_1eR5s.defaultProps={height:302.5,width:390};addPropertyControls(FramerrKO_1eR5s,{variant:{options:[\"CyJykYwr0\",\"TdiJBHyLP\"],optionTitles:[\"Desktop - Closed (Light)\",\"Mobile - Open (Dark)\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerrKO_1eR5s,[{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/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{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/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{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/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{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/UjlFhCnUjxhNfep4oYBPqnEssyo.woff2\",weight:\"500\"},{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/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"},{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\"}]},...TagSpaceProfileFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});FramerrKO_1eR5s.loader={load:(props,context)=>{return runTasksWithYield([()=>forwardLoader(NavbarTrigger,{},context)],context);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerrKO_1eR5s\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"302.5\",\"framerIntrinsicWidth\":\"390\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerAutoSizeImages\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"TdiJBHyLP\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerColorSyntax\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./rKO_1eR5s.map","// Generated by Framer (2f17f47)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,getFontsFromSharedStyle,Link,RichText,runTasksWithYield,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import NavbarTrigger from\"https://framerusercontent.com/modules/aqMCxxOqlfziMcHUhKZ6/7dtk2ihDql4SF4vt1Cyu/eKxhKRl9m.js\";import TagSpaceProfile from\"https://framerusercontent.com/modules/b6R2BcVLJR2Rqd6kFbSq/8xNgt3mVpsYuBG7AMOwB/TagSpaceProfile.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/d4tDnucRkE5T6ZgqzqjT/0l2vrC1C8Rjs7y0lJDF4/ro7OPezbn.js\";import TagSpaceLogoStrokeLightHorizontal from\"https://framerusercontent.com/modules/dgobJXk2aczQPOxK1NME/en6Q6Sz46Vin3sKpT5B8/cKATtJYOd.js\";import NavbarExapnded from\"https://framerusercontent.com/modules/0amASGzXRQn8n8wAGrZv/xeCpz0YkFlhorgkSo8LT/rKO_1eR5s.js\";import Button from\"https://framerusercontent.com/modules/kRNxdglyu9O7mDOYn6hP/dzNudMzSIrJ2oQsQlHC9/ZWCczRqid.js\";const TagSpaceLogoStrokeLightHorizontalFonts=getFonts(TagSpaceLogoStrokeLightHorizontal);const ButtonFonts=getFonts(Button);const TagSpaceProfileFonts=getFonts(TagSpaceProfile);const NavbarExapndedFonts=getFonts(NavbarExapnded);const cycleOrder=[\"znkYNbpYD\",\"To2_dSxxa\",\"q6s41w6YH\"];const serializationHash=\"framer-kXnfR\";const variantClassNames={q6s41w6YH:\"framer-v-1hhruql\",To2_dSxxa:\"framer-v-1e56zyk\",znkYNbpYD:\"framer-v-1khtbhf\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:40,delay:0,mass:1,stiffness:400,type:\"spring\"};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={\"Desktop - Closed (Dark)\":\"znkYNbpYD\",\"Mobile - Closed (Dark)\":\"To2_dSxxa\",\"Mobile - Open (Dark)\":\"q6s41w6YH\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"znkYNbpYD\"};};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:\"znkYNbpYD\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"To2_dSxxa\",\"q6s41w6YH\"].includes(baseVariant))return true;return false;};const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1mjy4fv=activeVariantCallback(async(...args)=>{setVariant(\"q6s41w6YH\");});const onTap1sjghg3=activeVariantCallback(async(...args)=>{setVariant(\"To2_dSxxa\");});const isDisplayed1=()=>{if([\"To2_dSxxa\",\"q6s41w6YH\"].includes(baseVariant))return false;return true;};const isDisplayed2=()=>{if(baseVariant===\"q6s41w6YH\")return true;return false;};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.nav,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1khtbhf\",className,classNames),\"data-framer-name\":\"Desktop - Closed (Dark)\",\"data-hide-scrollbars\":true,layoutDependency:layoutDependency,layoutId:\"znkYNbpYD\",ref:refBinding,style:{...style},...addPropertyOverrides({q6s41w6YH:{\"data-framer-name\":\"Mobile - Open (Dark)\"},To2_dSxxa:{\"data-framer-name\":\"Mobile - Closed (Dark)\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1w2skv\",layoutDependency:layoutDependency,layoutId:\"OeqzW9FG2\",children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-8d8edo\",\"data-framer-name\":\"Container\",layoutDependency:layoutDependency,layoutId:\"yH8KepUIu\",children:[/*#__PURE__*/_jsx(Link,{href:{webPageId:\"XTj2n4Xxr\"},motionChild:true,nodeId:\"MIEWTL0pD\",openInNewTab:false,scopeId:\"E9INuSD06\",children:/*#__PURE__*/_jsxs(motion.a,{className:\"framer-6dnn68 framer-t2p0vv\",\"data-framer-name\":\"Logo\",layoutDependency:layoutDependency,layoutId:\"MIEWTL0pD\",children:[/*#__PURE__*/_jsx(TagSpaceLogoStrokeLightHorizontal,{animated:true,className:\"framer-ruyyeo\",\"data-framer-name\":\"TagSpace logo (Stroke) light Horizontal\",layoutDependency:layoutDependency,layoutId:\"ID1ajEqa1\"}),isDisplayed()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1vislot\",layoutDependency:layoutDependency,layoutId:\"W8eca4Wrb\",children:[isDisplayed()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-3v4xqu\",\"data-framer-name\":\"Icon\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"HaYAj6RIK\",onTap:onTap1mjy4fv,...addPropertyOverrides({q6s41w6YH:{onTap:onTap1sjghg3}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1p3ptgh\",\"data-framer-name\":\"Bottom\",layoutDependency:layoutDependency,layoutId:\"NpKynK1B3\",style:{backgroundColor:\"rgb(153, 153, 153)\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10},variants:{q6s41w6YH:{backgroundColor:\"rgb(255, 255, 255)\"},To2_dSxxa:{backgroundColor:\"rgb(255, 255, 255)\"}}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1pqao8j\",\"data-framer-name\":\"Top\",layoutDependency:layoutDependency,layoutId:\"VNOEeQV_D\",style:{backgroundColor:\"rgb(153, 153, 153)\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10},variants:{q6s41w6YH:{backgroundColor:\"rgb(255, 255, 255)\"},To2_dSxxa:{backgroundColor:\"rgb(255, 255, 255)\"}}})]}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:100,...addPropertyOverrides({q6s41w6YH:{height:40,y:(componentViewport?.y||0)+15},To2_dSxxa:{height:40,y:(componentViewport?.y||0)+15}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1z05d6t-container\",layoutDependency:layoutDependency,layoutId:\"ErlrXPlUh-container\",nodeId:\"ErlrXPlUh\",rendersWithMotion:true,scopeId:\"E9INuSD06\",children:/*#__PURE__*/_jsx(Button,{bifc2Jwrt:16,CRCIbBGlt:\"8px 24px 8px 24px\",dSIMK63Sc:\"rgb(0, 117, 108)\",fr_PhLrAH:\"Get The App\",height:\"100%\",id:\"ErlrXPlUh\",layoutId:\"ErlrXPlUh\",oOfRoyyxU:\"var(--token-640c9709-898f-4dd0-ba8d-e0c846a0e5e7, rgb(0, 204, 188))\",style:{height:\"100%\"},variant:matchVariant(\"eyG8JwAtc\"),width:\"100%\",...addPropertyOverrides({q6s41w6YH:{bifc2Jwrt:14},To2_dSxxa:{bifc2Jwrt:14,CRCIbBGlt:\"8px 16px 8px 16px\",fr_PhLrAH:\"Open tagSpace\"}},baseVariant,gestureVariant)})})})]})]})}),isDisplayed1()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-btbvde\",\"data-framer-name\":\"Links\",layoutDependency:layoutDependency,layoutId:\"qmE4_GEf2\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"calc(var(--framer-root-font-size, 1rem) * 0.88)\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"sBX0L9EI4\"},motionChild:true,nodeId:\"RPwdfVhM5\",openInNewTab:false,relValues:[],scopeId:\"E9INuSD06\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1wicq5s\",\"data-styles-preset\":\"ro7OPezbn\",children:\"Explorers\"})})})}),className:\"framer-1sjg7wp\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"RPwdfVhM5\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"calc(var(--framer-root-font-size, 1rem) * 0.88)\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"sBX0L9EI4\"},motionChild:true,nodeId:\"RvzzH4qCF\",openInNewTab:false,relValues:[],scopeId:\"E9INuSD06\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1wicq5s\",\"data-styles-preset\":\"ro7OPezbn\",children:\"Brands\"})})})}),className:\"framer-dtyco2\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"RvzzH4qCF\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"calc(var(--framer-root-font-size, 1rem) * 0.88)\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"sBX0L9EI4\"},motionChild:true,nodeId:\"Imhsz7Ptk\",openInNewTab:false,relValues:[],scopeId:\"E9INuSD06\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1wicq5s\",\"data-styles-preset\":\"ro7OPezbn\",children:\"Creatives\"})})})}),className:\"framer-qc7h4e\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"Imhsz7Ptk\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"calc(var(--framer-root-font-size, 1rem) * 0.88)\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"oekcRR2kp\"},motionChild:true,nodeId:\"CAF4nG6aN\",openInNewTab:false,relValues:[],scopeId:\"E9INuSD06\",smoothScroll:true,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1wicq5s\",\"data-styles-preset\":\"ro7OPezbn\",children:\"$TAGAI\"})})})}),className:\"framer-5cb6r3\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"CAF4nG6aN\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\"},verticalAlignment:\"top\",withExternalLayout:true})]}),isDisplayed1()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-jxi9f3\",\"data-framer-name\":\"Buttons\",layoutDependency:layoutDependency,layoutId:\"RcnPnnYut\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-ymzt1q-container\",isAuthoredByUser:true,layoutDependency:layoutDependency,layoutId:\"bRvA23u2Q-container\",nodeId:\"bRvA23u2Q\",rendersWithMotion:true,scopeId:\"E9INuSD06\",children:/*#__PURE__*/_jsx(TagSpaceProfile,{api:\"Development\",color:\"rgb(255, 255, 255)\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"calc(var(--framer-root-font-size, 1rem) * 0.88)\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"0em\",lineHeight:\"1em\"},height:\"100%\",id:\"bRvA23u2Q\",label:\"Log in\",layoutId:\"bRvA23u2Q\",size:24,uppercase:true,width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:40,y:(componentViewport?.y||0)+15,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1a3h6pp-container\",layoutDependency:layoutDependency,layoutId:\"Tn8D77UJm-container\",nodeId:\"Tn8D77UJm\",rendersWithMotion:true,scopeId:\"E9INuSD06\",children:/*#__PURE__*/_jsx(Button,{bifc2Jwrt:14,CRCIbBGlt:\"0px 16px 0px 16px\",dSIMK63Sc:\"rgb(2, 150, 138)\",fr_PhLrAH:\"Open tagSpace\",height:\"100%\",id:\"Tn8D77UJm\",layoutId:\"Tn8D77UJm\",oOfRoyyxU:\"var(--token-640c9709-898f-4dd0-ba8d-e0c846a0e5e7, rgb(0, 204, 188))\",style:{height:\"100%\"},variant:matchVariant(\"eyG8JwAtc\"),width:\"100%\"})})})]})]})}),isDisplayed2()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{...addPropertyOverrides({q6s41w6YH:{height:302,width:componentViewport?.width||\"100vw\",y:(componentViewport?.y||0)+70}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-15rbw4h-container\",\"data-framer-name\":\"Navbar Exapnded\",layoutDependency:layoutDependency,layoutId:\"NuQK0jnol-container\",name:\"Navbar Exapnded\",nodeId:\"NuQK0jnol\",rendersWithMotion:true,scopeId:\"E9INuSD06\",style:{opacity:0},variants:{q6s41w6YH:{opacity:1}},children:/*#__PURE__*/_jsx(NavbarExapnded,{height:\"100%\",id:\"NuQK0jnol\",layoutId:\"NuQK0jnol\",name:\"Navbar Exapnded\",style:{width:\"100%\"},variant:matchVariant(\"CyJykYwr0\"),width:\"100%\"})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-hxnrsn\",layoutDependency:layoutDependency,layoutId:\"WGpUhQ_Q7\",style:{backdropFilter:\"blur(5px)\",backgroundColor:\"rgba(0, 0, 0, 0.3)\",mask:\"linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 37%) add\",WebkitBackdropFilter:\"blur(5px)\",WebkitMask:\"linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 37%) add\"},variants:{q6s41w6YH:{backdropFilter:\"blur(10px)\",backgroundColor:\"rgba(0, 0, 0, 0.6)\",mask:\"none\",WebkitBackdropFilter:\"blur(10px)\",WebkitMask:\"none\"}}})]})})})});});const css=[\".framer-kXnfR.framer-t2p0vv, .framer-kXnfR .framer-t2p0vv { display: block; }\",\".framer-kXnfR.framer-1khtbhf { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1440px; }\",\".framer-kXnfR .framer-1w2skv { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 70px; justify-content: center; overflow: visible; padding: 0px 24px 0px 24px; position: relative; width: 100%; z-index: 10; }\",\".framer-kXnfR .framer-8d8edo { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; max-width: 1540px; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-kXnfR .framer-6dnn68 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-kXnfR .framer-ruyyeo { flex: none; height: auto; position: relative; width: 144px; }\",\".framer-kXnfR .framer-1vislot { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-kXnfR .framer-3v4xqu { cursor: pointer; flex: none; height: 40px; overflow: hidden; position: relative; width: 40px; }\",\".framer-kXnfR .framer-1p3ptgh { flex: none; height: 2px; left: calc(50.00000000000002% - 20px / 2); overflow: hidden; position: absolute; top: calc(62.50000000000002% - 2px / 2); width: 20px; will-change: var(--framer-will-change-override, transform); }\",\".framer-kXnfR .framer-1pqao8j { flex: none; height: 2px; left: calc(50.00000000000002% - 20px / 2); overflow: hidden; position: absolute; top: calc(37.50000000000002% - 2px / 2); width: 20px; will-change: var(--framer-will-change-override, transform); }\",\".framer-kXnfR .framer-1z05d6t-container { flex: none; height: 100px; position: relative; width: auto; }\",\".framer-kXnfR .framer-btbvde { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: 40px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-kXnfR .framer-1sjg7wp, .framer-kXnfR .framer-dtyco2, .framer-kXnfR .framer-qc7h4e, .framer-kXnfR .framer-5cb6r3 { -webkit-user-select: none; flex: none; height: auto; position: relative; user-select: none; white-space: pre; width: auto; }\",\".framer-kXnfR .framer-jxi9f3 { align-content: center; align-items: center; align-self: stretch; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: auto; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-kXnfR .framer-ymzt1q-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-kXnfR .framer-1a3h6pp-container { flex: none; height: 100%; position: relative; width: auto; }\",\".framer-kXnfR .framer-15rbw4h-container { flex: none; height: auto; position: relative; width: 100%; z-index: 9; }\",\".framer-kXnfR .framer-hxnrsn { bottom: -16px; flex: none; left: calc(50.00000000000002% - 100% / 2); overflow: var(--overflow-clip-fallback, clip); position: absolute; top: 0px; width: 100%; z-index: 0; }\",\".framer-kXnfR.framer-v-1e56zyk.framer-1khtbhf { width: 390px; }\",\".framer-kXnfR.framer-v-1e56zyk .framer-1w2skv, .framer-kXnfR.framer-v-1hhruql .framer-1w2skv { order: 0; padding: 0px 16px 0px 16px; }\",\".framer-kXnfR.framer-v-1e56zyk .framer-8d8edo, .framer-kXnfR.framer-v-1hhruql .framer-8d8edo { height: 40px; }\",\".framer-kXnfR.framer-v-1e56zyk .framer-6dnn68, .framer-kXnfR.framer-v-1hhruql .framer-6dnn68 { flex: 1 0 0px; gap: unset; height: 100%; justify-content: space-between; width: 1px; }\",\".framer-kXnfR.framer-v-1e56zyk .framer-1vislot, .framer-kXnfR.framer-v-1hhruql .framer-1vislot { height: 100%; }\",\".framer-kXnfR.framer-v-1e56zyk .framer-3v4xqu, .framer-kXnfR.framer-v-1hhruql .framer-3v4xqu, .framer-kXnfR.framer-v-1hhruql .framer-15rbw4h-container { order: 1; }\",\".framer-kXnfR.framer-v-1e56zyk .framer-1z05d6t-container, .framer-kXnfR.framer-v-1hhruql .framer-1z05d6t-container { height: 100%; order: 0; }\",\".framer-kXnfR.framer-v-1e56zyk .framer-hxnrsn { order: 2; }\",\".framer-kXnfR.framer-v-1hhruql.framer-1khtbhf { max-height: calc(var(--framer-viewport-height, 100vh) * 1); overflow: auto; overscroll-behavior: contain; width: 390px; }\",\".framer-kXnfR.framer-v-1hhruql .framer-hxnrsn { bottom: unset; height: 100%; max-height: calc(var(--framer-viewport-height, 100vh) * 1); order: 2; }\",...sharedStyle.css,'.framer-kXnfR[data-hide-scrollbars=\"true\"]::-webkit-scrollbar, .framer-kXnfR [data-hide-scrollbars=\"true\"]::-webkit-scrollbar { width: 0px; height: 0px; }','.framer-kXnfR[data-hide-scrollbars=\"true\"]::-webkit-scrollbar-thumb, .framer-kXnfR [data-hide-scrollbars=\"true\"]::-webkit-scrollbar-thumb { background: transparent; }','.framer-kXnfR[data-hide-scrollbars=\"true\"], .framer-kXnfR [data-hide-scrollbars=\"true\"] { scrollbar-width: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 70\n * @framerIntrinsicWidth 1440\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"To2_dSxxa\":{\"layout\":[\"fixed\",\"auto\"]},\"q6s41w6YH\":{\"layout\":[\"fixed\",\"auto\"],\"constraints\":[null,null,null,\"100vh\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerE9INuSD06=withCSS(Component,css,\"framer-kXnfR\");export default FramerE9INuSD06;FramerE9INuSD06.displayName=\"Navigation 3\";FramerE9INuSD06.defaultProps={height:70,width:1440};addPropertyControls(FramerE9INuSD06,{variant:{options:[\"znkYNbpYD\",\"To2_dSxxa\",\"q6s41w6YH\"],optionTitles:[\"Desktop - Closed (Dark)\",\"Mobile - Closed (Dark)\",\"Mobile - Open (Dark)\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerE9INuSD06,[{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/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{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/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{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/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{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/UjlFhCnUjxhNfep4oYBPqnEssyo.woff2\",weight:\"500\"},{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/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"},{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\"}]},...TagSpaceLogoStrokeLightHorizontalFonts,...ButtonFonts,...TagSpaceProfileFonts,...NavbarExapndedFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});FramerE9INuSD06.loader={load:(props,context)=>{return runTasksWithYield([()=>forwardLoader(Button,{},context),()=>forwardLoader(NavbarTrigger,{},context),()=>forwardLoader(NavbarExapnded,{},context)],context);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerE9INuSD06\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"1440\",\"framerIntrinsicHeight\":\"70\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"To2_dSxxa\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"q6s41w6YH\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"],\\\"constraints\\\":[null,null,null,\\\"100vh\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./E9INuSD06.map","// Generated by Framer (2f17f47)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-iYDMh .framer-styles-preset-t4e2nk:not(.rich-text-wrapper), .framer-iYDMh .framer-styles-preset-t4e2nk.rich-text-wrapper a { --framer-link-hover-text-color: #ffffff; --framer-link-text-background-padding: 0px; --framer-link-text-color: rgba(255, 255, 255, 0.8); transition-delay: 0s; transition-duration: 0.4s; transition-property: color; transition-timing-function: cubic-bezier(0.44, 0, 0.56, 1); }\"];export const className=\"framer-iYDMh\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (3280217)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"Inter\",\"Inter-Bold\",\"Inter-BoldItalic\",\"Inter-Italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"},{cssFamilyName:\"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/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{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/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{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/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{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/syRNPWzAMIrcJ3wIlPIP43KjQs.woff2\",weight:\"700\"},{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/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/H89BbHkbHDzlxZzxi8uPzTsp90.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/u6gJwDuwB143kpNK1T1MDKDWkMc.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/43sJ6MfOPh1LCJt46OvyDuSbA6o.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/wccHG0r4gBDAIRhfHiOlq6oEkqw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/WZ367JPwf9bRW6LdTHN8rXgSjw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/ia3uin3hQWqDrVloC1zEtYHWw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/2A4Xx7CngadFGlVV4xrO06OBHY.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/CfMzU8w2e7tHgF4T4rATMPuWosA.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/867QObYax8ANsfX4TGEVU9YiCM.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Oyn2ZbENFdnW7mt2Lzjk1h9Zb9k.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/cdAe8hgZ1cMyLu9g005pAW3xMo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/DOfvtmE1UplCq161m6Hj8CSQYg.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/pKRFNWFoZl77qYCAIp84lN1h944.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/tKtBcDnBMevsEEJKdNGhhkLzYo.woff2\",weight:\"400\"}]}];export const css=['.framer-zwmyX .framer-styles-preset-15gdw6t:not(.rich-text-wrapper), .framer-zwmyX .framer-styles-preset-15gdw6t.rich-text-wrapper p { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #ffffff; --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-zwmyX .framer-styles-preset-15gdw6t:not(.rich-text-wrapper), .framer-zwmyX .framer-styles-preset-15gdw6t.rich-text-wrapper p { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 12px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #ffffff; --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-zwmyX .framer-styles-preset-15gdw6t:not(.rich-text-wrapper), .framer-zwmyX .framer-styles-preset-15gdw6t.rich-text-wrapper p { --framer-font-family: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 9px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #ffffff; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-zwmyX\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (2f17f47)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFonts,getFontsFromSharedStyle,Link,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/9hqpdwzFP8drjJzaFqpA/UkX8AJpWtPZOm62oDcdq/gGtoTtSLX.js\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/d4tDnucRkE5T6ZgqzqjT/0l2vrC1C8Rjs7y0lJDF4/ro7OPezbn.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/pxzhk7vq3t3AmWLWZfKu/7d54lPOAwaG07yuz77K1/Yb57bkoSr.js\";import TagSpaceLogoStrokeLightHorizontal from\"https://framerusercontent.com/modules/dgobJXk2aczQPOxK1NME/en6Q6Sz46Vin3sKpT5B8/cKATtJYOd.js\";const TagSpaceLogoStrokeLightHorizontalFonts=getFonts(TagSpaceLogoStrokeLightHorizontal);const cycleOrder=[\"fX4QSQhd8\",\"dLh1GIxEW\",\"UWzL9fqMp\"];const serializationHash=\"framer-6OQx3\";const variantClassNames={dLh1GIxEW:\"framer-v-12eujtl\",fX4QSQhd8:\"framer-v-ue5ecd\",UWzL9fqMp:\"framer-v-en6pm3\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={Desktop:\"fX4QSQhd8\",Phone:\"UWzL9fqMp\",Tablet:\"dLh1GIxEW\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"fX4QSQhd8\"};};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:\"fX4QSQhd8\",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__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-ue5ecd\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"fX4QSQhd8\",ref:refBinding,style:{backgroundColor:\"rgb(0, 0, 0)\",...style},...addPropertyOverrides({dLh1GIxEW:{\"data-framer-name\":\"Tablet\"},UWzL9fqMp:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1kf43et\",\"data-framer-name\":\"Container\",layoutDependency:layoutDependency,layoutId:\"JMP484iA1\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-7h23zr\",\"data-framer-name\":\"Frame 8024\",layoutDependency:layoutDependency,layoutId:\"NLgO_8zRE\",children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-ju1l31\",\"data-framer-name\":\"Frame 8025\",layoutDependency:layoutDependency,layoutId:\"bDsFsyPnH\",children:[/*#__PURE__*/_jsx(TagSpaceLogoStrokeLightHorizontal,{animated:true,className:\"framer-kwrb3s\",layoutDependency:layoutDependency,layoutId:\"VcyMRr4zd\"}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-t1fv25\",\"data-framer-name\":\"Frame 7679\",layoutDependency:layoutDependency,layoutId:\"a3thrsW2V\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-15gdw6t\",\"data-styles-preset\":\"Yb57bkoSr\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"sBX0L9EI4\"},motionChild:true,nodeId:\"h_e5Wmn4N\",openInNewTab:true,relValues:[],scopeId:\"oQJHlUdob\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-t4e2nk\",\"data-styles-preset\":\"gGtoTtSLX\",children:\"Explorers\"})})})}),className:\"framer-cw1nvw\",\"data-framer-name\":\"Overview\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"h_e5Wmn4N\",verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-15gdw6t\",\"data-styles-preset\":\"Yb57bkoSr\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"sBX0L9EI4\"},motionChild:true,nodeId:\"b5L6eeo23\",openInNewTab:true,relValues:[],scopeId:\"oQJHlUdob\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-t4e2nk\",\"data-styles-preset\":\"gGtoTtSLX\",children:\"Brands\"})})})}),className:\"framer-ap3rzi\",\"data-framer-name\":\"tagStudio\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"b5L6eeo23\",verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-15gdw6t\",\"data-styles-preset\":\"Yb57bkoSr\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"sBX0L9EI4\"},motionChild:true,nodeId:\"M7BM2dDp9\",openInNewTab:true,relValues:[],scopeId:\"oQJHlUdob\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-t4e2nk\",\"data-styles-preset\":\"gGtoTtSLX\",children:\"Creatives\"})})})}),className:\"framer-1kminq7\",\"data-framer-name\":\"tagStudio\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"M7BM2dDp9\",verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-15gdw6t\",\"data-styles-preset\":\"Yb57bkoSr\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"oekcRR2kp\"},motionChild:true,nodeId:\"SnOAGYyye\",openInNewTab:false,relValues:[],scopeId:\"oQJHlUdob\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-t4e2nk\",\"data-styles-preset\":\"gGtoTtSLX\",children:\"$TAGAI\"})})})}),className:\"framer-1cmv8ce\",\"data-framer-name\":\"Product Support\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"SnOAGYyye\",verticalAlignment:\"top\",withExternalLayout:true})]})]})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1h3cqwd\",layoutDependency:layoutDependency,layoutId:\"apMIyX7pa\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-19gl27j\",\"data-framer-name\":\"Rectangle 1322\",layoutDependency:layoutDependency,layoutId:\"lJ5tyEU1A\",style:{backgroundColor:\"rgba(217, 217, 217, 0.1)\"}}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1qetruw\",\"data-framer-name\":\"Frame 8026\",layoutDependency:layoutDependency,layoutId:\"iMugUzysc\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-peu9gb\",layoutDependency:layoutDependency,layoutId:\"HirGnuqFX\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-15gdw6t\",\"data-styles-preset\":\"Yb57bkoSr\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, rgba(255, 255, 255, 0.5))\"},children:\"\\xa9 2026 tagSpace Pty Ltd. All rights reserved.\"})}),className:\"framer-3slokp\",\"data-framer-name\":\"\\xa9tagSpace 2021\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"tCOjgedbi\",style:{\"--extracted-r6o4lv\":\"rgba(255, 255, 255, 0.5)\",opacity:.8},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-15gdw6t\",\"data-styles-preset\":\"Yb57bkoSr\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, rgba(255, 255, 255, 0.5))\"},children:\"2/290 Boundary Street, Spring Hill, QLD 4000, Australia\"})}),className:\"framer-1x03eo4\",\"data-framer-name\":\"\\xa9tagSpace 2021\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"FHM3cmnFS\",style:{\"--extracted-r6o4lv\":\"rgba(255, 255, 255, 0.5)\",opacity:.8},verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1osfli7\",layoutDependency:layoutDependency,layoutId:\"TKv_GR8D3\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-15gdw6t\",\"data-styles-preset\":\"Yb57bkoSr\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, rgba(255, 255, 255, 0.5))\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"gYh2isOpf\"},motionChild:true,nodeId:\"GR8tqZHKK\",openInNewTab:true,relValues:[],scopeId:\"oQJHlUdob\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1wicq5s\",\"data-styles-preset\":\"ro7OPezbn\",children:\"Privacy Policy\"})})})}),className:\"framer-1hw1rtm\",\"data-framer-name\":\"tagSpace Pty Ltd, Level 54, 111 Eagle St, Brisbane, QLD 4000, Australia\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"GR8tqZHKK\",style:{\"--extracted-r6o4lv\":\"rgba(255, 255, 255, 0.5)\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-15gdw6t\",\"data-styles-preset\":\"Yb57bkoSr\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, rgba(255, 255, 255, 0.5))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://learn.tagstorm.com/terms-of-use-english\",motionChild:true,nodeId:\"PZA20sIQc\",openInNewTab:true,relValues:[],scopeId:\"oQJHlUdob\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1wicq5s\",\"data-styles-preset\":\"ro7OPezbn\",children:\"Terms of Service\"})})})}),className:\"framer-e8ai1g\",\"data-framer-name\":\"tagSpace Pty Ltd, Level 54, 111 Eagle St, Brisbane, QLD 4000, Australia\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"PZA20sIQc\",style:{\"--extracted-r6o4lv\":\"rgba(255, 255, 255, 0.5)\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-15gdw6t\",\"data-styles-preset\":\"Yb57bkoSr\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, rgba(255, 255, 255, 0.5))\"},children:\"Cookies Settings\"})}),className:\"framer-1gqlm5y\",\"data-framer-name\":\"tagSpace Pty Ltd, Level 54, 111 Eagle St, Brisbane, QLD 4000, Australia\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"gNEjAImL1\",style:{\"--extracted-r6o4lv\":\"rgba(255, 255, 255, 0.5)\"},verticalAlignment:\"top\",withExternalLayout:true})]})]})]})]})})})})});});const css=[\".framer-6OQx3.framer-12y8110, .framer-6OQx3 .framer-12y8110 { display: block; }\",\".framer-6OQx3.framer-ue5ecd { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 519px; height: min-content; justify-content: center; overflow: hidden; padding: 60px; position: relative; width: 1440px; }\",\".framer-6OQx3 .framer-1kf43et { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-6OQx3 .framer-7h23zr { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-6OQx3 .framer-ju1l31 { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 30px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-6OQx3 .framer-kwrb3s { aspect-ratio: 5.538461538461538 / 1; flex: none; height: auto; position: relative; width: 144px; }\",\".framer-6OQx3 .framer-t1fv25 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-6OQx3 .framer-cw1nvw, .framer-6OQx3 .framer-ap3rzi, .framer-6OQx3 .framer-1kminq7, .framer-6OQx3 .framer-1cmv8ce, .framer-6OQx3 .framer-3slokp, .framer-6OQx3 .framer-1x03eo4, .framer-6OQx3 .framer-1hw1rtm, .framer-6OQx3 .framer-e8ai1g, .framer-6OQx3 .framer-1gqlm5y { flex: none; height: auto; overflow: visible; position: relative; white-space: pre; width: auto; }\",\".framer-6OQx3 .framer-1h3cqwd { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-6OQx3 .framer-19gl27j { flex: none; height: 2px; overflow: hidden; position: relative; width: 100%; }\",\".framer-6OQx3 .framer-1qetruw { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-6OQx3 .framer-peu9gb { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 2px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 643px; }\",\".framer-6OQx3 .framer-1osfli7 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: 22px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: min-content; }\",\".framer-6OQx3.framer-v-12eujtl.framer-ue5ecd { padding: 24px; width: 810px; }\",\".framer-6OQx3.framer-v-12eujtl .framer-7h23zr { gap: 114px; justify-content: center; }\",\".framer-6OQx3.framer-v-12eujtl .framer-ju1l31 { gap: 24px; }\",\".framer-6OQx3.framer-v-12eujtl .framer-peu9gb, .framer-6OQx3.framer-v-12eujtl .framer-1osfli7 { flex: 1 0 0px; width: 1px; }\",\".framer-6OQx3.framer-v-en6pm3.framer-ue5ecd { padding: 24px; width: 390px; }\",\".framer-6OQx3.framer-v-en6pm3 .framer-7h23zr { flex-direction: column; gap: 60px; justify-content: flex-start; }\",\".framer-6OQx3.framer-v-en6pm3 .framer-ju1l31 { flex: none; gap: 16px; width: 100%; }\",\".framer-6OQx3.framer-v-en6pm3 .framer-t1fv25 { flex-wrap: wrap; gap: 16px 16px; }\",\".framer-6OQx3.framer-v-en6pm3 .framer-1qetruw { flex-direction: column; gap: 16px; justify-content: flex-start; }\",\".framer-6OQx3.framer-v-en6pm3 .framer-peu9gb { width: 100%; }\",\".framer-6OQx3.framer-v-en6pm3 .framer-3slokp, .framer-6OQx3.framer-v-en6pm3 .framer-1x03eo4 { overflow: hidden; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-6OQx3.framer-v-en6pm3 .framer-1osfli7 { align-content: flex-start; align-items: flex-start; gap: 8px; height: min-content; justify-content: flex-start; width: 100%; }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 262.5\n * @framerIntrinsicWidth 1440\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"dLh1GIxEW\":{\"layout\":[\"fixed\",\"auto\"]},\"UWzL9fqMp\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FrameroQJHlUdob=withCSS(Component,css,\"framer-6OQx3\");export default FrameroQJHlUdob;FrameroQJHlUdob.displayName=\"Footer\";FrameroQJHlUdob.defaultProps={height:262.5,width:1440};addPropertyControls(FrameroQJHlUdob,{variant:{options:[\"fX4QSQhd8\",\"dLh1GIxEW\",\"UWzL9fqMp\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FrameroQJHlUdob,[{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\"}]},...TagSpaceLogoStrokeLightHorizontalFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameroQJHlUdob\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"262.5\",\"framerIntrinsicWidth\":\"1440\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"dLh1GIxEW\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"UWzL9fqMp\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./oQJHlUdob.map","// Generated by Framer (5186692)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,forwardLoader,GeneratedComponentContext,getFonts,PropertyOverrides,RenderTarget,runTasksWithYield,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS,withVariantAppearEffect}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Navigation3 from\"#framer/local/canvasComponent/E9INuSD06/E9INuSD06.js\";import Footer from\"#framer/local/canvasComponent/oQJHlUdob/oQJHlUdob.js\";const Navigation3Fonts=getFonts(Navigation3);const Navigation3WithVariantAppearEffect=withVariantAppearEffect(Navigation3);const FooterFonts=getFonts(Footer);const breakpoints={GCQYTVga2:\"(min-width: 810px) and (max-width: 1439.98px)\",HejsBzQsi:\"(max-width: 809.98px)\",tMfFTboBi:\"(min-width: 1440px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-4HItV\";const variantClassNames={GCQYTVga2:\"framer-v-vdm4kt\",HejsBzQsi:\"framer-v-1n8z7c7\",tMfFTboBi:\"framer-v-1sx07b2\"};const transformTemplate1=(_,t)=>`translateX(-50%) ${t}`;const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const breakpointRules={};const breakpointKeys=Object.keys(breakpointRules);const rules=[\".framer-4HItV.framer-6c5bj6, .framer-4HItV .framer-6c5bj6 { display: block; }\",\".framer-4HItV.framer-1sx07b2 { align-content: center; align-items: center; background-color: #000000; 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-4HItV .framer-1a9n0qd-container { flex: none; height: auto; left: 50%; order: -1000; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 100%; z-index: 10; }\",\".framer-4HItV .framer-1nbtw9j { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-4HItV .framer-191ltpy-container { flex: none; height: auto; order: 1002; position: relative; width: 100%; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }'];const mediaQueries={GCQYTVga2:\"(min-width: 810px) and (max-width: 1439.98px)\",HejsBzQsi:\"(max-width: 809.98px)\",tMfFTboBi:\"(min-width: 1440px)\"};const humanReadableVariantMap={Desktop:\"tMfFTboBi\",Phone:\"HejsBzQsi\",Tablet:\"GCQYTVga2\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"tMfFTboBi\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,isLayoutTemplate:true,primaryVariantId:\"tMfFTboBi\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: rgb(0, 0, 0); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1sx07b2\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:71,width:\"100vw\",y:0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1a9n0qd-container\",\"data-framer-layout-hint-center-x\":true,\"data-framer-name\":\"Main Nav\",layoutScroll:true,name:\"Main Nav\",nodeId:\"Rka3gLOBv\",rendersWithMotion:true,scopeId:\"cu0E82NUV\",transformTemplate:transformTemplate1,children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{GCQYTVga2:{variant:matchVariant(\"To2_dSxxa\")},HejsBzQsi:{variant:matchVariant(\"To2_dSxxa\")}},children:/*#__PURE__*/_jsx(Navigation3WithVariantAppearEffect,{__framer__animateOnce:false,__framer__threshold:0,__framer__variantAppearEffectEnabled:true,height:\"100%\",id:\"Rka3gLOBv\",layoutId:\"Rka3gLOBv\",name:\"Main Nav\",style:{width:\"100%\"},variant:matchVariant(\"DZSyc4sgu\"),width:\"100%\"})})})}),children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-1nbtw9j\"}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:165,width:\"100vw\",y:1e3,children:/*#__PURE__*/_jsx(Container,{className:\"framer-191ltpy-container\",nodeId:\"V_4aYzzfX\",scopeId:\"cu0E82NUV\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{GCQYTVga2:{variant:matchVariant(\"dLh1GIxEW\")},HejsBzQsi:{variant:matchVariant(\"UWzL9fqMp\")}},children:/*#__PURE__*/_jsx(Footer,{height:\"100%\",id:\"V_4aYzzfX\",layoutId:\"V_4aYzzfX\",style:{width:\"100%\"},variant:matchVariant(\"fX4QSQhd8\"),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 1440\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"GCQYTVga2\":{\"layout\":[\"fixed\",\"fixed\"]},\"HejsBzQsi\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"tMfFTboBi\":[\".framer-1a9n0qd-container\",\".framer-191ltpy-container\"],\"GCQYTVga2\":[\".framer-1a9n0qd-container\",\".framer-191ltpy-container\"],\"HejsBzQsi\":[\".framer-1a9n0qd-container\",\".framer-191ltpy-container\"]}\n * @framerBreakpoints {\"tMfFTboBi\":{\"min\":1440,\"canvasClassName\":\"framer-1sx07b2-override\",\"minHeight\":1000,\"name\":\"Desktop\",\"width\":1440,\"rootFontSize\":16},\"GCQYTVga2\":{\"min\":810,\"max\":1439,\"canvasClassName\":\"framer-vdm4kt-override\",\"minHeight\":1000,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":810,\"rootFontSize\":16},\"HejsBzQsi\":{\"max\":809,\"canvasClassName\":\"framer-1n8z7c7-override\",\"minHeight\":1000,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant tMfFTboBi\n * @framerLayoutTemplate true\n */const Framercu0E82NUV=withCSS(Component,css,\"framer-4HItV\");export default Framercu0E82NUV;Framercu0E82NUV.displayName=\"Navbar\";Framercu0E82NUV.defaultProps={height:1e3,width:1440};addFonts(Framercu0E82NUV,[{explicitInter:true,fonts:[]},...Navigation3Fonts,...FooterFonts],{supportsExplicitInterCodegen:true});Framercu0E82NUV.loader={load:(props,context)=>{return runTasksWithYield([()=>forwardLoader(Navigation3,{},context),()=>forwardLoader(Footer,{},context)],context);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framercu0E82NUV\",\"slots\":[],\"annotations\":{\"framerDefaultVariant\":\"tMfFTboBi\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"GCQYTVga2\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"HejsBzQsi\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerLayoutTemplate\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"1440\",\"framerContractVersion\":\"1\",\"framerHitTargets\":\"{\\\"tMfFTboBi\\\":[\\\".framer-1a9n0qd-container\\\",\\\".framer-191ltpy-container\\\"],\\\"GCQYTVga2\\\":[\\\".framer-1a9n0qd-container\\\",\\\".framer-191ltpy-container\\\"],\\\"HejsBzQsi\\\":[\\\".framer-1a9n0qd-container\\\",\\\".framer-191ltpy-container\\\"]}\",\"framerAutoSizeImages\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"1000\",\"framerBreakpoints\":\"{\\\"tMfFTboBi\\\":{\\\"min\\\":1440,\\\"canvasClassName\\\":\\\"framer-1sx07b2-override\\\",\\\"minHeight\\\":1000,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1440,\\\"rootFontSize\\\":16},\\\"GCQYTVga2\\\":{\\\"min\\\":810,\\\"max\\\":1439,\\\"canvasClassName\\\":\\\"framer-vdm4kt-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":810,\\\"rootFontSize\\\":16},\\\"HejsBzQsi\\\":{\\\"max\\\":809,\\\"canvasClassName\\\":\\\"framer-1n8z7c7-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","\r\n\t\timport * as Framer from \"framer\";\r\nimport * as React from \"react\";\r\nimport { createPortal } from \"react-dom\";\r\nimport * as ReactDOM from \"react-dom/client\";\r\nimport Navbar from \"https://framerusercontent.com/modules/nO6bFISWsTFdWRnhRuZE/oCkj49IWnxzTmfqnFrVw/cu0E82NUV.js\";\r\n\r\n\t\tconst routes = {uFaAaXDZy: {elements: {csf7epszg: \"hero\", GB0XkVyi2: \"explore\", jylxd99Hv: \"spatialai-1\", tLypFHyc8: \"spatialai\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/qjCKB7vlPPTaLKURUWGb/7eRLlb7CL0g5FiVEcNir/uFaAaXDZy.js\")), path: \"/\"}, sBX0L9EI4: {elements: {BCH_cWZn2: \"spatial-web3\", cB_IlGiQS: \"explore\", JZ0xJoeWD: \"tag-d\", LfbxElE9j: \"app-features\", OsJK1B5gz: \"market-place\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/VrH4F39h0kscVBXrfQ2O/UXoeDv21eA5BDntUbJ7N/sBX0L9EI4.js\")), path: \"/explorers\"}, oekcRR2kp: {elements: {B4GOueHGr: \"jointheconversation-1\", bPcLrfthH: \"1\", bPYdSTihh: \"hero\", BtmkY3E0B: \"spatialai-1\", cZQb3o_TA: \"partners\", eFXNKbqAv: \"4\", hfsZEGra1: \"whydecentralisation\", hSt4CaOwU: \"spatialai\", IWDZvxwiA: \"awards\", jjiHXMyQL: \"infrastructure\", nOeFtAwf7: \"2\", oBMDAMTaV: \"jointheconversation\", onbgpdkfu: \"5-1\", PooSagqZb: \"roadmap\", qynVtRlfd: \"4-1\", TiF5w8SdW: \"gettheapp\", vkONknWHx: \"3\", vMVsLZ6B6: \"team\", X421KYVLC: \"poweredby\", Zu_23EeIE: \"5\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/LIqIVDuRectUKkz1ArlY/qU1voODTkjl4HmCtAPtQ/oekcRR2kp.js\")), path: \"/tagai\"}, iFmiNCyrM: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/UIPbI57VLdJKFgPlJ3Wy/ozKuGd7PJd5xUqchb753/iFmiNCyrM.js\")), path: \"/temp/contact\"}, gYh2isOpf: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/24cY1M0s0Tg6AyGhDZnC/yD82DBg8G1BqBWQ146Ok/gYh2isOpf.js\")), path: \"/temp/legal/privacy-policy-english\"}, dr6C3meAN: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/wR76kW1lEF2NJJ4SAE3N/zXI8SSQnCE05c3cwJkyU/dr6C3meAN.js\")), path: \"/temp/legal/terms-of-use-english\"}, HM5baDw0V: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/D1e4UxwrcH7WmVzUc3o2/JI9bjiSbQY7wRAD5W1Yy/HM5baDw0V.js\")), path: \"/temp/foundations\"}, tTJeqmv0E: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/wxJ5OU6pHpeeYf9BIJur/geuE4M8ezx53CW02rtEF/tTJeqmv0E.js\")), path: \"/temp/about\"}, ZfPdrx0EQ: {collectionId: \"JuPJkEg8_\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/KWONhVJTLxqe7keZYj5p/nWqtIJvJrMXsT3ryVzcG/ZfPdrx0EQ.js\")), path: \"/temp/legal/:d1B_71hVt\"}}\r\n\r\n\t\tconst locales = [{code: \"en-US\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n\t\tconst collectionUtils = {JuPJkEg8_: async () => (await import(\"https://framerusercontent.com/modules/5OrrSgoZTeAG1HZH66zy/6I5yVLNRAmVyuOeVuDEb/JuPJkEg8_.js\"))?.[\"utils\"], o2pMoe0c8: async () => (await import(\"https://framerusercontent.com/modules/phuSn6lQBiby3tHQaB30/1wbzyBBaTIpSByXpzOuN/o2pMoe0c8.js\"))?.[\"utils\"], Sc7V3gdl0: async () => (await import(\"https://framerusercontent.com/modules/Q1rEUf2Ge8GPBfhZyULK/tl1DG1J33h2hflAjOCna/Sc7V3gdl0.js\"))?.[\"utils\"]}\r\n\t\tconst serverDatabaseClient = undefined\r\n\t\tconst framerSiteId = \"d5e4c74889d0c03eff545a23dbb80392ba44a5fe5d14b6ac33a9f5856087d698\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"uFaAaXDZy\":\r\ncase \"augiA20Il\":\r\ncase \"sBX0L9EI4\":\r\ncase \"CIiqaC2L7\":\r\ncase \"mLdlJYtqq\":\r\ncase \"zuaNFiROd\":\r\ncase \"RWhLFEcXL\":\r\ncase \"RwaYlPqH0\":\r\ncase \"rfyOjwCOw\":\r\ncase \"JIk6NLEk9\":\r\ncase \"A2BcZ0H43\":\r\ncase \"c5LWvHPvK\":\r\ncase \"lM8mLtwqE\":\r\ncase \"ODeyULvVg\":\r\ncase \"PuB0Ezr6u\":\r\ncase \"f4sWvXD_1\":\r\ncase \"oekcRR2kp\":\r\ncase \"aRK2_h2V0\":\r\ncase \"zY6pyH34I\":\r\ncase \"P1fHNPwIV\":\r\ncase \"x9MYNhoLg\":\r\ncase \"wgpMNqUHs\":\r\ncase \"rfW0LOUaN\":\r\ncase \"gYh2isOpf\":\r\ncase \"dr6C3meAN\":\r\ncase \"aOmKqHtKk\":\r\ncase \"XXJgVgnwA\":\r\ncase \"HM5baDw0V\":\r\ncase \"tbExYBE0e\":\r\ncase \"wAgk0R3oo\":\r\ncase \"NqBy0DK9S\":\r\ncase \"Ulw6sB_yV\":\r\ncase \"YacouOEuh\":\r\ncase \"M7icMSHtJ\":\r\ncase \"tTJeqmv0E\":\r\ncase \"dP0yxkUVW\":\r\ncase \"ZfPdrx0EQ\":\r\ncase \"rXwpbZgzV\":\r\ncase \"CVsOjzdCO\":\r\nreturn React.createElement(Navbar, {...props, key: \"Navbar\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"uFaAaXDZy\":\r\ncase \"augiA20Il\":\r\ncase \"sBX0L9EI4\":\r\ncase \"CIiqaC2L7\":\r\ncase \"mLdlJYtqq\":\r\ncase \"zuaNFiROd\":\r\ncase \"RWhLFEcXL\":\r\ncase \"RwaYlPqH0\":\r\ncase \"rfyOjwCOw\":\r\ncase \"JIk6NLEk9\":\r\ncase \"A2BcZ0H43\":\r\ncase \"c5LWvHPvK\":\r\ncase \"lM8mLtwqE\":\r\ncase \"ODeyULvVg\":\r\ncase \"PuB0Ezr6u\":\r\ncase \"f4sWvXD_1\":\r\ncase \"oekcRR2kp\":\r\ncase \"aRK2_h2V0\":\r\ncase \"zY6pyH34I\":\r\ncase \"P1fHNPwIV\":\r\ncase \"x9MYNhoLg\":\r\ncase \"wgpMNqUHs\":\r\ncase \"rfW0LOUaN\":\r\ncase \"gYh2isOpf\":\r\ncase \"dr6C3meAN\":\r\ncase \"aOmKqHtKk\":\r\ncase \"XXJgVgnwA\":\r\ncase \"HM5baDw0V\":\r\ncase \"tbExYBE0e\":\r\ncase \"wAgk0R3oo\":\r\ncase \"NqBy0DK9S\":\r\ncase \"Ulw6sB_yV\":\r\ncase \"YacouOEuh\":\r\ncase \"M7icMSHtJ\":\r\ncase \"tTJeqmv0E\":\r\ncase \"dP0yxkUVW\":\r\ncase \"ZfPdrx0EQ\":\r\ncase \"rXwpbZgzV\":\r\ncase \"CVsOjzdCO\":\r\nreturn [{hash: \"1sx07b2\", mediaQuery: \"(min-width: 1440px)\"}, {hash: \"vdm4kt\", mediaQuery: \"(min-width: 810px) and (max-width: 1439.98px)\"}, {hash: \"1n8z7c7\", mediaQuery: \"(max-width: 809.98px)\"}]\r\ndefault: { return undefined }}}\r\n\r\n\t\tconst isBrowser = typeof document !== \"undefined\"\r\n\t\tconst isBot = isBrowser && /bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)\r\n\r\n\t\t\r\n\t\t\r\n\r\n\t\texport async function getPageRoot({\r\n\t\t\trouteId,\r\n\t\t\tpathVariables,\r\n\t\t\tcanonicalPathVariables,\r\n\t\t\tlocaleId,\r\n\t\t\tcollectionItemId,\r\n\t\t\tcontentLocaleId,\r\n\t\t\tshouldResolveInitialRouteContentState = false,\r\n\t\t}) {\r\n\t\t\tconst rootPreload = routes[routeId].page.preload()\r\n\r\n\t\t\t\r\n\r\n\t\t\tFramer.setLibraryFeatures({checkServerSideRouter: true, disableCustomCode: false, disableHoverOnMobile: false, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageRichTextBlockSelection: true, scrollRestoration: true, synchronousNavigationOnDesktop: false, yieldOnTap: false})\r\n\t\t\tFramer.setCurrentSiteId(framerSiteId)\r\n\r\n\t\t\tconst content = React.createElement(\r\n\t\t\t\tFramer.PageRoot,\r\n\t\t\t\t{\r\n\t\t\t\t\tisWebsite: true,\r\n\t\t\t\t\tenvironment: \"site\",\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\tcanonicalPathVariables,\r\n\t\t\t\t\troutes,\r\n\t\t\t\t\tcollectionUtils,\r\n\t\t\t\t\tserverDatabaseClient,\r\n\t\t\t\t\tframerSiteId,\r\n\t\t\t\t\tnotFoundPage: Framer.lazy(() => import(\"__framer-not-found-page\")),\r\n\t\t\t\t\tisReducedMotion: undefined,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tlocales,\r\n\t\t\t\t\tpreserveQueryParams: undefined,\r\n\t\t\t\t\tsiteCanonicalURL: \"https://tagspace.com\",\r\n\t\t\t\t\tEditorBar: \r\n\t\t\ttypeof window !== \"undefined\" ? (() => {\r\n\t\t\t\tif (isBot) {\r\n\t\t\t\t\tconsole.log(\"[Framer On-Page Editing] Unavailable because navigator is bot\")\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn Framer.lazy(async () => {\r\n\t\t\t\t\tconst dependencies = {\r\n\t\t\t\t\t\t__version: 3,\r\n\t\t\t\t\t\tframer: {\r\n\t\t\t\t\t\t\tuseCurrentRoute: Framer.useCurrentRoute,\r\n\t\t\t\t\t\t\tuseLocaleInfo: Framer.useLocaleInfo,\r\n\t\t\t\t\t\t\tuseRouter: Framer.useRouter,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\treact: {\r\n\t\t\t\t\t\t\tcreateElement: React.createElement,\r\n\t\t\t\t\t\t\tFragment: React.Fragment,\r\n\t\t\t\t\t\t\tmemo: React.memo,\r\n\t\t\t\t\t\t\tuseCallback: React.useCallback,\r\n\t\t\t\t\t\t\tuseEffect: React.useEffect,\r\n\t\t\t\t\t\t\tuseRef: React.useRef,\r\n\t\t\t\t\t\t\tuseState: React.useState,\r\n\t\t\t\t\t\t\tuseLayoutEffect: React.useLayoutEffect,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\"react-dom\": { createPortal },\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\twindow.__framer_editorBarDependencies = dependencies\r\n\r\n\t\t\t\t\tconst { createEditorBar } = await import(\"https://framer.com/edit/init.mjs\")\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tdefault: createEditorBar(),\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t})() : undefined\r\n\t\t,\r\n\t\t\t\t\tadaptLayoutToTextDirection: false,\r\n\t\t\t\t\tLayoutTemplate: Template,\r\n\t\t\t\t\tloadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/182XtcfHMFdstlRlMcle/9Mff9GMrNIOLuDScVJTr/snippets.js\")),\r\n\t\t\t\t\tinitialCollectionItemId: collectionItemId,\r\n\t\t\t\t\tinitialContentLocaleIdOverride: contentLocaleId,\r\n\t\t\t\t}\r\n\t\t\t)\r\n\r\n\t\t\tconst contentWithGracefullyDegradingErrorBoundary = React.createElement(Framer.GracefullyDegradingErrorBoundary, {\r\n\t\t\t\tchildren: content\r\n\t\t\t})\r\n\r\n\t\t\t\r\n\t\t\tconst page = React.createElement(Framer.PageEffectsProvider, {\r\n\t\t\t\tchildren: contentWithGracefullyDegradingErrorBoundary,\r\n\t\t\t\tvalue: {routes: {}}\r\n\t\t\t})\r\n\r\n\t\t\t// We don't want the initial render to immediately have to suspend.\r\n\t\t\tawait rootPreload\r\n\t\t\treturn page\r\n\t\t}\r\n\t\r\n\r\n\t\tif (isBrowser) {\r\n\t\t\t// Note: HTTPArchive also uses this function to detect Framer sites; see https://github.com/HTTPArchive/wappalyzer/blob/371a17583f74fd9171b9077f59a5619b24062891/src/technologies/f.json#L1722-L1748.\r\n\t\t\twindow.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\r\n\t\t\t\treturn React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\r\n\t\t\t}\r\n\r\n\t\t\twindow.__framer_events = window.__framer_events || []\r\n\r\n\t\t\t// Initialize lazy modules cache for hydration\r\n\t\t\tFramer.initLazyModulesCache()\r\n\r\n\t\t\tconst container = document.getElementById(\"main\")\r\n\t\t\t// We know that #main is parsed before this script, so we don't need to wait for DOMContentLoaded or similar events.\r\n\t\t\tif (\"framerHydrateV2\" in container.dataset) main(true, container)\r\n\t\t\telse main(false, container)\r\n\t\t}\r\n\r\n\t\tfunction track() {\r\n\t\t\tif (!isBrowser) return\r\n\t\t\twindow.__framer_events.push(arguments)\r\n\t\t}\r\n\r\n\t\tasync function main(shouldHydrate, container) {\r\n\t\t\tfunction handleError(error, errorInfo, recoverable = true) {\r\n\t\t\t\tif (error.caught || window.__framer_hadFatalError) return // we already logged it\r\n\r\n\t\t\t\tconst componentStack = errorInfo?.componentStack\r\n\t\t\t\tif (recoverable) {\r\n\t\t\t\t\tconsole.warn(\"Caught a recoverable error. The site is still functional, but might have some UI flickering or degraded page load performance. If you are the author of this website, update external components and check recently added custom code or code overrides to fix the following server/client mismatches:\\n\", error, componentStack)\r\n\t\t\t\t\t// we only want to collect 1%, because this can be quite noisy (floods the data pipeline)\r\n\t\t\t\t\tif (Math.random() > 0.01) return\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(\"Caught a fatal error. Please report the following to the Framer team via https://www.framer.com/contact/:\\n\", error, componentStack)\r\n\t\t\t\t}\r\n\t\t\t\ttrack(recoverable ? \"published_site_load_recoverable_error\" : \"published_site_load_error\", {\r\n\t\t\t\t\tmessage: String(error),\r\n\t\t\t\t\tcomponentStack, // componentStack is more useful\r\n\t\t\t\t\tstack: componentStack ? undefined : error instanceof Error && typeof error.stack === \"string\" ? error.stack : null,\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\ttry {\r\n\t\t\t\tlet routeId, localeId, contentLocaleId, pathVariables, canonicalPathVariables, breakpoints, routeData\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\trouteData = JSON.parse(container.dataset[\"framerHydrateV2\"])\r\n\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\tcontentLocaleId = routeData.contentLocaleId\r\n\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\tcanonicalPathVariables = routeData.canonicalPathVariables\r\n\t\t\t\t\tbreakpoints = routeData.breakpoints\r\n\r\n\t\t\t\t\trouteId = Framer.patchRoutesForABTesting(routes, routeId) // Prioritize optimized route id to avoid flickering in browsers not supporting the server-timing header (Safari older than 16.4)\r\n\t\t\t\t} else {\r\n\t\t\t\t\t\r\n\t\t\t\t\tFramer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\t\t\t\t\tconst serverRoute = performance.getEntriesByType(\"navigation\")[0]?.serverTiming?.find(e => e.name === \"route\")?.description\r\n\t\t\t\t\tif (serverRoute) {\r\n\t\t\t\t\t\tconst routeData = new URLSearchParams(serverRoute)\r\n\t\t\t\t\t\trouteId = routeData.get(\"id\")\r\n\t\t\t\t\t\tlocaleId = routeData.get(\"locale\")\r\n\t\t\t\t\t\tfor (const [key, value] of routeData.entries()) {\r\n\t\t\t\t\t\t\tif (!key.startsWith(\"var.\")) continue\r\n\t\t\t\t\t\t\tpathVariables ??= {}\r\n\t\t\t\t\t\t\tpathVariables[key.slice(4)] = value\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (!routeId || !localeId) {\r\n\t\t\t\t\t\tconst routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\r\n\t\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst pagePromise = getPageRoot({\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tcontentLocaleId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\tcanonicalPathVariables,\r\n\t\t\t\t\tcollectionItemId: shouldHydrate ? routeData?.collectionItemId : undefined,\r\n\t\t\t\t\tshouldResolveInitialRouteContentState: !shouldHydrate,\r\n\t\t\t\t})\r\n\r\n\t\t\t\t\r\nif (typeof window !== \"undefined\") {\r\n\tvoid (async () => {\r\n\t\tconst route = routes[routeId]\r\n\r\n\t\tconst defaultLocaleId = \"default\"\r\n\t\tconst framerLocale = locales.find(({ id }) => !localeId ? id === defaultLocaleId : id === localeId).code\r\n\r\n\t\t\r\n\t\tlet collectionItemId = routeData?.collectionItemId ?? null\r\n\t\tif (collectionItemId === null && route?.collectionId && collectionUtils) {\r\n\t\t\tconst utils = await collectionUtils[route.collectionId]?.()\r\n\t\t\tconst [slug] = Object.values(pathVariables)\r\n\t\t\tif (utils && typeof slug === \"string\") {\r\n\t\t\t\tcollectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n\t\t\t}\r\n\t\t}\r\n\t\r\n\r\n\t\tconst resolvedDateTimeOptions = Intl.DateTimeFormat().resolvedOptions()\r\n\t\tconst timezone = resolvedDateTimeOptions.timeZone\r\n\t\tconst locale = resolvedDateTimeOptions.locale\r\n\r\n\t\t// wait for the page to be activated before sending the pageview event\r\n\t\t// https://developer.chrome.com/docs/web-platform/prerender-pages#impact-on-analytics\r\n\t\tawait new Promise((resolve) => {\r\n\t\t\tif (document.prerendering) {\r\n\t\t\t\tdocument.addEventListener(\"prerenderingchange\", resolve, { once: true })\r\n\t\t\t} else {\r\n\t\t\t\tresolve()\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\twindow.__framer_events.push([\r\n\t\t\t\"published_site_pageview\",\r\n\t\t\t{\r\n\t\t\t\tframerSiteId,\r\n\t\t\t\tversion: 2,\r\n\t\t\t\troutePath: route?.path || \"/\",\r\n\t\t\t\tcollectionItemId,\r\n\t\t\t\tframerLocale: framerLocale || null,\r\n\t\t\t\twebPageId: route?.abTestingVariantId ?? routeId,\r\n\t\t\t\tabTestId: route?.abTestId,\r\n\t\t\t\treferrer: document.referrer || null,\r\n\t\t\t\turl: window.location.href,\r\n\t\t\t\thostname: window.location.hostname || null,\r\n\t\t\t\tpathname: window.location.pathname || null,\r\n\t\t\t\thash: window.location.hash || null,\r\n\t\t\t\tsearch: window.location.search || null,\r\n\t\t\t\ttimezone,\r\n\t\t\t\tlocale,\r\n\t\t\t},\r\n\t\t\t\"eager\"\r\n\t\t])\r\n\r\n\t\t// Yield to avoid blocking the main thread with the user code\r\n\t\tawait Framer.yieldToMain({ priority: \"background\", ensureContinueBeforeUnload: true, continueAfter: \"paint\" })\r\n\r\n\t\tdocument.dispatchEvent(new CustomEvent(\"framer:pageview\", {\r\n\t\t\tdetail: { framerLocale: framerLocale || null }\r\n\t\t}))\r\n\t})()\r\n}\r\n\r\n\r\n\t\t\t\tconst page = await pagePromise\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tFramer.withPerformanceMarks(\"framer-rewrite-breakpoints\", () => {\r\n\t\t\t\t\t\tFramer.removeHiddenBreakpointLayersV2(breakpoints)\r\n\t\t\t\t\t\twindow.__framer_onRewriteBreakpoints?.(breakpoints)\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tconst startTransition = isBot ? cb => cb() : React.startTransition\r\n\t\t\t\t\tstartTransition(() => {\r\n\t\t\t\t\t\tFramer.markHydrationStart()\r\n\t\t\t\t\t\tFramer.turnOffReactEventHandling()\r\n\t\t\t\t\t\tReactDOM.hydrateRoot(container, page, { onRecoverableError: handleError })\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\t\r\n\t\t\t\t\tReactDOM.createRoot(container, { onRecoverableError: handleError }).render(page)\r\n\t\t\t\t}\r\n\t\t\t} catch (error) {\r\n\t\t\t\thandleError(error, undefined, false)\r\n\t\t\t\tthrow error\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\r\n\r\n\t\t\r\n\t"],"mappings":"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"}