{"version":3,"file":"script_main.Cn_FlDHU.mjs","names":["serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","sharedStyle.className","RichText","sharedStyle.css","sharedStyle.fonts","React.useState","React.useId","React.useRef","React.useMemo","css","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","Image1","ButtonsSocial","Button2","serializationHash","variantClassNames","transition1","transformTemplate1","addImageAlt","matchVariant","React.useContext","React.useMemo","humanReadableVariantMap","React.Fragment","getProps","React.forwardRef","useRef","React.useId","sharedStyle.className","sharedStyle1.className","sharedStyle2.className","className","Image1","RichText","_Fragment","FormPlainTextInput","sharedStyle.css","sharedStyle1.css","sharedStyle2.css","sharedStyle.fonts","sharedStyle1.fonts","sharedStyle2.fonts","React.useRef","React.useId","React.useState","React.useCallback","Footer","NewNavLink","Header","isBrowser","useRef","React.useId","PropertyOverrides","RichText","React.Fragment","React.createElement","BitrigLayout","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/gTfiJUahPQceLsPb9V9I/h2OECLxI0bAlzpARswu7/qFEwdlkrB.js","https:/framerusercontent.com/modules/wPhZTeEIzehy2JMFa0Cb/Qacb9pNcc2haIMOiwWwR/IconArcFooter.js","https:/framerusercontent.com/modules/5Xil8LoZtAADXbmlnKrW/6IqrRpiVGiRiOoMOQcQm/zc0ybcRn0.js","https:/framerusercontent.com/modules/f5lbtcE8qC5qAHxVkfgL/EfaFP4l1JqdhNNt2Q5u4/uQ7GpWE34.js","https:/framerusercontent.com/modules/xMBUfLfIxqQWpKgrIeJJ/88B87CMT94qFSss0NIAs/TwgMa8hUr.js","https:/framerusercontent.com/modules/IcRmtwK8UJ5JQUdxKt9t/2sTcrVPlA79oWerax83G/Efew.js","https:/framerusercontent.com/modules/TXi2Wjj1S01Qd8AI82hK/v1BNDQK9b0ENQFggAh3p/g2yl9llYn.js","framer:toplevel/main"],"sourcesContent":["// Generated by Framer (80f113d)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,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 sharedStyle from\"https://framerusercontent.com/modules/oOcLwRh11aG5EDdGRvjU/ucHdbAyOIy4gqkahTavg/q3oo9BxYG.js\";const serializationHash=\"framer-BEn6T\";const variantClassNames={Q3pjCFuKo:\"framer-v-1v3frw7\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const Kvxz70pKQ=undefined;const yMhPzGMzQ=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({height,id,link,title,width,...props})=>{return{...props,Kvxz70pKQ:link??props.Kvxz70pKQ,yMhPzGMzQ:title??props.yMhPzGMzQ??\"Mac\"};};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,Kvxz70pKQ,yMhPzGMzQ,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"Q3pjCFuKo\",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-1v3frw7\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"Q3pjCFuKo\",ref:refBinding,style:{...style},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NVjI7QUJDIEZhdm9yaXQgVmFyaWFibGUgVmFyaWFibGUgUmVndWxhclZGPUluZG5hSFFpSURVd01Dd2dJbk5zYm5RaUlEQT0=\",\"--framer-font-family\":'\"ABC Favorit Variable Variable Regular\", \"ABC Favorit Variable Variable Regular Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'blwf' on, 'cv03' on, 'cv04' on, 'cv09' on, 'cv11' on\",\"--framer-font-size\":\"15px\",\"--framer-font-variation-axes\":'var(--extracted-2gg91v, \"wght\" 500, \"slnt\" 0)',\"--framer-letter-spacing\":\"-0.02em\",\"--framer-line-height\":\"100%\"},children:/*#__PURE__*/_jsx(Link,{href:Kvxz70pKQ,motionChild:true,nodeId:\"t6tD6oPOt\",openInNewTab:false,relValues:[],scopeId:\"qFEwdlkrB\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1myost8\",\"data-styles-preset\":\"q3oo9BxYG\",children:\"Mac\"})})})}),className:\"framer-15dlxm4\",fonts:[\"CUSTOMV2;ABC Favorit Variable Variable Regular\"],layoutDependency:layoutDependency,layoutId:\"t6tD6oPOt\",style:{\"--extracted-2gg91v\":'\"wght\" 500, \"slnt\" 0'},text:yMhPzGMzQ,verticalAlignment:\"top\",withExternalLayout:true})})})})});});const css=[\".framer-BEn6T.framer-1f7mhss, .framer-BEn6T .framer-1f7mhss { display: block; }\",\".framer-BEn6T.framer-1v3frw7 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px 12px 0px 12px; position: relative; width: min-content; }\",\".framer-BEn6T .framer-15dlxm4 { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 15\n * @framerIntrinsicWidth 53\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"Kvxz70pKQ\":\"link\",\"yMhPzGMzQ\":\"title\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerqFEwdlkrB=withCSS(Component,css,\"framer-BEn6T\");export default FramerqFEwdlkrB;FramerqFEwdlkrB.displayName=\"New/Nav Link\";FramerqFEwdlkrB.defaultProps={height:15,width:53};addPropertyControls(FramerqFEwdlkrB,{Kvxz70pKQ:{title:\"Link\",type:ControlType.Link},yMhPzGMzQ:{defaultValue:\"Mac\",displayTextArea:false,title:\"Title\",type:ControlType.String},onyMhPzGMzQChange:{changes:\"yMhPzGMzQ\",type:ControlType.ChangeHandler}});const variationAxes=[{defaultValue:400,maxValue:1e3,minValue:300,name:\"Weight\",tag:\"wght\"},{defaultValue:0,maxValue:0,minValue:-12,name:\"Slant\",tag:\"slnt\"}];addFonts(FramerqFEwdlkrB,[{explicitInter:true,fonts:[{cssFamilyName:\"ABC Favorit Variable Variable Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"ABC Favorit Variable\",url:\"https://framerusercontent.com/assets/J1jxf59pLsDwYm2sj21dYFzXg4Y.woff2\",variationAxes,weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerqFEwdlkrB\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"Kvxz70pKQ\\\":\\\"link\\\",\\\"yMhPzGMzQ\\\":\\\"title\\\"}\",\"framerColorSyntax\":\"true\",\"framerIntrinsicWidth\":\"53\",\"framerIntrinsicHeight\":\"15\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./qFEwdlkrB.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{motion,useMotionValue,useSpring,useTransform}from\"framer-motion\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";/**\n * ICON ARC\n * A fanned row of app icons — biggest one dead center and in front, each step\n * outward smaller, lower and further back. The frame crops the bottom, so the\n * whole thing reads as a stack rising out of the edge.\n *\n * Drop your own PNGs into the Icons array. With the array empty it renders\n * placeholder squircles so you can lay the composition out first.\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 1200\n * @framerIntrinsicHeight 300\n */const PLACEHOLDER_COLORS=[\"#F0F0F2\",\"#2B2B2E\",\"#FFC629\",\"#F4F4F6\",\"#2E7DF6\",\"#FFB020\",\"#1F1F22\",\"#3DA9FC\",\"#EDEDF0\",\"#E8453C\",\"#00B8A9\",\"#7B61FF\"];/**\n * Superellipse (|x|^n + |y|^n = 1) in a 0..1 box — the continuous-curvature\n * corner Apple uses, which plain border-radius can't produce.\n * n = 2 is an ellipse, ~4.5 is the icon squircle, high n approaches a square.\n */function squirclePath(n,segments=128){const pts=[];for(let i=0;i<=segments;i++){const t=i/segments*Math.PI*2;const cos=Math.cos(t);const sin=Math.sin(t);const x=Math.sign(cos)*Math.pow(Math.abs(cos),2/n);const y=Math.sign(sin)*Math.pow(Math.abs(sin),2/n);pts.push(`${(.5+x/2).toFixed(5)},${(.5+y/2).toFixed(5)}`);}return`M${pts[0]}L${pts.slice(1).join(\"L\")}Z`;}/** Natural pixel size of an image, once it has loaded. */function useNaturalSize(src){const[size,setSize]=React.useState(null);React.useEffect(()=>{if(!src){setSize(null);return;}let alive=true;const img=new Image;img.onload=()=>{if(alive)setSize({w:img.naturalWidth,h:img.naturalHeight});};img.src=src;return()=>{alive=false;};},[src]);return size;}const gcd=(a,b)=>b?gcd(b,a%b):a;/**\n * Guess a square-cell grid from the sheet's pixel size. A 1792x1536 sheet\n * shares a factor of 256, so it reads as 7 x 6 cells of 256px.\n * Returns null when the guess is implausible — then the manual values win.\n */function guessGrid(size){if(!size||!size.w||!size.h)return null;const g=gcd(size.w,size.h);const c=size.w/g;const r=size.h/g;if(c*r<2||c>40||r>40)return null;return{c,r};}/**\n * Fires once (or every time) the element crosses into the viewport.\n * Plain IntersectionObserver so it doesn't depend on a particular\n * framer-motion version.\n */function useInView(ref,{threshold=.3,margin=0,once=true,enabled=true}){const[inView,setInView]=React.useState(false);React.useEffect(()=>{if(!enabled)return;const el=ref.current;if(!el||typeof IntersectionObserver===\"undefined\"){setInView(true);return;}const io=new IntersectionObserver(([entry])=>{if(entry.isIntersecting){setInView(true);if(once)io.disconnect();}else if(!once){setInView(false);}},{threshold:Math.min(1,Math.max(0,threshold)),rootMargin:`${margin}px 0px ${margin}px 0px`});io.observe(el);return()=>io.disconnect();},[ref,threshold,margin,once,enabled]);return inView;}function usePrefersReducedMotion(){const[reduced,setReduced]=React.useState(false);React.useEffect(()=>{if(typeof matchMedia!==\"function\")return;const mq=matchMedia(\"(prefers-reduced-motion: reduce)\");setReduced(mq.matches);const on=()=>setReduced(mq.matches);mq.addEventListener?.(\"change\",on);return()=>mq.removeEventListener?.(\"change\",on);},[]);return reduced;}/**\n * One icon. Split into two nested motion elements on purpose: the outer one\n * owns the reveal (x / y / scale / opacity), the inner one owns the hover\n * magnification. Sharing `scale` between the two would make them fight.\n */function Tile(props){const{offsetX,left,top,w,zBase,pointerX,hover,magnify,range,originBottom,hoverSpeed,reveal,transition,shadow,clipId,artStyle,children}=props;// Raised cosine bell centred on the cursor: 1 under it, 0 at `range`.\n// Same shape the Dock uses, so neighbours swell instead of popping.\nconst bell=useTransform(pointerX,px=>{if(!hover||range<=0)return 0;const d=Math.abs(px-offsetX);if(d>=range)return 0;return Math.pow(Math.cos(d/range*(Math.PI/2)),2);});const springConfig={stiffness:120+hoverSpeed*480,damping:22,mass:.6};const scale=useSpring(useTransform(bell,b=>1+(magnify-1)*b),springConfig);// Whatever is under the cursor has to come forward, or the icons in front\n// of it in the arc would clip the magnified edges.\nconst zIndex=useTransform(bell,b=>zBase+Math.round(b*1e3));return /*#__PURE__*/_jsx(motion.div,{initial:false,animate:reveal,transition:transition,style:{position:\"absolute\",left:`calc(50% + ${left}px)`,top,width:w,height:w,zIndex:hover?zIndex:zBase},children:/*#__PURE__*/_jsxs(motion.div,{style:{width:\"100%\",height:\"100%\",scale:hover?scale:1,transformOrigin:originBottom?\"center bottom\":\"center\"},children:[shadow>0&&/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":true,style:{position:\"absolute\",inset:0,transform:`translateY(${w*.03}px)`,clipPath:`url(#${clipId})`,background:`rgba(20,20,32,${shadow})`,filter:`blur(${w*.05}px)`}}),/*#__PURE__*/_jsx(\"div\",{style:artStyle,children:children})]})});}export default function IconArc(props){const{centerImage,atlas,columns=0,rows=0,trim=0,cells=0,startCell=0,images=[],count=9,size=340,scaleStep=.82,overlap=.56,drop=.17,curve=.9,topInset=20,corner=4.4,shadow=.12,fade=0,trigger=\"Scroll into view\",threshold=.35,margin=0,once=true,revealDelay=0,revealStagger=.08,revealDuration=.7,bounce=.35,fromScale=.55,fromCenter=true,hover=true,magnify=1.35,hoverRange=1.3,hoverOrigin=\"Bottom\",hoverSpeed=.6,fit=\"Fit\",sideInset=0,minSize=0,mask=0,clip=\"Bottom\",bleed=0,style}=props;const uid=React.useId().replace(/[^a-zA-Z0-9]/g,\"\");const clipId=`squircle_${uid}`;// On the Framer canvas, always show the finished composition — a designer\n// shouldn't have to scroll a preview to see what they're arranging.\nconst onCanvas=RenderTarget.current()===RenderTarget.canvas;const reduced=usePrefersReducedMotion();const containerRef=React.useRef(null);const animated=trigger!==\"Off\"&&!onCanvas&&!reduced;// Layout width of the frame. clientWidth, not getBoundingClientRect —\n// Framer zooms the canvas with a CSS transform, which would inflate rects.\nconst[frameWidth,setFrameWidth]=React.useState(0);React.useLayoutEffect(()=>{const el=containerRef.current;if(!el)return;const measure=()=>setFrameWidth(w=>Math.abs(w-el.clientWidth)<.5?w:el.clientWidth);measure();if(typeof ResizeObserver===\"undefined\")return;const ro=new ResizeObserver(measure);ro.observe(el);return()=>ro.disconnect();},[]);const scrolledIn=useInView(containerRef,{threshold,margin,once,enabled:animated&&trigger===\"Scroll into view\"});const[loaded,setLoaded]=React.useState(false);React.useEffect(()=>{if(trigger===\"On load\"){const id=requestAnimationFrame(()=>setLoaded(true));return()=>cancelAnimationFrame(id);}},[trigger]);const shown=!animated||(trigger===\"On load\"?loaded:scrolledIn);// Source priority: sprite atlas > individual images > placeholders.\nconst useAtlas=Boolean(atlas?.src);const natural=useNaturalSize(atlas?.src);const guess=React.useMemo(()=>guessGrid(natural),[natural]);// 0 means \"work it out from the sheet\"; anything else is taken literally.\nconst cols=columns>0?Math.round(columns):guess?.c??1;const rowCount=rows>0?Math.round(rows):guess?.r??1;const grid=cols*rowCount;const atlasCells=useAtlas?Math.max(1,Math.min(grid,Math.round(cells)||grid)):0;const n=Math.max(1,useAtlas?atlasCells:images.length>0?images.length:Math.round(count));const center=(n-1)/2;// One cell of the atlas, addressed row-major, as a background slice.\n// `t` shaves a margin off every cell, for sheets exported with gutters.\nconst t=Math.min(.45,Math.max(0,trim));// Set below, once we know how many pairs the frame forced us to drop.\nlet cellOffset=0;const cellStyle=i=>{const cell=(Math.round(startCell)+cellOffset+i)%grid;const col=cell%cols;const row=Math.floor(cell/cols);// Scale factor, in element widths, that makes one trimmed cell\n// exactly fill the tile.\nconst bx=cols/(1-2*t);const by=rowCount/(1-2*t);// Left/top edge of the wanted window, as a fraction of the sheet.\nconst x0=(col+t)/cols;const y0=(row+t)/rowCount;// background-position % that lands that window on the tile.\nconst px=bx>1?x0*bx/(bx-1):0;const py=by>1?y0*by/(by-1):0;return{backgroundImage:`url(\"${atlas.src}\")`,backgroundRepeat:\"no-repeat\",backgroundSize:`${bx*100}% ${by*100}%`,backgroundPosition:`${px*100}% ${py*100}%`};};const path=React.useMemo(()=>squirclePath(corner),[corner]);// --- Layout, solved in \"unit\" space where the center icon is 1 wide ---\n// Doing it unitless first means the whole arrangement can be scaled to the\n// frame afterwards, instead of overflowing it.\nconst unitLayout=k=>{const c=(k-1)/2;const w=Array.from({length:k},(_,i)=>Math.pow(scaleStep,Math.abs(i-c)));const x=[0];for(let i=1;i<k;i++)x.push(x[i-1]+overlap*((w[i-1]+w[i])/2));const l=Math.min(...x.map((v,i)=>v-w[i]/2));const r=Math.max(...x.map((v,i)=>v+w[i]/2));return{w,x,span:r-l,shift:-(l+r)/2};};const available=frameWidth>0?frameWidth*(1-2*Math.min(.45,Math.max(0,sideInset))):0;// Drop icons in symmetric pairs when the frame is too narrow to show them\n// above `minSize`. Keeps the same hero cell by walking `startCell` inwards.\nlet shownCount=n;let dropped=0;if(available>0&&minSize>0&&fit!==\"Fixed\"){while(shownCount>1&&available/unitLayout(shownCount).span<minSize){shownCount-=2;dropped+=1;}if(shownCount<1){shownCount=1;dropped=Math.floor((n-1)/2);}}cellOffset=dropped;const unit=unitLayout(shownCount);// Fixed keeps the px value. Fit caps it at what the frame can hold.\n// Fill always spans the frame, growing as well as shrinking.\nconst fittedSize=available>0?available/unit.span:size;const effSize=fit===\"Fixed\"||available<=0?size:fit===\"Fill\"?fittedSize:Math.min(size,fittedSize);// Everything else scales with it, so the composition stays proportional\n// rather than the icons shrinking inside a fixed arc.\nconst k=size>0?effSize/size:1;const topPx=topInset*k;const nn=shownCount;const centerN=(nn-1)/2;const steps=Array.from({length:nn},(_,i)=>Math.abs(i-centerN));const widths=unit.w.map(v=>v*effSize);const xs=unit.x.map(v=>v*effSize);const shift=unit.shift*effSize;// The one at the front. Gets the Center image override, and leads the reveal.\nconst heroIndex=Math.round(centerN);// `drop` is the first step down as a fraction of the center icon.\n// `curve` shapes the rest: 1 = straight line, <1 flattens out towards the\n// edges, >1 lets them fall away faster.\nconst dropAt=m=>drop*effSize*Math.pow(m,curve);// Springs with bounce overshoot past scale 1, and Magnify goes further\n// still. For a duration/bounce spring the damping ratio is (1 - bounce),\n// and peak overshoot is exp(-pi*z / sqrt(1 - z^2)). Bounce 0.45 -> ~12.6%\n// over. That overshoot has to live somewhere or the frame shears it off.\nconst z=1-Math.min(.99,Math.max(0,bounce));const revealPeak=trigger!==\"Off\"&&bounce>0?1+Math.exp(-Math.PI*z/Math.sqrt(1-z*z)):1;const hoverPeak=hover&&magnify>1?magnify:1;const peak=Math.max(revealPeak,hoverPeak);// How far past the resting layout the overshoot actually reaches. Measured\n// per axis off the real geometry rather than assumed from the center icon —\n// the outermost icons are the smallest, so sideways growth is far less than\n// a naive (peak - 1) * size would reserve.\nconst restRight=Math.max(...xs.map((x,i)=>x+widths[i]/2));const peakRight=Math.max(...xs.map((x,i)=>x+widths[i]*peak/2));const spillX=Math.ceil(Math.max(0,peakRight-restRight))+2;// Reveal scales about each icon's center; hover can scale about its bottom,\n// which pushes twice as far up for the same peak.\nconst upFor=w=>Math.max(w*(revealPeak-1)/2,hover&&magnify>1?w*(magnify-1)*(hoverOrigin===\"Bottom\"?1:.5):0);const spillY=Math.ceil(Math.max(...widths.map(upFor)))+2;// Framer gives code components no clip-content toggle, so it lives here.\n//   Bottom — crop the bottom edge at the frame, leave the other three open\n//            by exactly the overshoot, so bounce and magnify never shear.\n//   Frame  — clip to the frame on all four sides, the plain overflow:hidden.\n//   None   — clip nothing; icons render past every edge.\nconst cropTop=clip===\"Bottom\"?spillY:0;const crop=clip===\"Bottom\"?{left:-spillX,right:-spillX,top:-spillY,bottom:0,overflow:\"hidden\"}:{left:0,right:0,top:0,bottom:0,overflow:clip===\"Frame\"?\"hidden\":\"visible\"};const maskAmount=Math.min(.49,Math.max(0,mask));const maskCSS=maskAmount>0?`linear-gradient(to right, transparent 0%, #000 ${maskAmount*100}%, #000 ${100-maskAmount*100}%, transparent 100%)`:undefined;// Cursor position relative to the component's horizontal centre. Parked far\n// away when the pointer leaves so every bell collapses to zero.\nconst AWAY=1e6;const pointerX=useMotionValue(AWAY);const onPointerMove=e=>{// Mouse only. A touch would set the bell and leave it stuck there,\n// since there's no leave event to reset it.\nif(!hover||e.pointerType!==\"mouse\")return;const r=e.currentTarget.getBoundingClientRect();pointerX.set(e.clientX-r.left-r.width/2);};const onPointerLeave=()=>pointerX.set(AWAY);const spring={type:\"spring\",duration:revealDuration,bounce};return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,onPointerMove:onPointerMove,onPointerLeave:onPointerLeave,style:{position:\"relative\",// Negative margins pull the component out through a padded\n// parent, so the arc can span the full container width.\nwidth:bleed?`calc(100% + ${bleed*2}px)`:\"100%\",marginLeft:bleed?-bleed:undefined,marginRight:bleed?-bleed:undefined,height:\"100%\",// Not `hidden` — the inner crop box does the clipping, and only\n// along the bottom. The mask still fades relative to the frame.\noverflow:\"visible\",...maskCSS?{WebkitMaskImage:maskCSS,maskImage:maskCSS,// Without this the gradient tiles across the\n// overflowing area instead of ending at the frame.\nWebkitMaskRepeat:\"no-repeat\",maskRepeat:\"no-repeat\",WebkitMaskSize:\"100% 100%\",maskSize:\"100% 100%\"}:{},...style},children:[/*#__PURE__*/_jsx(\"svg\",{width:\"0\",height:\"0\",style:{position:\"absolute\"},\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"defs\",{children:/*#__PURE__*/_jsx(\"clipPath\",{id:clipId,clipPathUnits:\"objectBoundingBox\",children:/*#__PURE__*/_jsx(\"path\",{d:path})})})}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",...crop},children:Array.from({length:nn},(_,i)=>{const m=steps[i];const w=widths[i];const isHero=i===heroIndex;// Center image wins over the atlas / list for the front icon.\nconst override=isHero?centerImage:undefined;const image=override??images[i];const color=PLACEHOLDER_COLORS[i%PLACEHOLDER_COLORS.length];const restOpacity=1-fade*(m/Math.max(centerN,1));// Hidden state: sitting behind the hero, shrunk and invisible.\nconst hidden=fromCenter?{x:xs[heroIndex]-xs[i],y:dropAt(steps[heroIndex])-dropAt(m)+(widths[heroIndex]-w)/2}:{x:0,y:0};return /*#__PURE__*/_jsx(Tile,{offsetX:xs[i]+shift,left:xs[i]+shift-w/2,top:topPx+cropTop+dropAt(m),w:w,zBase:Math.round((nn-m)*10),pointerX:pointerX,hover:hover&&magnify!==1,magnify:magnify,range:hoverRange*effSize,originBottom:hoverOrigin===\"Bottom\",hoverSpeed:hoverSpeed,shadow:shadow,clipId:clipId,reveal:shown?{x:0,y:0,scale:1,opacity:restOpacity}:isHero?{x:0,y:0,scale:fromScale,opacity:0}:{...hidden,scale:fromScale,opacity:0},transition:{...spring,delay:shown?revealDelay+Math.max(0,m-steps[heroIndex])*revealStagger:0},artStyle:{position:\"relative\",width:\"100%\",height:\"100%\",clipPath:`url(#${clipId})`,overflow:\"hidden\",...override?{}:useAtlas?cellStyle(i):image?{}:{background:color}},children:image&&(override||!useAtlas)&&/*#__PURE__*/_jsx(\"img\",{src:image.src,srcSet:image.srcSet,alt:image.alt??\"\",style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"}})},i);})})]});}IconArc.displayName=\"Icon Arc\";addPropertyControls(IconArc,{centerImage:{type:ControlType.ResponsiveImage,title:\"Center\",description:\"The hero icon. Leave empty to take it from the atlas like the rest.\"},atlas:{type:ControlType.ResponsiveImage,title:\"Atlas\",description:\"One sheet of icons on a uniform grid, read left to right, top to bottom. Overrides the Icons list.\"},columns:{type:ControlType.Number,title:\"Columns\",defaultValue:0,min:0,max:40,step:1,displayStepper:true,description:\"0 = detect from the sheet's proportions\",hidden:p=>!p.atlas?.src},rows:{type:ControlType.Number,title:\"Rows\",defaultValue:0,min:0,max:40,step:1,displayStepper:true,hidden:p=>!p.atlas?.src},trim:{type:ControlType.Number,title:\"Trim\",defaultValue:0,min:0,max:.45,step:.005,description:\"Shave gutters off each cell\",hidden:p=>!p.atlas?.src},cells:{type:ControlType.Number,title:\"Use\",defaultValue:0,min:0,max:400,step:1,displayStepper:true,description:\"0 = every cell in the grid\",hidden:p=>!p.atlas?.src},startCell:{type:ControlType.Number,title:\"Start at\",defaultValue:0,min:0,max:399,step:1,displayStepper:true,description:\"Rotate which cell lands in the center\",hidden:p=>!p.atlas?.src},images:{type:ControlType.Array,title:\"Icons\",control:{type:ControlType.ResponsiveImage},defaultValue:[],maxCount:21,hidden:p=>Boolean(p.atlas?.src)},count:{type:ControlType.Number,title:\"Placeholders\",defaultValue:9,min:1,max:21,step:1,displayStepper:true,hidden:p=>Boolean(p.atlas?.src)||(p.images?.length??0)>0},size:{type:ControlType.Number,title:\"Center size\",defaultValue:340,min:40,max:1200,step:2,unit:\"px\"},scaleStep:{type:ControlType.Number,title:\"Falloff\",defaultValue:.82,min:.4,max:1,step:.01},overlap:{type:ControlType.Number,title:\"Spacing\",defaultValue:.56,min:.15,max:1.2,step:.01},drop:{type:ControlType.Number,title:\"Arc\",defaultValue:.17,min:0,max:.6,step:.01},curve:{type:ControlType.Number,title:\"Curve\",defaultValue:.9,min:.3,max:2.5,step:.05,description:\"1 = straight fall \\xb7 below 1 flattens the ends\"},topInset:{type:ControlType.Number,title:\"Top\",defaultValue:20,min:-400,max:400,step:1,unit:\"px\"},corner:{type:ControlType.Number,title:\"Corner\",defaultValue:4.4,min:2,max:12,step:.1,description:\"2 = ellipse \\xb7 4.6 = Apple squircle \\xb7 12 = square\"},shadow:{type:ControlType.Number,title:\"Shadow\",defaultValue:.12,min:0,max:.6,step:.01},fade:{type:ControlType.Number,title:\"Edge fade\",defaultValue:0,min:0,max:1,step:.01},trigger:{type:ControlType.Enum,title:\"Reveal\",defaultValue:\"Scroll into view\",options:[\"Scroll into view\",\"On load\",\"Off\"],description:\"Center icon lands first, the rest fan out from behind it.\"},threshold:{type:ControlType.Number,title:\"Visible\",defaultValue:.35,min:0,max:1,step:.05,description:\"How much of the component must be on screen to fire\",hidden:p=>p.trigger!==\"Scroll into view\"},margin:{type:ControlType.Number,title:\"Offset\",defaultValue:0,min:-600,max:600,step:10,unit:\"px\",description:\"Positive fires earlier, negative later\",hidden:p=>p.trigger!==\"Scroll into view\"},once:{type:ControlType.Boolean,title:\"Repeat\",defaultValue:true,enabledTitle:\"Once\",disabledTitle:\"Every time\",hidden:p=>p.trigger!==\"Scroll into view\"},revealDelay:{type:ControlType.Number,title:\"Delay\",defaultValue:0,min:0,max:4,step:.05,unit:\"s\",hidden:p=>p.trigger===\"Off\"},revealStagger:{type:ControlType.Number,title:\"Step\",defaultValue:.08,min:0,max:1,step:.01,unit:\"s\",description:\"Gap between each ring of icons appearing\",hidden:p=>p.trigger===\"Off\"},revealDuration:{type:ControlType.Number,title:\"Speed\",defaultValue:.7,min:.1,max:3,step:.05,unit:\"s\",hidden:p=>p.trigger===\"Off\"},bounce:{type:ControlType.Number,title:\"Bounce\",defaultValue:.35,min:0,max:1,step:.05,hidden:p=>p.trigger===\"Off\"},fromScale:{type:ControlType.Number,title:\"From\",defaultValue:.55,min:0,max:1,step:.05,description:\"Scale each icon starts at\",hidden:p=>p.trigger===\"Off\"},fromCenter:{type:ControlType.Boolean,title:\"Origin\",defaultValue:true,enabledTitle:\"Behind hero\",disabledTitle:\"In place\",hidden:p=>p.trigger===\"Off\"},hover:{type:ControlType.Boolean,title:\"Magnify\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"Dock-style swell that follows the cursor.\"},magnify:{type:ControlType.Number,title:\"Peak\",defaultValue:1.35,min:1,max:2.5,step:.05,description:\"Scale of the icon directly under the cursor\",hidden:p=>!p.hover},hoverRange:{type:ControlType.Number,title:\"Falloff\",defaultValue:1.3,min:.2,max:4,step:.1,description:\"How far the swell reaches, in center-icon widths\",hidden:p=>!p.hover},hoverOrigin:{type:ControlType.Enum,title:\"Grow\",defaultValue:\"Bottom\",options:[\"Bottom\",\"Center\"],displaySegmentedControl:true,description:\"Bottom keeps the arc's baseline, like the Dock\",hidden:p=>!p.hover},hoverSpeed:{type:ControlType.Number,title:\"Snap\",defaultValue:.6,min:0,max:1,step:.05,hidden:p=>!p.hover},fit:{type:ControlType.Enum,title:\"Width\",defaultValue:\"Fit\",options:[\"Fixed\",\"Fit\",\"Fill\"],displaySegmentedControl:true,description:\"Fixed keeps Center size in px. Fit caps it so nothing clips. Fill always spans the frame.\"},sideInset:{type:ControlType.Number,title:\"Side inset\",defaultValue:0,min:0,max:.45,step:.01,description:\"Breathing room left and right, as a share of the frame\",hidden:p=>p.fit===\"Fixed\"},minSize:{type:ControlType.Number,title:\"Min icon\",defaultValue:0,min:0,max:400,step:5,unit:\"px\",description:\"Below this the outermost pair is dropped instead of shrinking further. 0 = never drop.\",hidden:p=>p.fit===\"Fixed\"},clip:{type:ControlType.Enum,title:\"Clip\",defaultValue:\"Bottom\",options:[\"Bottom\",\"Frame\",\"None\"],displaySegmentedControl:true,description:\"Bottom crops only the bottom edge and lets bounce overshoot past the sides. Frame clips all four. None clips nothing.\"},bleed:{type:ControlType.Number,title:\"Bleed\",defaultValue:0,min:0,max:200,step:1,unit:\"px\",description:\"Pull the component out through the parent's padding. Set it to the padding value to span edge to edge.\"},mask:{type:ControlType.Number,title:\"Side mask\",defaultValue:0,min:0,max:.49,step:.01,description:\"Fade width at each edge, as a share of the frame\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"IconArc\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./IconArcFooter.map","// Generated by Framer (65a4904)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-UlWVG .framer-styles-preset-14lxaat:not(.rich-text-wrapper), .framer-UlWVG .framer-styles-preset-14lxaat.rich-text-wrapper a { --framer-link-hover-text-color: #ffffff; --framer-link-text-color: rgba(255, 255, 255, 0.5); --framer-link-text-decoration: none; }\"];export const className=\"framer-UlWVG\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (65a4904)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getLoadingLazyAtYPosition,Image as Image1,Link,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const enabledGestures={aFdMokp3L:{hover:true},BLct2v_kf:{hover:true},T4ukEZFtM:{hover:true}};const cycleOrder=[\"T4ukEZFtM\",\"BLct2v_kf\",\"aFdMokp3L\"];const serializationHash=\"framer-MLIFB\";const variantClassNames={aFdMokp3L:\"framer-v-5217sp\",BLct2v_kf:\"framer-v-10dsnyg\",T4ukEZFtM:\"framer-v-h87i53\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const BEOgU9aci=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={Discord:\"aFdMokp3L\",Twitter:\"T4ukEZFtM\",Youtube:\"BLct2v_kf\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,link,width,...props})=>{return{...props,BEOgU9aci:link??props.BEOgU9aci,variant:humanReadableVariantMap[props.variant]??props.variant??\"T4ukEZFtM\"};};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,BEOgU9aci,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"T4ukEZFtM\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"BLct2v_kf-hover\",\"aFdMokp3L-hover\"].includes(gestureVariant))return false;if([\"BLct2v_kf\",\"aFdMokp3L\"].includes(baseVariant))return false;return true;};const isDisplayed1=()=>{if(gestureVariant===\"BLct2v_kf-hover\")return true;if(baseVariant===\"BLct2v_kf\")return true;return false;};const isDisplayed2=()=>{if(gestureVariant===\"aFdMokp3L-hover\")return true;if(baseVariant===\"aFdMokp3L\")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__*/_jsx(Link,{href:BEOgU9aci,motionChild:true,nodeId:\"T4ukEZFtM\",openInNewTab:true,scopeId:\"uQ7GpWE34\",children:/*#__PURE__*/_jsxs(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-h87i53\",className,classNames)} framer-w4hhq6`,\"data-framer-name\":\"Twitter\",layoutDependency:layoutDependency,layoutId:\"T4ukEZFtM\",ref:refBinding,style:{opacity:.5,...style},variants:{\"aFdMokp3L-hover\":{opacity:1},\"BLct2v_kf-hover\":{opacity:1},\"T4ukEZFtM-hover\":{opacity:1}},...addPropertyOverrides({\"aFdMokp3L-hover\":{\"data-framer-name\":undefined},\"BLct2v_kf-hover\":{\"data-framer-name\":undefined},\"T4ukEZFtM-hover\":{\"data-framer-name\":undefined},aFdMokp3L:{\"data-framer-name\":\"Discord\"},BLct2v_kf:{\"data-framer-name\":\"Youtube\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(Image1,{background:{alt:\"Bitrig on X\",fit:\"fill\",intrinsicHeight:64,intrinsicWidth:80,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+((componentViewport?.height||32)*.5000000000000002-8)),pixelHeight:64,pixelWidth:80,sizes:\"20px\",src:\"https://framerusercontent.com/images/2HH97Z4ncv4vUAhNEV6VzC7vyI.png?width=80&height=64\"},className:\"framer-1ysxzqz\",\"data-framer-name\":\"Twitter\",draggable:\"false\",layoutDependency:layoutDependency,layoutId:\"CI4mbT2dy\"}),isDisplayed1()&&/*#__PURE__*/_jsx(Image1,{background:{alt:\"Bitrig on YouTube\",fit:\"fill\",intrinsicHeight:55,intrinsicWidth:77,pixelHeight:55,pixelWidth:77,src:\"https://framerusercontent.com/images/4b20yzkUgEmFmhPbJll5yjaNFA8.png?width=77&height=55\"},className:\"framer-17r8j93\",\"data-framer-name\":\"Youtube\",draggable:\"false\",layoutDependency:layoutDependency,layoutId:\"le4SitQAw\",...addPropertyOverrides({BLct2v_kf:{background:{alt:\"Bitrig on YouTube\",fit:\"fill\",intrinsicHeight:55,intrinsicWidth:77,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+((componentViewport?.height||32)*.5000000000000002-7.25)),pixelHeight:55,pixelWidth:77,sizes:\"20px\",src:\"https://framerusercontent.com/images/4b20yzkUgEmFmhPbJll5yjaNFA8.png?width=77&height=55\"}}},baseVariant,gestureVariant)}),isDisplayed2()&&/*#__PURE__*/_jsx(Image1,{background:{alt:\"Bitrig on Discord\",fit:\"fill\",intrinsicHeight:64,intrinsicWidth:80,pixelHeight:64,pixelWidth:80,src:\"https://framerusercontent.com/images/NrpTo5qV1ItQWIlOILCU8fmcsw.png?width=80&height=64\"},className:\"framer-1o5e9a1\",\"data-framer-name\":\"Discord\",draggable:\"false\",layoutDependency:layoutDependency,layoutId:\"x_dtoNcwB\",...addPropertyOverrides({aFdMokp3L:{background:{alt:\"Bitrig on Discord\",fit:\"fill\",intrinsicHeight:64,intrinsicWidth:80,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+((componentViewport?.height||32)*.5000000000000002-8)),pixelHeight:64,pixelWidth:80,sizes:\"20px\",src:\"https://framerusercontent.com/images/NrpTo5qV1ItQWIlOILCU8fmcsw.png?width=80&height=64\"}}},baseVariant,gestureVariant)})]})})})})});});const css=[\".framer-MLIFB.framer-w4hhq6, .framer-MLIFB .framer-w4hhq6 { display: block; }\",\".framer-MLIFB.framer-h87i53 { cursor: pointer; gap: 10px; height: 32px; position: relative; text-decoration: none; width: 32px; }\",\".framer-MLIFB .framer-1ysxzqz { flex: none; height: 16px; left: calc(50.00000000000002% - 20px / 2); overflow: visible; position: absolute; top: calc(50.00000000000002% - 16px / 2); width: 20px; }\",\".framer-MLIFB .framer-17r8j93 { flex: none; height: 15px; left: calc(50.00000000000002% - 20px / 2); overflow: visible; position: absolute; top: calc(50.00000000000002% - 14.5px / 2); width: 20px; z-index: 1; }\",\".framer-MLIFB .framer-1o5e9a1 { flex: none; height: 16px; left: calc(50.00000000000002% - 20px / 2); overflow: visible; position: absolute; top: calc(50.00000000000002% - 16px / 2); width: 20px; z-index: 1; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 32\n * @framerIntrinsicWidth 32\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"BLct2v_kf\":{\"layout\":[\"fixed\",\"fixed\"]},\"aFdMokp3L\":{\"layout\":[\"fixed\",\"fixed\"]},\"FlUacW33z\":{\"layout\":[\"fixed\",\"fixed\"]},\"XA2MDkn2n\":{\"layout\":[\"fixed\",\"fixed\"]},\"toxTlW7wJ\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"BEOgU9aci\":\"link\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FrameruQ7GpWE34=withCSS(Component,css,\"framer-MLIFB\");export default FrameruQ7GpWE34;FrameruQ7GpWE34.displayName=\"Buttons/Social\";FrameruQ7GpWE34.defaultProps={height:32,width:32};addPropertyControls(FrameruQ7GpWE34,{variant:{options:[\"T4ukEZFtM\",\"BLct2v_kf\",\"aFdMokp3L\"],optionTitles:[\"Twitter\",\"Youtube\",\"Discord\"],title:\"Variant\",type:ControlType.Enum},BEOgU9aci:{title:\"Link\",type:ControlType.Link}});addFonts(FrameruQ7GpWE34,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameruQ7GpWE34\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"BLct2v_kf\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"aFdMokp3L\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"FlUacW33z\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"XA2MDkn2n\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"toxTlW7wJ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerVariables\":\"{\\\"BEOgU9aci\\\":\\\"link\\\"}\",\"framerColorSyntax\":\"true\",\"framerIntrinsicWidth\":\"32\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"32\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./uQ7GpWE34.map","// Generated by Framer (c9b3949)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,FormContainer,FormPlainTextInput,forwardLoader,getFonts,getFontsFromSharedStyle,getLoadingLazyAtYPosition,Image as Image1,Link,RichText,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import IconArc from\"https://framerusercontent.com/modules/wPhZTeEIzehy2JMFa0Cb/Qacb9pNcc2haIMOiwWwR/IconArcFooter.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/YCe7bHgW8ymtNWWdowIO/GvBxLJVx8EJnlQlsXMkk/G75bZfKfY.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/NVBA5eHiMO4kTzTvx02d/IbcJpV6y6iMQYatQaiZJ/QTN7cSWxG.js\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/5Xil8LoZtAADXbmlnKrW/6IqrRpiVGiRiOoMOQcQm/zc0ybcRn0.js\";import Button2 from\"https://framerusercontent.com/modules/9IohpGKoERas5Hr0L63R/ceGyM9Y0y9VOLgHP6VcN/Crr4_1pTv.js\";import ButtonsSocial from\"https://framerusercontent.com/modules/f5lbtcE8qC5qAHxVkfgL/EfaFP4l1JqdhNNt2Q5u4/uQ7GpWE34.js\";const IconArcFonts=getFonts(IconArc);const ButtonsSocialFonts=getFonts(ButtonsSocial);const Button2Fonts=getFonts(Button2);const cycleOrder=[\"mC5VhoRkN\",\"ImSe91gaN\",\"m415yic9w\"];const serializationHash=\"framer-vuOo8\";const variantClassNames={ImSe91gaN:\"framer-v-11lxct\",m415yic9w:\"framer-v-sgbbo5\",mC5VhoRkN:\"framer-v-gvg2yf\"};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 transformTemplate1=(_,t)=>`translateX(-50%) ${t}`;const addImageAlt=(image,alt)=>{if(!image||typeof image!==\"object\"){return;}return{...image,alt};};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const formVariants=(form,variants,currentVariant)=>{switch(form.state){case\"success\":return variants.success??currentVariant;case\"pending\":return variants.pending??currentVariant;case\"error\":return variants.error??currentVariant;case\"incomplete\":return variants.incomplete??currentVariant;default:return currentVariant;}};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:\"mC5VhoRkN\",Phone:\"m415yic9w\",Tablet:\"ImSe91gaN\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"mC5VhoRkN\"};};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:\"mC5VhoRkN\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.footer,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-gvg2yf\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"mC5VhoRkN\",ref:refBinding,style:{backgroundColor:\"rgb(0, 0, 0)\",...style},...addPropertyOverrides({ImSe91gaN:{\"data-framer-name\":\"Tablet\"},m415yic9w:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:1044,intrinsicWidth:1752,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+(componentViewport?.height||514)-515),pixelHeight:2088,pixelWidth:3504,sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?width=3504&height=2088\",srcSet:\"https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?scale-down-to=512&width=3504&height=2088 512w,https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?scale-down-to=1024&width=3504&height=2088 1024w,https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?scale-down-to=2048&width=3504&height=2088 2048w,https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?width=3504&height=2088 3504w\"},className:\"framer-1xj5u3h\",\"data-framer-name\":\"DottedGrid\",draggable:\"false\",fitImageDimension:\"height\",layoutDependency:layoutDependency,layoutId:\"b8SRoKah7\",style:{mask:\"linear-gradient(0deg, rgba(0,0,0,0) 15%, rgba(0,0,0,1) 100%) add\",WebkitMask:\"linear-gradient(0deg, rgba(0,0,0,0) 15%, rgba(0,0,0,1) 100%) add\"},transformTemplate:transformTemplate1,...addPropertyOverrides({ImSe91gaN:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:1044,intrinsicWidth:1752,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0),pixelHeight:2088,pixelWidth:3504,sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?width=3504&height=2088\",srcSet:\"https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?scale-down-to=512&width=3504&height=2088 512w,https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?scale-down-to=1024&width=3504&height=2088 1024w,https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?scale-down-to=2048&width=3504&height=2088 2048w,https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?width=3504&height=2088 3504w\"}},m415yic9w:{background:{alt:\"\",fit:\"fill\",intrinsicHeight:1044,intrinsicWidth:1752,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0),pixelHeight:2088,pixelWidth:3504,sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?width=3504&height=2088\",srcSet:\"https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?scale-down-to=512&width=3504&height=2088 512w,https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?scale-down-to=1024&width=3504&height=2088 1024w,https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?scale-down-to=2048&width=3504&height=2088 2048w,https://framerusercontent.com/images/92hfrIRTeBxYSHs9g5ZWUvuHnow.png?width=3504&height=2088 3504w\"}}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-15rlfan\",\"data-framer-name\":\"Glow\",layoutDependency:layoutDependency,layoutId:\"VaoNGn3di\",style:{background:\"radial-gradient(50% 49.99999999999999% at 50% 49.99999999999999%, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0) 100%)\",borderBottomLeftRadius:\"100%\",borderBottomRightRadius:\"100%\",borderTopLeftRadius:\"100%\",borderTopRightRadius:\"100%\",mask:\"none\",opacity:.1,WebkitMask:\"none\"},variants:{m415yic9w:{mask:\"linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%) add\",WebkitMask:\"linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%) add\"}}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1a9jaq0\",layoutDependency:layoutDependency,layoutId:\"LMip9Ki9s\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-okedg1-container\",isAuthoredByUser:true,layoutDependency:layoutDependency,layoutId:\"LuKTC3dpn-container\",nodeId:\"LuKTC3dpn\",rendersWithMotion:true,scopeId:\"TwgMa8hUr\",children:/*#__PURE__*/_jsx(IconArc,{atlas:addImageAlt({pixelHeight:1536,pixelWidth:1792,src:\"https://framerusercontent.com/images/b4knjVwbui0dJ6MmWqggaylDdg.png?width=1792&height=1536\"},\"\"),bounce:.35,cells:9,centerImage:addImageAlt({pixelHeight:256,pixelWidth:256,src:\"https://framerusercontent.com/images/qHMx29g6aOQwKFVOXfJfws082o.png?width=256&height=256\"},\"\"),clip:\"Bottom\",columns:7,corner:11.9,count:9,curve:.85,drop:.14,fade:0,fit:\"Fit\",fromCenter:true,fromScale:.55,height:\"100%\",hover:false,hoverOrigin:\"Bottom\",hoverRange:1.3,hoverSpeed:.6,id:\"LuKTC3dpn\",images:[],layoutId:\"LuKTC3dpn\",magnify:1.35,margin:0,mask:0,minSize:0,once:true,overlap:.69,revealDelay:0,revealDuration:.7,revealStagger:.08,rows:6,scaleStep:.88,shadow:.19,sideInset:0,size:220,startCell:0,style:{height:\"100%\",width:\"100%\"},threshold:.45,topInset:20,trigger:\"Scroll into view\",trim:0,width:\"100%\",...addPropertyOverrides({ImSe91gaN:{bounce:.45,sideInset:.01},m415yic9w:{size:90}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1nisp2f\",\"data-border\":true,\"data-framer-name\":\"Footer Inner\",layoutDependency:layoutDependency,layoutId:\"dD6HXV9xE\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"rgba(255, 255, 255, 0.15)\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"dashed\",\"--border-top-width\":\"1px\"},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1kr9kt1\",\"data-framer-name\":\"Footer Brand\",layoutDependency:layoutDependency,layoutId:\"fDyZhIXXU\",children:[/*#__PURE__*/_jsx(Link,{href:{webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"IUYE1qGvh\",openInNewTab:false,scopeId:\"TwgMa8hUr\",children:/*#__PURE__*/_jsx(Image1,{as:\"a\",background:{alt:\"Bitrig home\",fit:\"fill\",intrinsicHeight:730,intrinsicWidth:3599,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+56+(((componentViewport?.height||514)-112-438)/2+170+0)+32+0+0),pixelHeight:730,pixelWidth:3599,sizes:\"80px\",src:\"https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?lossless=1&width=3599&height=730\",srcSet:\"https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?scale-down-to=512&lossless=1&width=3599&height=730 512w,https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?scale-down-to=1024&lossless=1&width=3599&height=730 1024w,https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?scale-down-to=2048&lossless=1&width=3599&height=730 2048w,https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?lossless=1&width=3599&height=730 3599w\"},className:\"framer-1f21ajs framer-cho36l\",\"data-framer-name\":\"Footer Logo\",fitImageDimension:\"height\",layoutDependency:layoutDependency,layoutId:\"IUYE1qGvh\",...addPropertyOverrides({ImSe91gaN:{background:{alt:\"Bitrig home\",fit:\"fill\",intrinsicHeight:730,intrinsicWidth:3599,pixelHeight:730,pixelWidth:3599,sizes:\"80px\",src:\"https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?lossless=1&width=3599&height=730\",srcSet:\"https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?scale-down-to=512&lossless=1&width=3599&height=730 512w,https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?scale-down-to=1024&lossless=1&width=3599&height=730 1024w,https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?scale-down-to=2048&lossless=1&width=3599&height=730 2048w,https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?lossless=1&width=3599&height=730 3599w\"}},m415yic9w:{background:{alt:\"Bitrig home\",fit:\"fill\",intrinsicHeight:730,intrinsicWidth:3599,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+12+(((componentViewport?.height||719)-60-719)/2+115+0)+32+0+0+0),pixelHeight:730,pixelWidth:3599,sizes:\"80px\",src:\"https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?lossless=1&width=3599&height=730\",srcSet:\"https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?scale-down-to=512&lossless=1&width=3599&height=730 512w,https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?scale-down-to=1024&lossless=1&width=3599&height=730 1024w,https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?scale-down-to=2048&lossless=1&width=3599&height=730 2048w,https://framerusercontent.com/images/srJIotyQ25oxaMCtzqm89z2zuY4.png?lossless=1&width=3599&height=730 3599w\"}}},baseVariant,gestureVariant)})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-g9fbgz\",layoutDependency:layoutDependency,layoutId:\"v1XOOsMdz\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:32,width:\"32px\",y:(componentViewport?.y||0)+56+(((componentViewport?.height||514)-112-438)/2+170+0)+32+0+168+0,...addPropertyOverrides({ImSe91gaN:{y:undefined},m415yic9w:{y:(componentViewport?.y||0)+12+(((componentViewport?.height||719)-60-719)/2+115+0)+32+0+0+36+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1vzt5gr-container\",layoutDependency:layoutDependency,layoutId:\"Iv2sl2916-container\",nodeId:\"Iv2sl2916\",rendersWithMotion:true,scopeId:\"TwgMa8hUr\",children:/*#__PURE__*/_jsx(ButtonsSocial,{BEOgU9aci:\"https://x.com/BitrigApp\",height:\"100%\",id:\"Iv2sl2916\",layoutId:\"Iv2sl2916\",style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"T4ukEZFtM\"),width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:32,width:\"32px\",y:(componentViewport?.y||0)+56+(((componentViewport?.height||514)-112-438)/2+170+0)+32+0+168+0,...addPropertyOverrides({ImSe91gaN:{y:undefined},m415yic9w:{y:(componentViewport?.y||0)+12+(((componentViewport?.height||719)-60-719)/2+115+0)+32+0+0+36+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-ak9uxw-container\",layoutDependency:layoutDependency,layoutId:\"U7kcle11O-container\",nodeId:\"U7kcle11O\",rendersWithMotion:true,scopeId:\"TwgMa8hUr\",children:/*#__PURE__*/_jsx(ButtonsSocial,{BEOgU9aci:\"https://www.youtube.com/@BitrigApp\",height:\"100%\",id:\"U7kcle11O\",layoutId:\"U7kcle11O\",style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"BLct2v_kf\"),width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:32,width:\"32px\",y:(componentViewport?.y||0)+56+(((componentViewport?.height||514)-112-438)/2+170+0)+32+0+168+0,...addPropertyOverrides({ImSe91gaN:{y:undefined},m415yic9w:{y:(componentViewport?.y||0)+12+(((componentViewport?.height||719)-60-719)/2+115+0)+32+0+0+36+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-blc5rq-container\",layoutDependency:layoutDependency,layoutId:\"j_YgfgQtO-container\",nodeId:\"j_YgfgQtO\",rendersWithMotion:true,scopeId:\"TwgMa8hUr\",children:/*#__PURE__*/_jsx(ButtonsSocial,{BEOgU9aci:\"https://discord.com/invite/Z8VAkUDBaP\",height:\"100%\",id:\"j_YgfgQtO\",layoutId:\"j_YgfgQtO\",style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"aFdMokp3L\"),width:\"100%\"})})})]})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-ykt9r7\",\"data-framer-name\":\"Footer Links\",layoutDependency:layoutDependency,layoutId:\"Z4FkJoKmR\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-av9zzl\",layoutDependency:layoutDependency,layoutId:\"lABrPhIIn\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-mtp4ai\",\"data-framer-name\":\"Product Links\",layoutDependency:layoutDependency,layoutId:\"DT5fzAjEm\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1s6jubp\",\"data-styles-preset\":\"QTN7cSWxG\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:\"Product\"})}),className:\"framer-18lxr8i\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"IWHDG_pWy\",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,{className:\"framer-styles-preset-2oc8j7\",\"data-styles-preset\":\"G75bZfKfY\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"yi7fg3zYT\",openInNewTab:false,relValues:[],scopeId:\"TwgMa8hUr\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-14lxaat\",\"data-styles-preset\":\"zc0ybcRn0\",children:\"Mac\"})})})}),className:\"framer-12u9n63\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"yi7fg3zYT\",verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-2oc8j7\",\"data-styles-preset\":\"G75bZfKfY\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"TRRyfv_d1\"},motionChild:true,nodeId:\"rHnLhVBrf\",openInNewTab:false,relValues:[],scopeId:\"TwgMa8hUr\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-14lxaat\",\"data-styles-preset\":\"zc0ybcRn0\",children:\"Remote\"})})})}),className:\"framer-1ynvfaf\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"rHnLhVBrf\",verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-2oc8j7\",\"data-styles-preset\":\"G75bZfKfY\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"YXYkaBFeK\"},motionChild:true,nodeId:\"uw52l2X0s\",openInNewTab:false,relValues:[],scopeId:\"TwgMa8hUr\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-14lxaat\",\"data-styles-preset\":\"zc0ybcRn0\",children:\"Pricing\"})})})}),className:\"framer-1jmymod\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"uw52l2X0s\",verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-11shhsh\",\"data-framer-name\":\"Product Links\",layoutDependency:layoutDependency,layoutId:\"JhQQoWiaC\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1s6jubp\",\"data-styles-preset\":\"QTN7cSWxG\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:\"Company\"})}),className:\"framer-ship34\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"xG4Od9TYJ\",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,{className:\"framer-styles-preset-2oc8j7\",\"data-styles-preset\":\"G75bZfKfY\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"bCCICkIhb\"},motionChild:true,nodeId:\"OadIza_4n\",openInNewTab:false,relValues:[],scopeId:\"TwgMa8hUr\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-14lxaat\",\"data-styles-preset\":\"zc0ybcRn0\",children:\"Blog\"})})})}),className:\"framer-26zfca\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"OadIza_4n\",verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-2oc8j7\",\"data-styles-preset\":\"G75bZfKfY\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"yMVgEa3P3\"},motionChild:true,nodeId:\"yEQ0CvmVO\",openInNewTab:false,relValues:[],scopeId:\"TwgMa8hUr\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-14lxaat\",\"data-styles-preset\":\"zc0ybcRn0\",children:\"About\"})})})}),className:\"framer-w4fjaq\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"yEQ0CvmVO\",verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-2oc8j7\",\"data-styles-preset\":\"G75bZfKfY\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"bdNRd1rrr\"},motionChild:true,nodeId:\"tO2AnqgRp\",openInNewTab:false,relValues:[],scopeId:\"TwgMa8hUr\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-14lxaat\",\"data-styles-preset\":\"zc0ybcRn0\",children:\"Privacy Policy\"})})})}),className:\"framer-1l6xzr8\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"tO2AnqgRp\",verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-2oc8j7\",\"data-styles-preset\":\"G75bZfKfY\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"RizMztc96\"},motionChild:true,nodeId:\"KGJYpcJ_e\",openInNewTab:false,relValues:[],scopeId:\"TwgMa8hUr\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-14lxaat\",\"data-styles-preset\":\"zc0ybcRn0\",children:\"Terms of Service\"})})})}),className:\"framer-18h72l7\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"KGJYpcJ_e\",verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-2oc8j7\",\"data-styles-preset\":\"G75bZfKfY\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:\"mailto:contact@bitrig.com\",motionChild:true,nodeId:\"tocOAER_M\",openInNewTab:false,relValues:[],scopeId:\"TwgMa8hUr\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-14lxaat\",\"data-styles-preset\":\"zc0ybcRn0\",children:\"Contact Us\"})})})}),className:\"framer-1a3j5vc\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"tocOAER_M\",verticalAlignment:\"top\",withExternalLayout:true})]})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1mr2tt7\",\"data-framer-name\":\"Product Links\",layoutDependency:layoutDependency,layoutId:\"QeRTaEKuJ\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1s6jubp\",\"data-styles-preset\":\"QTN7cSWxG\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:\"Newsletter\"})}),className:\"framer-hjed4l\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"KJLFxHLRa\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(FormContainer,{action:\"https://api.framer.com/forms/v1/forms/3dbbf1f8-3976-494c-bd01-6ee626ca17f5/submit\",className:\"framer-jvydf0\",layoutDependency:layoutDependency,layoutId:\"uzKj4aqxz\",nodeId:\"uzKj4aqxz\",redirectUrl:{webPageId:\"h27Wj58jJ\"},submitTrackingId:\"\",children:formState=>/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(motion.label,{className:\"framer-1w86rtv\",layoutDependency:layoutDependency,layoutId:\"fqWLr8A6O\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-2oc8j7\",\"data-styles-preset\":\"G75bZfKfY\",dir:\"auto\",children:\"Get all the latest news, and product updates from Bitrig.\"})}),className:\"framer-1tzbagi\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Qjjisoc2Z\",verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({m415yic9w:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsxs(motion.p,{className:\"framer-styles-preset-2oc8j7\",\"data-styles-preset\":\"G75bZfKfY\",dir:\"auto\",children:[\"Get all the latest news, and \",/*#__PURE__*/_jsx(motion.br,{}),\"product updates from Bitrig.\"]})})}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsx(FormPlainTextInput,{className:\"framer-1jdt7yi\",inputName:\"Email\",layoutDependency:layoutDependency,layoutId:\"HGQPwzF6z\",placeholder:\"janeappleseed@me.com\",required:true,style:{\"--framer-input-background\":\"rgba(187, 187, 187, 0.15)\",\"--framer-input-border-bottom-width\":\"1px\",\"--framer-input-border-color\":\"rgba(136, 136, 136, 0.1)\",\"--framer-input-border-left-width\":\"1px\",\"--framer-input-border-radius-bottom-left\":\"32px\",\"--framer-input-border-radius-bottom-right\":\"32px\",\"--framer-input-border-radius-top-left\":\"32px\",\"--framer-input-border-radius-top-right\":\"32px\",\"--framer-input-border-right-width\":\"1px\",\"--framer-input-border-style\":\"solid\",\"--framer-input-border-top-width\":\"1px\",\"--framer-input-font-color\":\"rgb(153, 153, 153)\",\"--framer-input-icon-mask-image\":\"none\",\"--framer-input-placeholder-color\":\"rgb(153, 153, 153)\"},type:\"email\"})]}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:44,width:\"280px\",y:(componentViewport?.y||0)+56+(((componentViewport?.height||514)-112-438)/2+170+0)+32+0+0+30+0+162,...addPropertyOverrides({ImSe91gaN:{y:undefined},m415yic9w:{height:48,width:`min(${componentViewport?.width||\"100vw\"} - 48px, 1080px)`,y:(componentViewport?.y||0)+12+(((componentViewport?.height||719)-60-719)/2+115+0)+32+112+0+218+0+30+0+164}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-cfvk6l-container\",\"data-framer-name\":\"Button\",layoutDependency:layoutDependency,layoutId:\"flMYlYi4V-container\",name:\"Button\",nodeId:\"flMYlYi4V\",rendersWithMotion:true,scopeId:\"TwgMa8hUr\",children:/*#__PURE__*/_jsx(Button2,{height:\"100%\",id:\"flMYlYi4V\",layoutId:\"flMYlYi4V\",name:\"Button\",OF1eTiKJ4:true,style:{height:\"100%\",width:\"100%\"},type:\"submit\",variant:formVariants(formState,{pending:\"uQq8wXuAS\",success:\"FaS9uWIB2\"},matchVariant(\"Bs3TPljbp\")),width:\"100%\"})})})]})})]})]})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-p4gewg\",\"data-framer-name\":\"Top Divider\",layoutDependency:layoutDependency,layoutId:\"vrKeXlwD8\",style:{background:\"radial-gradient(50% 50% at 50% 50%, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0) 100%)\",opacity:.2}})]})})})});});const css=[\".framer-vuOo8.framer-cho36l, .framer-vuOo8 .framer-cho36l { display: block; }\",\".framer-vuOo8.framer-gvg2yf { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 56px 24px 56px 24px; position: relative; width: 1200px; }\",\".framer-vuOo8 .framer-1xj5u3h { -webkit-user-select: none; bottom: -200px; flex: none; height: auto; left: 50%; overflow: visible; pointer-events: none; position: absolute; user-select: none; width: 100%; z-index: 1; }\",\".framer-vuOo8 .framer-15rlfan { -webkit-user-select: none; bottom: -1325px; flex: none; left: calc(45.83333333333336% - 211.75000000000003% / 2); pointer-events: none; position: absolute; top: 0px; user-select: none; width: 212%; z-index: 0; }\",\".framer-vuOo8 .framer-1a9jaq0 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-vuOo8 .framer-okedg1-container { flex: none; height: 170px; position: relative; width: 100%; }\",\".framer-vuOo8 .framer-1nisp2f { 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; max-width: 1080px; padding: 32px 0px 0px 0px; position: relative; width: 1080px; }\",\".framer-vuOo8 .framer-1kr9kt1 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; height: 200px; justify-content: space-between; padding: 0px; position: relative; width: min-content; }\",\".framer-vuOo8 .framer-1f21ajs { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: auto; justify-content: center; padding: 0px; position: relative; text-decoration: none; width: 80px; }\",\".framer-vuOo8 .framer-g9fbgz { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-vuOo8 .framer-1vzt5gr-container, .framer-vuOo8 .framer-ak9uxw-container, .framer-vuOo8 .framer-blc5rq-container { flex: none; height: 32px; position: relative; width: 32px; }\",\".framer-vuOo8 .framer-ykt9r7 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 56px; height: min-content; justify-content: flex-start; padding: 0px; position: relative; width: min-content; }\",\".framer-vuOo8 .framer-av9zzl { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 56px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-vuOo8 .framer-mtp4ai, .framer-vuOo8 .framer-11shhsh, .framer-vuOo8 .framer-1mr2tt7 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; padding: 0px; position: relative; width: min-content; }\",\".framer-vuOo8 .framer-18lxr8i, .framer-vuOo8 .framer-12u9n63, .framer-vuOo8 .framer-1ynvfaf, .framer-vuOo8 .framer-1jmymod, .framer-vuOo8 .framer-ship34, .framer-vuOo8 .framer-26zfca, .framer-vuOo8 .framer-w4fjaq, .framer-vuOo8 .framer-1l6xzr8, .framer-vuOo8 .framer-18h72l7, .framer-vuOo8 .framer-1a3j5vc, .framer-vuOo8 .framer-hjed4l { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-vuOo8 .framer-jvydf0 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 0px; position: relative; width: 280px; }\",\".framer-vuOo8 .framer-1w86rtv { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: flex-start; padding: 0px; position: relative; width: 100%; }\",\".framer-vuOo8 .framer-1tzbagi { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",'.framer-vuOo8 .framer-1jdt7yi { --framer-input-focused-border-color: rgba(245, 245, 245, 0.17); --framer-input-focused-border-style: solid; --framer-input-focused-border-width: 2px; --framer-input-font-family: \"ABC Favorit Variable Variable Regular\"; --framer-input-font-letter-spacing: 0em; --framer-input-font-line-height: 1.2em; --framer-input-font-size: 14px; --framer-input-font-weight: 400; --framer-input-padding: 12px; flex: none; height: 40px; position: relative; width: 100%; }',\".framer-vuOo8 .framer-cfvk6l-container { flex: none; height: 44px; position: relative; width: 100%; z-index: 1; }\",\".framer-vuOo8 .framer-p4gewg { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 1px; justify-content: center; left: calc(48.68055555555558% - min(1200px, 77.98611111111111%) / 2); max-width: 1200px; overflow: hidden; padding: 0px; position: absolute; top: 0px; width: 78%; z-index: 1; }\",\".framer-vuOo8.framer-v-11lxct.framer-gvg2yf { padding: 24px 24px 56px 24px; width: 700px; }\",\".framer-vuOo8.framer-v-11lxct .framer-1xj5u3h, .framer-vuOo8.framer-v-sgbbo5 .framer-1xj5u3h { bottom: unset; top: 0px; }\",\".framer-vuOo8.framer-v-11lxct .framer-okedg1-container { height: 199px; }\",\".framer-vuOo8.framer-v-11lxct .framer-1nisp2f, .framer-vuOo8.framer-v-sgbbo5 .framer-1mr2tt7 { width: 100%; }\",\".framer-vuOo8.framer-v-11lxct .framer-1kr9kt1 { align-self: stretch; height: auto; }\",\".framer-vuOo8.framer-v-11lxct .framer-ykt9r7 { flex-wrap: wrap; }\",\".framer-vuOo8.framer-v-sgbbo5.framer-gvg2yf { padding: 12px 24px 48px 24px; width: 390px; }\",\".framer-vuOo8.framer-v-sgbbo5 .framer-15rlfan { bottom: unset; height: 100%; left: calc(50.00000000000002% - 100% / 2); top: calc(49.93834771886562% - 100% / 2); width: 100%; }\",\".framer-vuOo8.framer-v-sgbbo5 .framer-okedg1-container { height: 115px; }\",\".framer-vuOo8.framer-v-sgbbo5 .framer-1nisp2f { flex-direction: column; gap: 44px; justify-content: flex-start; width: 100%; }\",\".framer-vuOo8.framer-v-sgbbo5 .framer-1kr9kt1 { gap: 20px; height: min-content; justify-content: flex-start; }\",\".framer-vuOo8.framer-v-sgbbo5 .framer-ykt9r7 { flex-direction: column; gap: 48px 56px; width: 100%; }\",\".framer-vuOo8.framer-v-sgbbo5 .framer-jvydf0 { align-content: flex-end; align-items: flex-end; gap: 8px; overflow: visible; width: 100%; }\",\".framer-vuOo8.framer-v-sgbbo5 .framer-1jdt7yi { --framer-input-font-size: 16px; height: 44px; }\",\".framer-vuOo8.framer-v-sgbbo5 .framer-cfvk6l-container { height: 48px; }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css,'.framer-vuOo8[data-border=\"true\"]::after, .framer-vuOo8 [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 514\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"ImSe91gaN\":{\"layout\":[\"fixed\",\"auto\"]},\"m415yic9w\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerTwgMa8hUr=withCSS(Component,css,\"framer-vuOo8\");export default FramerTwgMa8hUr;FramerTwgMa8hUr.displayName=\"Footer\";FramerTwgMa8hUr.defaultProps={height:514,width:1200};addPropertyControls(FramerTwgMa8hUr,{variant:{options:[\"mC5VhoRkN\",\"ImSe91gaN\",\"m415yic9w\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum}});const variationAxes=[{defaultValue:400,maxValue:1e3,minValue:300,name:\"Weight\",tag:\"wght\"},{defaultValue:0,maxValue:0,minValue:-12,name:\"Slant\",tag:\"slnt\"}];addFonts(FramerTwgMa8hUr,[{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:\"ABC Favorit Variable Variable Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"ABC Favorit Variable\",url:\"https://framerusercontent.com/assets/J1jxf59pLsDwYm2sj21dYFzXg4Y.woff2\",variationAxes,weight:\"400\"}]},...IconArcFonts,...ButtonsSocialFonts,...Button2Fonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts)],{supportsExplicitInterCodegen:true});FramerTwgMa8hUr.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(ButtonsSocial,{},context),forwardLoader(Button2,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerTwgMa8hUr\",\"slots\":[],\"annotations\":{\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"ImSe91gaN\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"m415yic9w\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicHeight\":\"514\",\"framerImmutableVariables\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerColorSyntax\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TwgMa8hUr.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{motion,AnimatePresence,useReducedMotion}from\"framer-motion\";const DEFAULT_EDGE={hairline:1,ringDark:.06,ringLight:.45,highlight:.65,shade:.05,elevation:1,lift:12};const DEFAULT_PILL_EDGE={hairline:1,ringDark:.05,ringLight:.9,highlight:.95,shade:.04,elevation:1.35,lift:8};function edgeShadow(e,inner){const h=e.hairline??1;const el=e.elevation??1;const lift=e.lift??10;return[// Rim light along the top, shade along the bottom — the two cues that\n// read as a thick, refracting edge rather than a painted outline.\n`inset 0 ${h}px 0 rgba(255,255,255,${e.highlight})`,`inset 0 -${h}px 0 rgba(0,0,0,${e.shade})`,`inset 0 0 0 ${h}px rgba(255,255,255,${e.ringLight})`,// Hairline ring: definition on pale backgrounds, invisible on dark.\n`0 0 0 ${h}px rgba(0,0,0,${e.ringDark})`,`0 1px 2px -1px rgba(0,0,0,${(.06*el).toFixed(3)})`,`0 2px 4px 0 rgba(0,0,0,${(.04*el).toFixed(3)})`,`0 ${lift}px ${Math.round(lift*2.2)}px -${Math.round(lift*.6)}px rgba(0,0,0,${((inner?.14:.1)*el).toFixed(3)})`].join(\", \");}const DEFAULT_SPECULAR={enabled:true,angle:145,width:1.5,intensity:.9,secondary:.35,spread:55};const DEFAULT_PILL_SPECULAR={enabled:true,angle:145,width:1,intensity:1,secondary:.45,spread:60};function specularGradient(sp){const a=sp.angle;const w=Math.max(1,sp.spread);const hi=sp.intensity;const lo=sp.secondary;// Two opposing hot spots — where a curved edge would catch the key light\n// and its bounce — falling off to nothing along the sides.\nreturn`conic-gradient(from ${a}deg,\n        rgba(255,255,255,${hi}) 0deg,\n        rgba(255,255,255,0) ${w}deg,\n        rgba(255,255,255,0) ${180-w}deg,\n        rgba(255,255,255,${lo}) 180deg,\n        rgba(255,255,255,0) ${180+w}deg,\n        rgba(255,255,255,0) ${360-w}deg,\n        rgba(255,255,255,${hi}) 360deg)`;}const DEFAULT_SEGMENT_STYLE={background:\"rgba(255,255,255,0.72)\",height:36,// \"box\" + zero padding: the pill is exactly the nav item's own frame, so\n// the breathing room comes from the item's padding in Framer. This is what\n// the playground uses and what keeps the pill concentric with the bar.\nfit:\"box\",padLeft:0,padRight:0,edgeSnap:true,edgeInsetMode:\"auto\",edgeInset:4,offsetY:0,springMode:\"time\",duration:.32,bounce:.15,edge:DEFAULT_PILL_EDGE,specular:DEFAULT_PILL_SPECULAR,stiffness:440,damping:34,mass:.72};/**\n * The Font control's object rendered as CSS declarations, all forced.\n *\n * Slotted Framer text carries its own family, size, weight, tracking and\n * colour, and some of those actively fight the component: Framer pins the\n * variable axis with font-variation-settings, which silently overrides\n * font-weight. Rather than negotiate with each of those per layer, the\n * component takes the typography over wholesale, so the nav items only supply\n * their text and their link.\n */function forcedFontCSS(f){if(!f)return\"\";const unit=v=>typeof v===\"number\"?`${v}px`:v;const out=[];if(f.fontFamily)out.push(`font-family: ${f.fontFamily} !important;`);if(f.fontSize!=null)out.push(`font-size: ${unit(f.fontSize)} !important;`);if(f.letterSpacing!=null)out.push(`letter-spacing: ${unit(f.letterSpacing)} !important;`);if(f.lineHeight!=null)out.push(`line-height: ${f.lineHeight} !important;`);// Always emitted, even when unset: a slotted layer can be italic, and\n// \"not specified\" must mean \"normal\", not \"whatever the slot brought\".\nout.push(`font-style: ${f.fontStyle||\"normal\"} !important;`);return out.join(\"\\n                    \");}const DEFAULT_LABELS={enabled:true,color:\"rgba(0,0,0,0.56)\",hoverColor:\"rgba(0,0,0,0.78)\",activeColor:\"rgba(0,0,0,0.92)\",takeover:true,idleWeight:500,activeWeight:600,reserve:true,duration:.22};const DEFAULT_MOBILE={enabled:true,force:\"auto\",breakpoint:810,gap:8,padding:8,rowGap:2,rowPadX:16,rowPadY:12,burgerSize:18,burgerColor:\"#3A383B\"};export default function ScrollRevealTabBarHeader(props){const{logo,mobile,targetID,noAnchor,revealOffset,logoRevealDelay,revealDuration,leftItems,rightItems,ctaItem,logoItem,forceActive,samePage,snapOnNavigate,entrance,homePath,entranceY,entranceFade,entranceDelay,entranceSpring,logoSize,logoGapLeft,logoGapRight,linkGap,ctaGap,paddingLeft,paddingRight,cornerRadius,smoothing,ctaMatchPill,clipContent,background,textColor,segment,edge,specular,labels,blur,glassSaturation,glassContrast,glassBrightness,glassHighlight,font,style}=props;const isStaticRenderer=useIsStaticRenderer();const reduceMotion=useReducedMotion();const segmentStyle={...DEFAULT_SEGMENT_STYLE,...segment};const edgeStyle={...DEFAULT_EDGE,...edge};const pillEdgeStyle={...DEFAULT_PILL_EDGE,...segmentStyle.edge};const labelStyle={...DEFAULT_LABELS,...labels};const specStyle={...DEFAULT_SPECULAR,...specular};const pillSpecStyle={...DEFAULT_PILL_SPECULAR,...segmentStyle.specular};const mob={...DEFAULT_MOBILE,...mobile};// Declared up here because the menu's outside-click handler closes over it.\nconst navRef=React.useRef(null);const instanceClass=\"srtb-\"+React.useId().replace(/[^a-zA-Z0-9_-]/g,\"\");// Corner smoothing, expressed the way Figma does it: a 0-100 percentage\n// rather than the raw superellipse exponent, because nobody thinks in\n// exponents. 0 = a circular arc (what border-radius already gives you),\n// 100 = superellipse(2), the iOS squircle. Figma's own \"iOS\" preset is\n// 60%, which lands on superellipse(1.6).\n//\n// Two things worth knowing before reaching for this:\n//  - corner-shape does nothing unless border-radius is non-zero, and at a\n//    radius >= half the short side the shape is already a capsule, so\n//    smoothing can only make it SQUARER. On a pill this is a taste knob,\n//    not a fidelity fix.\n//  - Chrome/Edge 139+ only. Safari and Firefox drop the declaration\n//    entirely and render the plain circular arc, which is the correct\n//    fallback: the layout, shadows and blur are untouched either way.\nconst cornerShape=smoothing>0?`superellipse(${(1+smoothing/100).toFixed(3)})`:null;const locationKey=useLocationKey();const[logoVisible,setLogoVisible]=React.useState(isStaticRenderer);// matchMedia rather than a resize listener: it fires only when the query\n// actually flips, instead of on every pixel of a drag.\nconst[isNarrow,setIsNarrow]=React.useState(false);React.useEffect(()=>{if(typeof window===\"undefined\"||!window.matchMedia)return;const mq=window.matchMedia(`(max-width: ${mob.breakpoint-1}px)`);const update=()=>setIsNarrow(mq.matches);update();mq.addEventListener?.(\"change\",update);return()=>mq.removeEventListener?.(\"change\",update);},[mob.breakpoint]);// `force` exists so the mobile layout can be previewed on the Framer canvas\n// and in the playground, where the window is wide even though the frame is\n// narrow. On a real page it stays \"auto\" and the media query decides.\nconst forced=mob.force===\"mobile\"?true:mob.force===\"desktop\"?false:null;const isMobile=mob.enabled!==false&&(forced!==null?forced:isNarrow&&!isStaticRenderer);const[menuOpen,setMenuOpen]=React.useState(false);// Close on navigation, on Escape, and when the layout stops being narrow.\nReact.useEffect(()=>setMenuOpen(false),[locationKey]);React.useEffect(()=>{if(!isMobile)setMenuOpen(false);},[isMobile]);React.useEffect(()=>{if(!menuOpen)return;const onKey=e=>{if(e.key===\"Escape\")setMenuOpen(false);};const onDown=e=>{const nav=navRef.current;if(nav&&!nav.contains(e.target))setMenuOpen(false);};window.addEventListener(\"keydown\",onKey);window.addEventListener(\"pointerdown\",onDown);return()=>{window.removeEventListener(\"keydown\",onKey);window.removeEventListener(\"pointerdown\",onDown);};},[menuOpen]);// The ref goes on the plain <nav>, not on the motion.div. A ref passed to\n// motion.div does not reach the DOM node in Framer's runtime, which silently\n// made every measurement bail out at its first line. <nav> is an ordinary\n// element, so this is dependable; the bar is simply its first child.\nconst leftGroupRef=React.useRef(null);const rightGroupRef=React.useRef(null);// Queried by attribute, not firstElementChild: the label <style> tag is\n// also a child of <nav>, and position must not be load-bearing.\nconst getBar=React.useCallback(()=>(navRef.current?.querySelector(\"[data-nav-bar]\"))||null,[]);const left=React.Children.toArray(leftItems||[]);const right=React.Children.toArray(rightItems||[]);const cta=React.Children.toArray(ctaItem||[]);// Deliberately NOT tagged as a nav item: the logo usually links to the home\n// page, and if the pill could see it, landing on home would give two\n// candidates for \"active\".\nconst logoNode=React.Children.toArray(logoItem||[])[0];const totalItems=left.length+right.length+cta.length;/* ---------------- entrance ---------------- */// Decided once, on the first client render. With client-side routing this\n// component mounts once per document load, so \"home\" means: only play when\n// the visitor's entry page was the home page.\nconst[playEntrance]=React.useState(()=>{if(isStaticRenderer||entrance===\"none\")return false;if(typeof window===\"undefined\")return false;if(entrance===\"first\")return true;return normalizePath(window.location.pathname)===normalizePath(homePath);});/* ---------------- logo reveal ---------------- */React.useEffect(()=>{if(isStaticRenderer){setLogoVisible(true);return;}let frame=0;const timers=[];const update=()=>{frame=0;const target=targetID?document.getElementById(targetID):null;if(target){setLogoVisible(target.getBoundingClientRect().bottom<=revealOffset);return;}if(noAnchor===\"shown\")setLogoVisible(true);else if(noAnchor===\"hidden\")setLogoVisible(false);else setLogoVisible(window.scrollY>revealOffset);};const requestUpdate=()=>{if(!frame)frame=window.requestAnimationFrame(update);};update();timers.push(window.setTimeout(update,60),window.setTimeout(update,250));window.addEventListener(\"scroll\",requestUpdate,{passive:true});window.addEventListener(\"resize\",requestUpdate);return()=>{window.removeEventListener(\"scroll\",requestUpdate);window.removeEventListener(\"resize\",requestUpdate);timers.forEach(id=>window.clearTimeout(id));if(frame)window.cancelAnimationFrame(frame);};},[isStaticRenderer,targetID,revealOffset,noAnchor,locationKey]);/* ---------------- bar centring ---------------- */const[sideWidths,setSideWidths]=React.useState({left:0,right:0});const collapsedLogoGap=linkGap/2;const activeLogoGapLeft=logoVisible?logoGapLeft:collapsedLogoGap;const activeLogoGapRight=logoVisible?logoGapRight:collapsedLogoGap;const pillOffset=(sideWidths.right+paddingRight+activeLogoGapRight-sideWidths.left-paddingLeft-activeLogoGapLeft)/2;// The offset changes for two reasons and only one deserves motion: the logo\n// revealing (yes) versus re-measurement from fonts loading or a resize (no).\nconst lastLogoVisibleRef=React.useRef(logoVisible);const revealToggledRef=React.useRef(false);if(lastLogoVisibleRef.current!==logoVisible){lastLogoVisibleRef.current=logoVisible;revealToggledRef.current=true;}const animateX=revealToggledRef.current;// A page change is a jump cut, not a transition. Arriving somewhere new,\n// the header should simply already be in the right state — logo collapsed,\n// bar at its new width. Animating that reads as the header flying around\n// to catch up with a navigation that already happened. The pill is\n// deliberately excluded: its movement between tabs is the one thing here\n// that should animate.\nconst[routeSnap,setRouteSnap]=React.useState(false);const firstLocationRef=React.useRef(true);React.useEffect(()=>{if(firstLocationRef.current){firstLocationRef.current=false;return;}if(snapOnNavigate===false)return;setRouteSnap(true);const id=window.setTimeout(()=>setRouteSnap(false),350);return()=>window.clearTimeout(id);},[locationKey,snapOnNavigate]);React.useLayoutEffect(()=>{const l=leftGroupRef.current;const r=rightGroupRef.current;if(!l||!r)return;const updateWidths=()=>{const next={left:l.offsetWidth,right:r.offsetWidth};setSideWidths(cur=>cur.left===next.left&&cur.right===next.right?cur:next);};updateWidths();const observer=new ResizeObserver(updateWidths);observer.observe(l);observer.observe(r);return()=>observer.disconnect();},[leftItems,rightItems,ctaItem,font,linkGap]);/* ---------------- active pill ---------------- */const[pill,setPill]=React.useState(null);// A move is identified by a counter, not a boolean. Measurement re-runs\n// constantly — the ResizeObserver fires whenever the active label changes\n// weight and the bar's width shifts — and a boolean flag got cleared by\n// those re-runs mid-flight, replacing the in-flight spring with a\n// duration-0 jump to the target.\nconst moveIdRef=React.useRef(0);const[settledMove,setSettledMove]=React.useState(0);const activeHrefRef=React.useRef(null);const[ready,setReady]=React.useState(false);// Which logical item is current, independent of where it is rendered. The\n// mobile panel needs this because its rows are opaque Framer nodes — there\n// is no way to ask a slot what it links to without reading the DOM.\nconst[activeIndex,setActiveIndex]=React.useState(-1);// Framer's router takes ~500ms to commit a URL. Waiting for it means the\n// pill and the label weight both sit still for half a second after the tap,\n// which reads as lag. Claim the tapped item immediately and let the URL\n// confirm it afterwards.\nconst[optimistic,setOptimistic]=React.useState(-1);const measure=React.useCallback(()=>{const bar=getBar();if(!bar)return;let activeEl=null;let activeHref=null;// Queried from the DOM rather than held in a refs array: slotted Framer\n// content mounts on its own schedule, and a stale ref would silently\n// hide the pill.\nconst items=Array.from(bar.querySelectorAll(\"[data-nav-item]\"));let domIndex=-1;let logicalIndex=-1;items.forEach((el,i)=>{if(activeEl)return;const anchor=el.querySelector(\"a[href]\");const href=anchor?.getAttribute(\"href\");const idx=Number(el.dataset.navIndex??-1);// Force Active pins a tab regardless of the URL — useful on the\n// Framer canvas, where there is no route to match against.\nconst claimed=forceActive>=0?forceActive:optimistic;const hit=claimed>=0?idx===claimed:!!href&&linkMatchesLocation(href);if(hit){activeEl=el;activeHref=href;domIndex=i;logicalIndex=Number(el.dataset.navIndex??-1);}});setActiveIndex(logicalIndex);if(!activeEl){activeHrefRef.current=null;setPill(p=>p?{...p,visible:false}:null);return;}const activeIndex=domIndex;// Identity is the item, not its URL. Comparing hrefs meant two tabs\n// pointing at the same place — or any setup where the href does not\n// change — never registered as a move, so the pill teleported.\nconst key=logicalIndex>=0?`#${logicalIndex}`:activeHref;if(activeHrefRef.current!==key)moveIdRef.current+=1;activeHrefRef.current=key;const br=bar.getBoundingClientRect();let ir=activeEl.getBoundingClientRect();// \"content\" measures the rendered text instead of the frame that holds\n// it. Padding inside an item — say extra padding-left on the first one\n// to clear the bar's edge — makes the label sit off-centre in its own\n// box, and a pill wrapped around that box inherits the lopsidedness.\n// A Range over the node's contents ignores padding entirely.\nif(segmentStyle.fit===\"content\"){try{const range=document.createRange();range.selectNodeContents(activeEl);const cr=range.getBoundingClientRect();if(cr.width>0&&cr.height>0)ir=cr;}catch{}}const padL=segmentStyle.padLeft??segmentStyle.padX??10;const padR=segmentStyle.padRight??segmentStyle.padX??10;const h=segmentStyle.height;const yInset=(br.height-h)/2;// The pill is absolutely positioned with left/top 0, which resolves to\n// the bar's PADDING box — inside its border. Every figure below is\n// measured from the bar's BORDER box, so the border width has to come\n// back off at the end or the pill sits 1px right and 1px low, showing\n// up as a 2px asymmetry on each axis.\nconst barCS=getComputedStyle(bar);const borderL=parseFloat(barCS.borderLeftWidth)||0;const borderT=parseFloat(barCS.borderTopWidth)||0;let x=ir.left-br.left-padL;let width=ir.width+padL+padR;// Edge snapping. For the first or last item, park the pill's outer edge\n// at a fixed inset from the bar instead of padding it symmetrically,\n// then stretch the inner edge until the label sits dead centre. The\n// default inset matches the vertical one, so the pill nests inside the\n// bar concentrically — even gap all the way round the corner.\nif(segmentStyle.edgeSnap!==false){const isFirst=activeIndex===0;const isLast=activeIndex===items.length-1;const inset=segmentStyle.edgeInsetMode===\"custom\"?segmentStyle.edgeInset:Math.max(0,yInset);const centre=ir.left-br.left+ir.width/2;if(isFirst){x=inset;width=Math.max(width,2*(centre-x));}else if(isLast){const rightEdge=br.width-inset;width=Math.max(width,2*(rightEdge-centre));x=rightEdge-width;}}// Vertically, centre on the ACTIVE ITEM rather than on the bar. The\n// grid row is sized by its tallest child (the CTA), so if that child is\n// taller than the bar's content box the row overflows and every label\n// shifts. Tracking the item means the pill can never disagree with the\n// label it is highlighting, whatever the row does.\nconst itemBox=activeEl.getBoundingClientRect();const itemCentreY=itemBox.top+itemBox.height/2;const y=itemCentreY-br.top-h/2-borderT+(segmentStyle.offsetY||0);setPill({x:x-borderL,y,width,height:h,visible:true,move:moveIdRef.current});},[getBar,segmentStyle.height,segmentStyle.fit,segmentStyle.padLeft,segmentStyle.padRight,segmentStyle.padX,segmentStyle.edgeSnap,segmentStyle.edgeInsetMode,segmentStyle.edgeInset,segmentStyle.offsetY,forceActive,optimistic]);// Re-measure whenever the route changes or the bar reflows.\nReact.useLayoutEffect(()=>{measure();},[measure,locationKey,totalItems,sideWidths,isMobile,menuOpen]);React.useEffect(()=>{// Registered unconditionally — never behind a ref guard, or one null\n// ref takes the listeners down with it.\nwindow.addEventListener(\"resize\",measure);const fonts=document.fonts;if(fonts?.ready)fonts.ready.then(()=>measure()).catch(()=>{});// Slotted content can mount a frame or two after this effect.\nconst timers=[window.setTimeout(measure,60),window.setTimeout(measure,250),window.setTimeout(measure,800)];const bar=getBar();const observer=bar?new ResizeObserver(measure):null;if(bar&&observer)observer.observe(bar);return()=>{window.removeEventListener(\"resize\",measure);timers.forEach(id=>window.clearTimeout(id));observer?.disconnect();};},[measure,getBar,totalItems]);// While the logo slot animates open or shut, the right-hand group slides.\n// Track it for the length of that animation instead of measuring forever.\nReact.useEffect(()=>{if(!revealToggledRef.current)return;let raf=0;const started=Date.now();const follow=()=>{measure();if(Date.now()-started<900)raf=requestAnimationFrame(follow);};raf=requestAnimationFrame(follow);return()=>cancelAnimationFrame(raf);},[logoVisible,measure]);React.useEffect(()=>{const id=requestAnimationFrame(()=>setReady(true));// Fallback: rAF never fires in a background tab, and without this the\n// header would stay hidden for a page opened in one.\nconst timer=window.setTimeout(()=>setReady(true),400);return()=>{cancelAnimationFrame(id);window.clearTimeout(timer);};},[]);// Nothing about the bar's resting position is knowable on the server: the\n// x offset that centres the logo comes from measured group widths, and the\n// pill is measured from the DOM. So the server-rendered markup paints at\n// x = 0 with no pill, and hydration then snaps it into place — that is the\n// jump you see on reload. Staying hidden until the first measurement means\n// it is only ever painted once, already correct.\nconst[entered,setEntered]=React.useState(false);React.useEffect(()=>{if(!ready)return;setEntered(true);setSettledMove(moveIdRef.current);},[ready]);const shown=ready||isStaticRenderer;const atRest=!playEntrance||entered;// Load the page already scrolled past the hero and the correct state is\n// \"logo out\" — but that is where the header should START, not somewhere it\n// travels to. Reaching it by animation means watching the page assemble\n// itself for something the visitor never triggered. The window also covers\n// browsers that restore scroll position slightly after hydration, which\n// would otherwise flip the logo out a beat late, with a spring.\nconst[bootSnap,setBootSnap]=React.useState(true);React.useEffect(()=>{const id=window.setTimeout(()=>setBootSnap(false),400);return()=>window.clearTimeout(id);},[]);// Reveal-driven motion is suppressed on arrival and on navigation, and\n// allowed only when the visitor is actually scrolling.\nconst snapNow=routeSnap||bootSnap;// Every label is sized to the width it will have WHEN ACTIVE, and that\n// width is locked in. Otherwise selecting a tab makes its label bolder and\n// therefore wider, which changes the group widths, which changes the offset\n// that centres the logo — and the whole bar visibly slides. Measured at 6px\n// of travel between Mac and Pricing before this.\nReact.useLayoutEffect(()=>{if(labelStyle.enabled===false||labelStyle.reserve===false)return;const nav=navRef.current;const bar=getBar();if(!nav||!bar)return;const items=Array.from(bar.querySelectorAll(\"[data-nav-item]:not([data-nav-cta])\"));if(!items.length)return;const apply=()=>{// Release, force every label to the active weight, read, restore.\n// All inside one layout effect, so nothing is painted mid-way.\nitems.forEach(el=>el.style.minWidth=\"\");nav.classList.add(\"srtb-measuring\");const widths=items.map(el=>el.getBoundingClientRect().width);nav.classList.remove(\"srtb-measuring\");items.forEach((el,i)=>{el.style.minWidth=`${Math.ceil(widths[i]*100)/100}px`;});};apply();const fonts=document.fonts;if(fonts?.ready)fonts.ready.then(apply).catch(()=>{});return()=>items.forEach(el=>el.style.minWidth=\"\");},[labelStyle.enabled,labelStyle.reserve,labelStyle.activeWeight,totalItems,isMobile,menuOpen,getBar]);React.useEffect(()=>{setOptimistic(-1);},[locationKey]);React.useEffect(()=>{const nav=navRef.current;if(!nav)return;let timer=0;const onDown=e=>{const el=e.target?.closest?.(\"[data-nav-item]\");if(!el||el.hasAttribute(\"data-nav-cta\"))return;if(!el.querySelector(\"a[href]\"))return;const idx=Number(el.dataset.navIndex??-1);if(idx<0)return;setOptimistic(idx);// Safety net: if the navigation never lands, hand authority back\n// to the URL rather than staying wrong forever.\nwindow.clearTimeout(timer);timer=window.setTimeout(()=>setOptimistic(-1),2e3);};nav.addEventListener(\"pointerdown\",onDown,true);return()=>{nav.removeEventListener(\"pointerdown\",onDown,true);window.clearTimeout(timer);};},[totalItems]);// Clicking the page you are already on. Framer's router still commits a\n// navigation for it, which tears the page down and rebuilds it — a reload\n// for no destination. Caught in the CAPTURE phase so the event never\n// reaches React's root listener, which is where Framer's own click handler\n// lives; stopping it in the bubble phase would be too late.\nReact.useEffect(()=>{if(samePage===\"allow\")return;// Bound to the <nav>, not the bar, so it also covers the mobile\n// dropdown — which is a sibling of the bar, not a child.\nconst bar=navRef.current;if(!bar)return;const onClick=event=>{if(event.defaultPrevented||event.button!==0)return;if(event.metaKey||event.ctrlKey||event.shiftKey||event.altKey)return;const target=event.target;const anchor=target?.closest?.(\"a[href]\");if(!anchor||!bar.contains(anchor))return;if(anchor.target&&anchor.target!==\"_self\")return;if(!linkMatchesLocation(anchor.getAttribute(\"href\")||undefined))return;event.preventDefault();event.stopPropagation();if(samePage===\"top\"){window.scrollTo({top:0,behavior:\"smooth\"});}};bar.addEventListener(\"click\",onClick,true);return()=>bar.removeEventListener(\"click\",onClick,true);},[getBar,samePage,locationKey,totalItems]);/* ---------------- springs ---------------- */const spaceSpring={type:\"spring\",stiffness:360,damping:26,mass:.75};// Layout properties must not overshoot: a width that springs past its target\n// makes the centred bar breathe, which reads as horizontal jitter.\nconst layoutSpring={type:\"spring\",stiffness:360,damping:36,mass:.75};// Two ways to describe the same motion. \"time\" matches Framer's Transition\n// panel exactly (Based On: Time → Duration + Bounce), so a curve tuned on\n// the canvas transfers by copying two numbers.\nconst segmentSpring=segmentStyle.springMode===\"physics\"?{type:\"spring\",stiffness:segmentStyle.stiffness,damping:segmentStyle.damping,mass:segmentStyle.mass}:{type:\"spring\",duration:segmentStyle.duration??.32,bounce:segmentStyle.bounce??.15};// Same three parameters Framer's own Spring transition exposes, so a curve\n// you like in the canvas transposes here by copying the numbers across.\nconst entranceSpringCfg={type:\"spring\",stiffness:entranceSpring?.stiffness??300,damping:entranceSpring?.damping??30,mass:entranceSpring?.mass??1};// Settled by the clock, never by onAnimationComplete. That event also fires\n// when an animation is REPLACED, and the pill is retargeted constantly\n// mid-flight (the active label changes weight, the bar resizes, measure\n// runs again). A completion event from the superseded animation flipped the\n// transition to duration-0 while the pill was still travelling, which read\n// as a teleport — and only in whichever direction happened to trigger the\n// resize at the wrong moment.\nconst pillMove=pill?.move??0;React.useEffect(()=>{if(!pillMove||pillMove===settledMove)return;const ms=(segmentStyle.duration??.32)*1e3+120;const id=window.setTimeout(()=>setSettledMove(pillMove),ms);return()=>window.clearTimeout(id);},[pillMove,settledMove,segmentStyle.duration]);const pillTransition=reduceMotion||!ready||!pill||pill.move===settledMove?{duration:0}:segmentSpring;const barShadow=edgeShadow(edgeStyle,false);const pillShadow=edgeShadow(pillEdgeStyle,true);const glass=`blur(${blur}px) brightness(${glassBrightness}) saturate(${glassSaturation}) contrast(${glassContrast})`;const groupStyle={display:\"flex\",alignItems:\"center\",gap:linkGap,minWidth:0,position:\"relative\",zIndex:2,flexShrink:0};const leftGroupStyle=isMobile?{...groupStyle,justifySelf:\"start\"}:groupStyle;const rightGroupStyle=isMobile?{...groupStyle,justifySelf:\"end\"}:groupStyle;// data-nav-index is the item's LOGICAL position (left items, then right,\n// then CTA) and stays constant whether the item is rendered in the desktop\n// bar or the mobile panel. data-nav-item is what measurement queries for.\nconst slot=(node,key,index,extra,isCta)=>/*#__PURE__*/_jsx(\"div\",{\"data-nav-item\":\"\",\"data-nav-index\":index,\"data-nav-cta\":isCta?\"\":undefined,\"data-active\":index===activeIndex?\"\":undefined,style:{display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",flexShrink:0,...extra},children:node},key);const ctaIndex=left.length+right.length;return /*#__PURE__*/_jsxs(\"nav\",{ref:navRef,className:instanceClass,\"aria-label\":\"Primary navigation\",style:{...style,// Full width on mobile so the bar can span the viewport and the\n// dropdown can align to its edges.\nwidth:isMobile?\"100%\":style?.width??\"max-content\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",overflow:\"visible\",position:\"relative\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                  @property --srtb-wght {\n                    syntax: \"<number>\";\n                    inherits: true;\n                    initial-value: 400;\n                  }\n                  .${instanceClass} .srtb-spec {\n                    position: absolute;\n                    inset: 0;\n                    border-radius: inherit;\n                    pointer-events: none;\n                  }\n                  /* Without mask-composite the ring would paint as a solid\n                     gradient over the whole surface, so the effect is opted\n                     into only where it can actually be clipped to the rim. */\n                  @supports ((mask-composite: exclude) or (-webkit-mask-composite: xor)) {\n                    .${instanceClass} .srtb-spec {\n                      padding: var(--srtb-w);\n                      background: var(--srtb-grad);\n                      -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);\n                      -webkit-mask-composite: xor;\n                      mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);\n                      mask-composite: exclude;\n                    }\n                  }\n                  /* Touch hardening. Every one of these is invisible until you\n                     hold a real phone: the grey flash on tap, the 300ms delay\n                     browsers keep for double-tap-to-zoom, and the text selection\n                     you get from resting a thumb on a label. */\n                  .${instanceClass} [data-nav-item],\n                  .${instanceClass} .srtb-burger {\n                    -webkit-tap-highlight-color: transparent;\n                    touch-action: manipulation;\n                    -webkit-user-select: none;\n                    user-select: none;\n                  }\n                  .${instanceClass}.srtb-measuring [data-nav-item]:not([data-nav-cta]) a,\n                  .${instanceClass}.srtb-measuring [data-nav-item]:not([data-nav-cta]) a * {\n                    --srtb-wght: ${labelStyle.activeWeight} !important;\n                    transition: none !important;\n                  }\n                  .${instanceClass} [data-nav-bar],\n                  .${instanceClass} .srtb-menu {\n                    -webkit-font-smoothing: antialiased;\n                  }\n                  ${ctaMatchPill===false?\"\":`\n                  /* The bar carries the Font control's size and line-height as\n                     an inline style, and typography inherits — so a CTA slot\n                     whose own text does not pin its size picks the bar's up and\n                     auto-sizes to something arbitrary. Measured on a build\n                     where the slot's text lost its own line-height: the button\n                     went 36 -> 31 (15px line-height + 8px padding either side),\n                     against a 36px pill, and no height rule existed anywhere to\n                     explain it.\n                     Pinning the height here makes the button's box independent\n                     of whatever the slot's text does, so it stays concentric\n                     with the pill: same height, so same radius, so the same\n                     gap to the bar's edge on every side. */\n                  .${instanceClass} [data-nav-cta] {\n                    height: ${segmentStyle.height}px;\n                    box-sizing: border-box;\n                  }\n                  .${instanceClass} [data-nav-cta] > a {\n                    height: 100%;\n                    box-sizing: border-box;\n                    display: flex;\n                    align-items: center;\n                    justify-content: center;\n                    padding-top: 0;\n                    padding-bottom: 0;\n                  }`}\n                  ${cornerShape?`\n                  /* corner-shape is not inherited, so every element that paints\n                     its own box needs it: the bar, the glass layer under it,\n                     the specular rim (whose mask has to follow the same\n                     outline or the ring detaches at the corners), the pill, the\n                     CTA slot, and the mobile sheet and its rows. Browsers\n                     without support drop these declarations and keep the\n                     circular arc. */\n                  .${instanceClass} [data-nav-bar],\n                  .${instanceClass} .srtb-glass,\n                  .${instanceClass} .srtb-spec,\n                  .${instanceClass} [data-nav-pill],\n                  .${instanceClass} [data-nav-cta] a,\n                  .${instanceClass} .srtb-menu,\n                  .${instanceClass} .srtb-mrow {\n                    corner-shape: ${cornerShape};\n                  }`:\"\"}\n                  ${labelStyle.enabled===false?\"\":`\n                  /* Framer pins the variable axis with font-variation-settings,\n                     and that OVERRIDES font-weight — measured: font-weight 900\n                     changed the rendered text width by 0px, the wght axis by\n                     3.5px. So the weight has to be driven through the axis or\n                     it does not render at all.\n                     font-variation-settings cannot be interpolated directly in\n                     a way we can rely on, so the number lives in a registered\n                     custom property, which transitions like any other number. */\n                  .${instanceClass} [data-nav-item]:not([data-nav-cta]) a,\n                  .${instanceClass} [data-nav-item]:not([data-nav-cta]) a * {\n                    ${labelStyle.takeover===false?\"\":forcedFontCSS(font)}\n                    text-decoration: none !important;\n                    --srtb-wght: ${labelStyle.idleWeight};\n                    font-variation-settings: \"wght\" var(--srtb-wght) !important;\n                    font-weight: var(--srtb-wght) !important;\n                    color: ${labelStyle.color} !important;\n                    transition:\n                      color ${labelStyle.duration}s cubic-bezier(0.22, 1, 0.36, 1),\n                      --srtb-wght ${labelStyle.duration}s cubic-bezier(0.22, 1, 0.36, 1);\n                  }\n                  .${instanceClass} [data-nav-item][data-active]:not([data-nav-cta]) a,\n                  .${instanceClass} [data-nav-item][data-active]:not([data-nav-cta]) a * {\n                    --srtb-wght: ${labelStyle.activeWeight};\n                    color: ${labelStyle.activeColor} !important;\n                  }\n                  @media (hover: hover) and (pointer: fine) {\n                    .${instanceClass} [data-nav-item]:not([data-active]):not([data-nav-cta]):hover a,\n                    .${instanceClass} [data-nav-item]:not([data-active]):not([data-nav-cta]):hover a * {\n                      color: ${labelStyle.hoverColor} !important;\n                    }\n                  }`}\n                `}),/*#__PURE__*/_jsxs(motion.div,{\"data-nav-bar\":\"\",// initial={false} rather than an object: the entrance is driven\n// by `entered` flipping AFTER the bar becomes visible, so the\n// slide is never spent while hidden. It also keeps the server\n// and client markup identical, so there is no hydration\n// mismatch to patch.\ninitial:false,animate:{// No measured offset on mobile: the 1fr/auto/1fr grid\n// centres the logo geometrically, so there is nothing to\n// correct for.\nx:isMobile?0:pillOffset,y:atRest?0:entranceY,// Opacity only participates when Entrance Fade is on;\n// otherwise it sits at 1 and never animates.\nopacity:entranceFade&&!atRest?0:1},transition:{x:reduceMotion||!animateX||snapNow?{duration:0}:{...spaceSpring,delay:logoVisible?logoRevealDelay:0},opacity:{duration:reduceMotion?0:revealDuration,delay:entranceDelay,ease:[.22,1,.36,1]},y:reduceMotion?{duration:0}:{...entranceSpringCfg,delay:entranceDelay}},style:{// visibility, not display or opacity: it keeps the bar in\n// layout so the groups can be measured while hidden, and it\n// does not collide with the opacity animation.\nvisibility:shown?\"visible\":\"hidden\",position:\"relative\",width:isMobile?\"100%\":\"max-content\",height:\"100%\",display:isMobile?\"grid\":\"inline-grid\",// 1fr on both flanks makes the centre column land on the\n// bar's true centre without any measurement.\ngridTemplateColumns:isMobile?\"1fr auto 1fr\":\"max-content auto max-content\",alignItems:\"center\",// The implicit row is auto-sized to its tallest child. When\n// that child (the CTA) is taller than the bar's content box\n// the row overflows — and without this it overflows only\n// downward, dragging every label below the bar's centre.\n// alignContent centres the overflow instead of hanging it.\nalignContent:\"center\",// In landscape the notch eats into the left/right edges, so\n// the bar's own padding has to yield to the safe area.\npaddingLeft:isMobile?`max(${paddingLeft}px, env(safe-area-inset-left))`:paddingLeft,paddingRight:isMobile?`max(${paddingRight}px, env(safe-area-inset-right))`:paddingRight,boxSizing:\"border-box\",borderRadius:cornerRadius,// No CSS border anywhere: the edge is entirely shadow\n// layers, so it composites with whatever is behind it.\nborder:0,background:\"transparent\",boxShadow:barShadow,color:textColor,// Visible by default: an item taller than the bar's inner\n// area (a CTA button, usually) gets its corners shaved off\n// by the bar's own border-radius otherwise. The glass layer\n// below rounds itself via borderRadius: inherit, so it does\n// not need the parent to clip.\noverflow:clipContent?\"hidden\":\"visible\",willChange:\"transform\",...font},children:[/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":true,className:\"srtb-glass\",style:{position:\"absolute\",inset:0,zIndex:0,pointerEvents:\"none\",borderRadius:\"inherit\",background:[`radial-gradient(120% 180% at 50% -80%, rgba(255,255,255,0.9) 0%, transparent 66%)`,`linear-gradient(180deg, ${glassHighlight} 0%, rgba(255,255,255,0.10) 46%, rgba(255,255,255,0.20) 100%)`,`linear-gradient(${background}, ${background})`].join(\", \"),backdropFilter:glass,WebkitBackdropFilter:glass}}),/*#__PURE__*/_jsx(motion.div,{\"aria-hidden\":true,\"data-nav-pill\":\"\",initial:false,animate:{x:pill?.x??0,y:pill?.y??0,width:pill?.width??0,height:pill?.height??segmentStyle.height,opacity:pill?.visible?1:0},transition:pillTransition,style:{position:\"absolute\",top:0,left:0,zIndex:1,boxSizing:\"border-box\",borderRadius:999,border:0,background:segmentStyle.background,boxShadow:pillShadow,pointerEvents:\"none\"},children:pillSpecStyle.enabled!==false&&/*#__PURE__*/_jsx(\"div\",{className:\"srtb-spec\",style:{\"--srtb-w\":`${pillSpecStyle.width}px`,\"--srtb-grad\":specularGradient(pillSpecStyle)}})}),specStyle.enabled!==false&&/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":true,className:\"srtb-spec\",style:{zIndex:4,\"--srtb-w\":`${specStyle.width}px`,\"--srtb-grad\":specularGradient(specStyle)}}),/*#__PURE__*/_jsx(\"div\",{ref:leftGroupRef,style:leftGroupStyle,children:isMobile?/*#__PURE__*/_jsx(motion.button,{type:\"button\",className:\"srtb-burger\",\"aria-label\":menuOpen?\"Close menu\":\"Open menu\",\"aria-expanded\":menuOpen,onClick:()=>setMenuOpen(v=>!v),whileTap:reduceMotion?undefined:{scale:.9},transition:{type:\"spring\",duration:.2,bounce:0},style:{appearance:\"none\",background:\"transparent\",border:0,// 44px is the smallest target a thumb hits\n// reliably; the icon stays 18px inside it.\nminWidth:44,minHeight:44,padding:0,margin:0,cursor:\"pointer\",display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",color:mob.burgerColor},children:/*#__PURE__*/_jsx(Burger,{open:menuOpen,size:mob.burgerSize,color:mob.burgerColor,reduceMotion:!!reduceMotion})}):left.map((node,i)=>slot(node,`l-${i}`,i))}),/*#__PURE__*/_jsx(motion.div,{\"aria-label\":\"Logo\",\"aria-hidden\":!logoVisible,initial:false,animate:{width:logoVisible?logoSize:0,marginLeft:activeLogoGapLeft,marginRight:activeLogoGapRight},transition:reduceMotion||snapNow?{duration:0}:{...layoutSpring,delay:logoVisible?logoRevealDelay:0},style:{height:logoSize,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",flexShrink:0,overflow:\"visible\",position:\"relative\",zIndex:2},children:/*#__PURE__*/_jsx(motion.div,{initial:false,animate:logoVisible?{opacity:1,y:0,scale:1}:{opacity:0,y:9,scale:.72},transition:reduceMotion||snapNow?{duration:0}:{...spaceSpring,delay:logoVisible?logoRevealDelay:0},style:{width:logoSize,height:logoSize,flexShrink:0,display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:logoNode?logoNode:logo?.src?/*#__PURE__*/_jsx(\"img\",{src:logo.src,srcSet:logo.srcSet,alt:logo.alt||\"\",draggable:false,style:{width:\"100%\",height:\"100%\",display:\"block\",objectFit:\"contain\"}}):/*#__PURE__*/_jsx(FallbackLogo,{})})}),/*#__PURE__*/_jsxs(\"div\",{ref:rightGroupRef,style:rightGroupStyle,children:[!isMobile&&right.map((node,i)=>slot(node,`r-${i}`,left.length+i)),cta.map((node,i)=>slot(node,`c-${i}`,ctaIndex+i,{marginLeft:!isMobile&&i===0?ctaGap??0:0},true))]})]}),/*#__PURE__*/_jsx(AnimatePresence,{children:isMobile&&menuOpen&&/*#__PURE__*/_jsx(motion.div,{className:\"srtb-menu\",onClick:()=>setMenuOpen(false),// Exit on opacity + blur rather than position. Sliding\n// out draws the eye to something that is leaving;\n// dissolving lets it go quietly.\ninitial:{opacity:0,y:-8,filter:\"blur(4px)\"},animate:{opacity:1,y:0,filter:\"blur(0px)\"},exit:{opacity:0,filter:\"blur(4px)\",scale:.985},transition:reduceMotion?{duration:0}:{...layoutSpring,delay:0},style:{position:\"absolute\",top:\"100%\",left:0,right:0,marginTop:mob.gap,zIndex:5,boxSizing:\"border-box\",padding:mob.padding,display:\"flex\",flexDirection:\"column\",gap:mob.rowGap,// Concentric: outer radius = inner radius + padding.\n// The rows are pills, so their radius is half their\n// height. Anything else leaves the corners looking\n// like two unrelated curves stacked together.\nborderRadius:mob.padding+(mob.rowPadY*2+20)/2,// A long menu scrolls itself instead of chaining to\n// the page and triggering pull-to-refresh.\nmaxHeight:\"min(70vh, 70dvh)\",overflowY:\"auto\",overscrollBehavior:\"contain\",WebkitOverflowScrolling:\"touch\",border:0,boxShadow:barShadow,color:textColor,backdropFilter:glass,WebkitBackdropFilter:glass,background:[`linear-gradient(180deg, ${glassHighlight} 0%, rgba(255,255,255,0.10) 46%, rgba(255,255,255,0.20) 100%)`,`linear-gradient(${background}, ${background})`].join(\", \"),...font},children:[...left,...right].map((node,i)=>{const active=i===activeIndex;return /*#__PURE__*/_jsx(\"div\",{className:\"srtb-mrow\",style:{display:\"flex\",alignItems:\"center\",padding:`${mob.rowPadY}px ${mob.rowPadX}px`,borderRadius:999,background:active?segmentStyle.background:\"transparent\",border:0,boxShadow:active?pillShadow:\"none\"},children:slot(node,`mi-${i}`,i)},`m-${i}`);})},\"menu\")})]});}/* ---------------- hamburger ---------------- */function Burger({open,size,color,reduceMotion}){const thickness=Math.max(1.5,Math.round(size/10));const gap=Math.round(size*.26);// Each bar travels half the gap plus half its own thickness to meet in the\n// middle, which is what makes the two strokes land on a single axis.\nconst travel=gap/2+thickness/2;const bar={display:\"block\",width:size,height:thickness,borderRadius:999,background:color,transformOrigin:\"center\"};const t=reduceMotion?{duration:0}:{type:\"spring\",stiffness:500,damping:32,mass:.7};return /*#__PURE__*/_jsxs(\"span\",{\"aria-hidden\":true,style:{width:size,height:gap+thickness*2,display:\"inline-flex\",flexDirection:\"column\",justifyContent:\"space-between\",flexShrink:0},children:[/*#__PURE__*/_jsx(motion.span,{initial:false,animate:{rotate:open?45:0,y:open?travel:0},transition:t,style:bar}),/*#__PURE__*/_jsx(motion.span,{initial:false,animate:{rotate:open?-45:0,y:open?-travel:0},transition:t,style:bar})]});}/* ---------------- location ---------------- */function normalizePath(path){if(!path)return\"/\";try{const p=path.startsWith(\"http\")?new URL(path).pathname:path.split(\"?\")[0].split(\"#\")[0];return p.replace(/\\/+$/,\"\")||\"/\";}catch{return path;}}function linkMatchesLocation(url){if(!url||url===\"#\"||typeof window===\"undefined\")return false;try{const current=new URL(window.location.href);const target=new URL(url,current);if(target.origin!==current.origin)return false;if(normalizePath(target.pathname)!==normalizePath(current.pathname))return false;if(target.hash&&target.hash!==current.hash)return false;return true;}catch{return false;}}const LOCATION_EVENT=\"bitrig:locationchange\";// Framer's router navigates with history.pushState, which fires no event.\n// popstate only covers back/forward. Without this, a header living in a layout\n// template never learns the page changed.\nfunction patchHistoryOnce(){if(typeof window===\"undefined\")return;const history=window.history;for(const name of[\"pushState\",\"replaceState\"]){const original=history[name];if(!original||original.__bitrigPatched)continue;const wrapped=function(...args){const result=original.apply(this,args);window.dispatchEvent(new Event(LOCATION_EVENT));return result;};wrapped.__bitrigPatched=true;history[name]=wrapped;}}function useLocationKey(){const read=()=>typeof window===\"undefined\"?\"\":window.location.pathname+window.location.search+window.location.hash;const[key,setKey]=React.useState(read);React.useEffect(()=>{patchHistoryOnce();const update=()=>setKey(read());update();window.addEventListener(\"popstate\",update);window.addEventListener(\"hashchange\",update);window.addEventListener(LOCATION_EVENT,update);return()=>{window.removeEventListener(\"popstate\",update);window.removeEventListener(\"hashchange\",update);window.removeEventListener(LOCATION_EVENT,update);};},[]);return key;}function FallbackLogo(){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"grid\",gridTemplateColumns:\"1fr 1fr\",gap:\"9%\",padding:\"20%\",boxSizing:\"border-box\",borderRadius:\"25%\",background:\"linear-gradient(145deg, #f6428d, #a915be)\",boxShadow:\"inset 0 0 0 1px rgba(255,255,255,.25)\"},children:[0,1,2,3].map(i=>/*#__PURE__*/_jsx(\"span\",{style:{display:\"block\",borderRadius:\"25%\",background:\"rgba(255,255,255,.94)\"}},i))});}ScrollRevealTabBarHeader.defaultProps={// These are the playground's approved values, baked in. Anything not in the\n// property panel below lives here — re-expose a control only if it turns\n// out to need tuning per instance.\nleftItems:[],rightItems:[],ctaItem:[],logoItem:[],targetID:\"bitrig-hero-logo\",noAnchor:\"shown\",revealOffset:78,logoRevealDelay:.18,revealDuration:.42,entrance:\"home\",homePath:\"/\",entranceY:-14,entranceFade:false,entranceDelay:0,entranceSpring:{stiffness:300,damping:30,mass:1},forceActive:-1,samePage:\"ignore\",snapOnNavigate:true,logoSize:32,logoGapLeft:18,logoGapRight:18,linkGap:2,ctaGap:8,paddingLeft:4,paddingRight:4,cornerRadius:999,smoothing:0,ctaMatchPill:true,clipContent:false,background:\"rgba(242,242,247,0.5)\",textColor:\"#3A383B\",blur:26,glassSaturation:1.8,glassContrast:1.02,glassBrightness:1.04,glassHighlight:\"rgba(255,255,255,0.5)\",edge:DEFAULT_EDGE,specular:DEFAULT_SPECULAR,labels:DEFAULT_LABELS,segment:DEFAULT_SEGMENT_STYLE,mobile:DEFAULT_MOBILE,font:{fontSize:15,letterSpacing:\"-0.02em\",lineHeight:1}};addPropertyControls(ScrollRevealTabBarHeader,{leftItems:{type:ControlType.Array,title:\"Left Items\",maxCount:6,control:{type:ControlType.ComponentInstance}},rightItems:{type:ControlType.Array,title:\"Right Items\",maxCount:6,control:{type:ControlType.ComponentInstance}},ctaItem:{type:ControlType.Array,title:\"Button\",maxCount:1,control:{type:ControlType.ComponentInstance}},logoItem:{type:ControlType.Array,title:\"Logo Link\",maxCount:1,control:{type:ControlType.ComponentInstance}},logo:{type:ControlType.ResponsiveImage,title:\"Logo Image\",hidden:p=>(p.logoItem?.length??0)>0},font:{type:ControlType.Font,title:\"Font\",defaultValue:{fontSize:15,letterSpacing:\"-0.02em\",lineHeight:1},controls:\"extended\",defaultFontType:\"sans-serif\"},logoSize:{type:ControlType.Number,title:\"Logo Size\",defaultValue:32,min:16,max:64,step:1,unit:\"px\"},linkGap:{type:ControlType.Number,title:\"Item Gap\",defaultValue:2,min:0,max:40,step:1,unit:\"px\"},ctaGap:{type:ControlType.Number,title:\"Button Gap\",defaultValue:8,min:0,max:80,step:1,unit:\"px\"},ctaMatchPill:{type:ControlType.Boolean,title:\"Button Height\",description:\"Locks the button slot to the active pill's height so the two stay concentric. Turn off to let Framer size it, which makes it depend on the slot text's line-height.\",enabledTitle:\"Match Pill\",disabledTitle:\"Framer\",defaultValue:true},smoothing:{type:ControlType.Number,title:\"Smoothing\",description:\"Figma-style corner smoothing. 60% is the iOS squircle. Chrome/Edge only — Safari and Firefox fall back to a plain rounded corner.\",defaultValue:0,min:0,max:100,step:5,unit:\"%\",displayStepper:false},targetID:{type:ControlType.String,title:\"Hero Anchor\",defaultValue:\"bitrig-hero-logo\"},noAnchor:{type:ControlType.Enum,title:\"No Anchor\",defaultValue:\"shown\",options:[\"scroll\",\"shown\",\"hidden\"],optionTitles:[\"On Scroll\",\"Always Show\",\"Always Hide\"]},revealOffset:{type:ControlType.Number,title:\"Reveal Line\",defaultValue:78,min:0,max:300,step:1,unit:\"px\"},entrance:{type:ControlType.Enum,title:\"Entrance\",defaultValue:\"home\",options:[\"home\",\"first\",\"none\"],optionTitles:[\"Home Only\",\"First Load\",\"None\"]},entranceY:{type:ControlType.Number,title:\"Entrance Y\",defaultValue:-14,min:-120,max:120,step:1,unit:\"px\",hidden:p=>p.entrance===\"none\"},entranceDelay:{type:ControlType.Number,title:\"Entrance Delay\",defaultValue:0,min:0,max:4,step:.05,unit:\"s\",hidden:p=>p.entrance===\"none\"},labels:{type:ControlType.Object,title:\"Labels\",defaultValue:DEFAULT_LABELS,controls:{idleWeight:{type:ControlType.Number,title:\"Idle Weight\",defaultValue:500,min:1,max:1e3,step:5},activeWeight:{type:ControlType.Number,title:\"Active Weight\",defaultValue:600,min:1,max:1e3,step:5},color:{type:ControlType.Color,title:\"Idle\",defaultValue:\"rgba(0,0,0,0.56)\"},activeColor:{type:ControlType.Color,title:\"Active\",defaultValue:\"rgba(0,0,0,0.92)\"}}},mobile:{type:ControlType.Object,title:\"Mobile\",defaultValue:DEFAULT_MOBILE,controls:{enabled:{type:ControlType.Boolean,title:\"Enabled\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},force:{type:ControlType.Enum,title:\"Layout\",defaultValue:\"auto\",options:[\"auto\",\"mobile\",\"desktop\"],optionTitles:[\"Auto\",\"Mobile\",\"Desktop\"],displaySegmentedControl:true},breakpoint:{type:ControlType.Number,title:\"Breakpoint\",defaultValue:810,min:320,max:1400,step:10,unit:\"px\"},burgerSize:{type:ControlType.Number,title:\"Burger Size\",defaultValue:18,min:10,max:40,step:1,unit:\"px\"},burgerColor:{type:ControlType.Color,title:\"Burger Color\",defaultValue:\"#3A383B\"}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ScrollRevealTabBarHeader\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Efew.map","// Generated by Framer (80f113d)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,Container,ControlType,cx,forwardLoader,GeneratedComponentContext,getFonts,Link,PropertyOverrides,RenderTarget,ResolveLinks,RichText,safeCSSValue,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,useRouter,withCSS,withFlowFX}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import NewNavLink from\"#framer/local/canvasComponent/qFEwdlkrB/qFEwdlkrB.js\";import Footer from\"#framer/local/canvasComponent/TwgMa8hUr/TwgMa8hUr.js\";import Header from\"#framer/local/canvasComponent/Ucrq2lre9/Ucrq2lre9.js\";import ScrollRevealTabBarHeader from\"#framer/local/codeFile/xE2damj/Efew.js\";const FooterFonts=getFonts(Footer);const NewNavLinkFonts=getFonts(NewNavLink);const ScrollRevealTabBarHeaderFonts=getFonts(ScrollRevealTabBarHeader);const HeaderFonts=getFonts(Header);const MotionDivWithFlowFX=withFlowFX(motion.div);const breakpoints={F7Adr66So:\"(min-width: 1200px)\",Kgx90YHi9:\"(max-width: 647.98px)\",yXlXovJnt:\"(min-width: 810px) and (max-width: 1199.98px)\",ZLWQLcEjJ:\"(min-width: 648px) and (max-width: 809.98px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-cLns0\";const variantClassNames={F7Adr66So:\"framer-v-hxc14v\",Kgx90YHi9:\"framer-v-176uvmu\",yXlXovJnt:\"framer-v-1gwqqmz\",ZLWQLcEjJ:\"framer-v-lz4qom\"};const uFKoHUcOm=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 transformTemplate1=(_,t)=>`translateX(-50%) ${t}`;const addImageAlt=(image,alt)=>{if(!image||typeof image!==\"object\"){return;}return{...image,alt};};const transition2={bounce:.25,delay:0,duration:.45,type:\"spring\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1.02,skewX:0,skewY:0,transition:transition2};const transition3={bounce:.2,delay:0,duration:.4,type:\"spring\"};const animation1={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:.99,skewX:0,skewY:0,transition:transition3};const breakpointRules={Kgx90YHi9:[\".framer-cLns0 .framer-1nhwefv-container { z-index: 0; }\"]};const breakpointKeys=Object.keys(breakpointRules);const selectors={Kgx90YHi9:\".framer-176uvmu-override\"};const rules=[\".framer-cLns0.framer-1b9m06j, .framer-cLns0 .framer-1b9m06j { display: block; }\",\".framer-cLns0.framer-hxc14v { align-content: center; align-items: center; background-color: var(--1dvaow); 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-cLns0 .framer-1ek0not { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-cLns0 .framer-1nhwefv-container { flex: none; height: auto; order: 1001; position: relative; width: 100%; }\",\".framer-cLns0 .framer-yccdam-container { flex: none; height: 44px; left: 50%; order: 1002; position: var(--framer-canvas-fixed-position, fixed); top: 24px; width: auto; z-index: 10; }\",\".framer-cLns0 .framer-60zag-container, .framer-cLns0 .framer-1fe6cpp-container, .framer-cLns0 .framer-tpyp7m-container, .framer-cLns0 .framer-ymsw12-container, .framer-cLns0 .framer-u3xkah-container { height: min-content; order: 3; position: relative; width: 100%; }\",\".framer-cLns0 .framer-10ar6ym { --border-bottom-width: 1.1px; --border-color: rgba(255, 255, 255, 0.15); --border-left-width: 1.1px; --border-right-width: 1.1px; --border-style: solid; --border-top-width: 1.1px; align-content: center; align-items: center; background: linear-gradient(180deg, #2b2b2b 0%, rgb(0, 0, 0) 100%); border-bottom-left-radius: 999px; border-bottom-right-radius: 999px; border-top-left-radius: 999px; border-top-right-radius: 999px; box-shadow: 0px 0px 15px 0px rgba(6, 125, 140, 0.05), 0px 0.7961918735236395px 1.751622121752007px -1px rgba(0, 0, 0, 0.08), 0px 2.414506143104518px 5.311913514829939px -2px rgba(0, 0, 0, 0.07), 0px 6.382653521484461px 14.041837747265815px -3px rgba(0, 0, 0, 0.06), 0px 20px 44px -4px rgba(0, 0, 0, 0.02); cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; order: 3; overflow: var(--overflow-clip-fallback, clip); padding: 8px 20px 8px 20px; position: relative; text-decoration: none; width: min-content; will-change: var(--framer-will-change-effect-override, transform); }\",\".framer-cLns0 .framer-172l1vw { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-cLns0 .framer-yh9wyp-container { flex: none; height: auto; left: 50%; order: 1003; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 100%; z-index: 10; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }','.framer-cLns0[data-border=\"true\"]::after, .framer-cLns0 [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; }'];const mediaQueries={F7Adr66So:\"(min-width: 1200px)\",Kgx90YHi9:\"(max-width: 647.98px)\",yXlXovJnt:\"(min-width: 810px) and (max-width: 1199.98px)\",ZLWQLcEjJ:\"(min-width: 648px) and (max-width: 809.98px)\"};const humanReadableVariantMap={Desktop:\"F7Adr66So\",Narrow:\"ZLWQLcEjJ\",Phone:\"Kgx90YHi9\",Tablet:\"yXlXovJnt\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({fill,height,id,width,...props})=>{return{...props,uFKoHUcOm:fill??props.uFKoHUcOm??\"rgb(250, 247, 242)\",variant:humanReadableVariantMap[props.variant]??props.variant??\"F7Adr66So\"};};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,uFKoHUcOm,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(!isBrowser())return true;if(baseVariant===\"Kgx90YHi9\")return false;return true;};const router=useRouter();const isDisplayed1=()=>{if(!isBrowser())return true;if(baseVariant===\"Kgx90YHi9\")return true;return false;};useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,isLayoutTemplate:true,primaryVariantId:\"F7Adr66So\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:`:root body { background: ${safeCSSValue(uFKoHUcOm)}; }`}),/*#__PURE__*/_jsxs(MotionDivWithFlowFX,{...restProps,className:cx(scopingClassNames,\"framer-hxc14v\",className),\"data-layout-template\":true,flowEffectEnabled:true,flowEffectTransition:transition1,isNestedFlowEffect:false,ref:refBinding,style:{\"--1dvaow\":uFKoHUcOm,...style},children:[children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-1ek0not\"}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:514,width:\"100vw\",y:1e3,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1nhwefv-container\",layout:\"position\",nodeId:\"ZKv9_TMvV\",rendersWithMotion:true,scopeId:\"g2yl9llYn\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Kgx90YHi9:{variant:matchVariant(\"m415yic9w\")},yXlXovJnt:{variant:matchVariant(\"ImSe91gaN\")},ZLWQLcEjJ:{variant:matchVariant(\"ImSe91gaN\")}},children:/*#__PURE__*/_jsx(Footer,{height:\"100%\",id:\"ZKv9_TMvV\",layoutId:\"ZKv9_TMvV\",style:{width:\"100%\"},variant:matchVariant(\"mC5VhoRkN\"),width:\"100%\"})})})}),isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-yccdam-container hidden-176uvmu\",\"data-framer-layout-hint-center-x\":true,isAuthoredByUser:true,layout:\"position\",layoutScroll:true,nodeId:\"eF4Y21P49\",rendersWithMotion:true,scopeId:\"g2yl9llYn\",transformTemplate:transformTemplate1,children:/*#__PURE__*/_jsx(ScrollRevealTabBarHeader,{ctaGap:6,ctaItem:[/*#__PURE__*/_jsx(Link,{href:{webPageId:\"MNPyH_QNp\"},motionChild:true,nodeId:\"dyonFnXJt\",scopeId:\"g2yl9llYn\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-10ar6ym framer-1b9m06j\",\"data-border\":true,whileHover:animation,whileTap:animation1,children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"Q1VTVE9NVjI7QUJDIEZhdm9yaXQgVmFyaWFibGUgVmFyaWFibGUgUmVndWxhclZGPUluZG5hSFFpSURVMU1Dd2dJbk5zYm5RaUlEQT0=\",\"--framer-font-family\":'\"ABC Favorit Variable Variable Regular\", \"ABC Favorit Variable Variable Regular Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'blwf' on, 'cv03' on, 'cv04' on, 'cv09' on, 'cv11' on\",\"--framer-font-size\":\"15px\",\"--framer-font-variation-axes\":'\"wght\" 550, \"slnt\" 0',\"--framer-letter-spacing\":\"-0.02em\",\"--framer-line-height\":\"100%\",\"--framer-text-color\":\"rgb(255, 255, 255)\"},children:\"Download\"})}),className:\"framer-172l1vw\",fonts:[\"CUSTOMV2;ABC Favorit Variable Variable Regular\"],verticalAlignment:\"top\",withExternalLayout:true})})})],ctaMatchPill:true,entrance:\"home\",entranceDelay:0,entranceY:-70,font:{fontFamily:'\"ABC Favorit Variable Variable Regular\", \"ABC Favorit Variable Variable Regular Placeholder\", sans-serif',fontSize:\"15px\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"-0.01em\",lineHeight:\"1em\"},height:\"100%\",id:\"eF4Y21P49\",labels:{activeColor:\"rgba(0, 0, 0, 0.92)\",activeWeight:550,color:\"rgba(0, 0, 0, 0.56)\",idleWeight:450},layoutId:\"eF4Y21P49\",leftItems:[/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"augiA20Il\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:15,width:\"53px\",children:/*#__PURE__*/_jsx(Container,{className:\"framer-60zag-container\",\"data-framer-name\":\"Mac\",inComponentSlot:true,name:\"Mac\",nodeId:\"PWx8U9eRR\",rendersWithMotion:true,scopeId:\"g2yl9llYn\",children:/*#__PURE__*/_jsx(NewNavLink,{height:\"100%\",id:\"PWx8U9eRR\",Kvxz70pKQ:resolvedLinks[0],layoutId:\"PWx8U9eRR\",name:\"Mac\",width:\"100%\",yMhPzGMzQ:\"Mac\"})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"TRRyfv_d1\"},implicitPathVariables:undefined}],children:resolvedLinks1=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:15,width:\"76.5px\",children:/*#__PURE__*/_jsx(Container,{className:\"framer-1fe6cpp-container\",\"data-framer-name\":\"Remote\",inComponentSlot:true,name:\"Remote\",nodeId:\"mYP972Co0\",rendersWithMotion:true,scopeId:\"g2yl9llYn\",children:/*#__PURE__*/_jsx(NewNavLink,{height:\"100%\",id:\"mYP972Co0\",Kvxz70pKQ:resolvedLinks1[0],layoutId:\"mYP972Co0\",name:\"Remote\",width:\"100%\",yMhPzGMzQ:\"Remote\"})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"bCCICkIhb\"},implicitPathVariables:undefined}],children:resolvedLinks2=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:15,width:\"54px\",children:/*#__PURE__*/_jsx(Container,{className:\"framer-tpyp7m-container\",\"data-framer-name\":\"Blog\",inComponentSlot:true,name:\"Blog\",nodeId:\"Rv1imfRa5\",rendersWithMotion:true,scopeId:\"g2yl9llYn\",children:/*#__PURE__*/_jsx(NewNavLink,{height:\"100%\",id:\"Rv1imfRa5\",Kvxz70pKQ:resolvedLinks2[0],layoutId:\"Rv1imfRa5\",name:\"Blog\",width:\"100%\",yMhPzGMzQ:\"Blog\"})})})})],linkGap:0,logo:addImageAlt({pixelHeight:256,pixelWidth:256,src:\"https://framerusercontent.com/images/qHMx29g6aOQwKFVOXfJfws082o.png?width=256&height=256\"},\"\"),logoItem:[],logoSize:32,mobile:{breakpoint:810,burgerColor:\"rgb(58, 56, 59)\",burgerSize:18,enabled:true,force:\"auto\"},noAnchor:\"shown\",revealOffset:78,rightItems:[/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"YXYkaBFeK\"},implicitPathVariables:undefined}],children:resolvedLinks3=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:15,width:\"70.5px\",children:/*#__PURE__*/_jsx(Container,{className:\"framer-ymsw12-container\",inComponentSlot:true,nodeId:\"jXGlODyii\",rendersWithMotion:true,scopeId:\"g2yl9llYn\",children:/*#__PURE__*/_jsx(NewNavLink,{height:\"100%\",id:\"jXGlODyii\",Kvxz70pKQ:resolvedLinks3[0],layoutId:\"jXGlODyii\",width:\"100%\",yMhPzGMzQ:\"Pricing\"})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"yMVgEa3P3\"},implicitPathVariables:undefined}],children:resolvedLinks4=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:15,width:\"65px\",children:/*#__PURE__*/_jsx(Container,{className:\"framer-u3xkah-container\",\"data-framer-name\":\"About\",inComponentSlot:true,name:\"About\",nodeId:\"UVVf4LAIS\",rendersWithMotion:true,scopeId:\"g2yl9llYn\",children:/*#__PURE__*/_jsx(NewNavLink,{height:\"100%\",id:\"UVVf4LAIS\",Kvxz70pKQ:resolvedLinks4[0],layoutId:\"UVVf4LAIS\",name:\"About\",width:\"100%\",yMhPzGMzQ:\"About\"})})})})],smoothing:0,style:{height:\"100%\"},targetID:\"bitrig-hero-logo\",width:\"100%\"})})}),isDisplayed1()&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Kgx90YHi9:{height:88,width:\"100vw\",y:0}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-yh9wyp-container hidden-hxc14v hidden-1gwqqmz hidden-lz4qom\",\"data-framer-layout-hint-center-x\":true,layout:\"position\",layoutScroll:true,nodeId:\"apIIn6XAY\",rendersWithMotion:true,scopeId:\"g2yl9llYn\",transformTemplate:transformTemplate1,children:/*#__PURE__*/_jsx(Header,{height:\"100%\",id:\"apIIn6XAY\",jvN1KF566:\"var(--token-dbff6c60-e88c-4194-bcb4-06f8e61bf0f6, rgb(16, 24, 40))\",layoutId:\"apIIn6XAY\",style:{width:\"100%\"},variant:matchVariant(\"UVQGcAQdt\"),Vit9O5AJg:\"22px 22px 16px 16px\",width:\"100%\",ZG7cX9jco:\"var(--token-dbff6c60-e88c-4194-bcb4-06f8e61bf0f6, rgb(16, 24, 40))\"})})})})]}),/*#__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=selectors[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"yXlXovJnt\":{\"layout\":[\"fixed\",\"fixed\"]},\"Kgx90YHi9\":{\"layout\":[\"fixed\",\"fixed\"]},\"ZLWQLcEjJ\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"uFKoHUcOm\":\"fill\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"F7Adr66So\":[\".framer-1nhwefv-container\",\".framer-yccdam-container\"],\"yXlXovJnt\":[\".framer-1nhwefv-container\",\".framer-yccdam-container\"],\"Kgx90YHi9\":[\".framer-1nhwefv-container\",\".framer-yh9wyp-container\"],\"ZLWQLcEjJ\":[\".framer-1nhwefv-container\",\".framer-yccdam-container\"]}\n * @framerBreakpoints {\"F7Adr66So\":{\"min\":1200,\"canvasClassName\":\"framer-hxc14v-override\",\"minHeight\":1000,\"viewportHeight\":800,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16},\"yXlXovJnt\":{\"min\":810,\"max\":1199,\"canvasClassName\":\"framer-1gwqqmz-override\",\"minHeight\":1000,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":810,\"rootFontSize\":16},\"ZLWQLcEjJ\":{\"min\":648,\"max\":809,\"canvasClassName\":\"framer-lz4qom-override\",\"minHeight\":1000,\"viewportHeight\":1080,\"name\":\"Narrow\",\"width\":648,\"rootFontSize\":16},\"Kgx90YHi9\":{\"max\":647,\"canvasClassName\":\"framer-176uvmu-override\",\"minHeight\":1000,\"viewportHeight\":800,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant F7Adr66So\n * @framerLayoutTemplate true\n */const Framerg2yl9llYn=withCSS(Component,css,\"framer-cLns0\");export default Framerg2yl9llYn;Framerg2yl9llYn.displayName=\"Bitrig Layout\";Framerg2yl9llYn.defaultProps={height:1e3,width:1200};addPropertyControls(Framerg2yl9llYn,{uFKoHUcOm:{defaultValue:\"rgb(250, 247, 242)\",title:\"Fill\",type:ControlType.Color}});const variationAxes=[{defaultValue:400,maxValue:1e3,minValue:300,name:\"Weight\",tag:\"wght\"},{defaultValue:0,maxValue:0,minValue:-12,name:\"Slant\",tag:\"slnt\"}];addFonts(Framerg2yl9llYn,[{explicitInter:true,fonts:[{cssFamilyName:\"ABC Favorit Variable Variable Regular\",source:\"custom\",style:\"normal\",uiFamilyName:\"ABC Favorit Variable\",url:\"https://framerusercontent.com/assets/J1jxf59pLsDwYm2sj21dYFzXg4Y.woff2\",variationAxes,weight:\"400\"}]},...FooterFonts,...NewNavLinkFonts,...ScrollRevealTabBarHeaderFonts,...HeaderFonts],{supportsExplicitInterCodegen:true});Framerg2yl9llYn.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(Footer,{},context),forwardLoader(NewNavLink,{},context),forwardLoader(Header,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerg2yl9llYn\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"1200\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerLayoutTemplate\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerVariables\":\"{\\\"uFKoHUcOm\\\":\\\"fill\\\"}\",\"framerHitTargets\":\"{\\\"F7Adr66So\\\":[\\\".framer-1nhwefv-container\\\",\\\".framer-yccdam-container\\\"],\\\"yXlXovJnt\\\":[\\\".framer-1nhwefv-container\\\",\\\".framer-yccdam-container\\\"],\\\"Kgx90YHi9\\\":[\\\".framer-1nhwefv-container\\\",\\\".framer-yh9wyp-container\\\"],\\\"ZLWQLcEjJ\\\":[\\\".framer-1nhwefv-container\\\",\\\".framer-yccdam-container\\\"]}\",\"framerDefaultVariant\":\"F7Adr66So\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"yXlXovJnt\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"Kgx90YHi9\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"ZLWQLcEjJ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerBreakpoints\":\"{\\\"F7Adr66So\\\":{\\\"min\\\":1200,\\\"canvasClassName\\\":\\\"framer-hxc14v-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":800,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16},\\\"yXlXovJnt\\\":{\\\"min\\\":810,\\\"max\\\":1199,\\\"canvasClassName\\\":\\\"framer-1gwqqmz-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":810,\\\"rootFontSize\\\":16},\\\"ZLWQLcEjJ\\\":{\\\"min\\\":648,\\\"max\\\":809,\\\"canvasClassName\\\":\\\"framer-lz4qom-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Narrow\\\",\\\"width\\\":648,\\\"rootFontSize\\\":16},\\\"Kgx90YHi9\\\":{\\\"max\\\":647,\\\"canvasClassName\\\":\\\"framer-176uvmu-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":800,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerIntrinsicHeight\":\"1000\",\"framerColorSyntax\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__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 BitrigLayout from \"https://framerusercontent.com/modules/TXi2Wjj1S01Qd8AI82hK/v1BNDQK9b0ENQFggAh3p/g2yl9llYn.js\";\r\n\r\n\t\tconst routes = {augiA20Il: {elements: {cGHmJHX76: \"home-header\", VMRSJIOhL: \"remote-header\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/24DrSXoMzySbEYMEEguL/i4WMpXPQ0yY8L0EW6qFN/augiA20Il.js\")), path: \"/\"}, TRRyfv_d1: {elements: {qvvHrb1Bo: \"remote-header\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/UgwFOrO8uZUpXgP31mZ3/jeQ0Nd97nralt3mYYAih/TRRyfv_d1.js\")), path: \"/remote\"}, YXYkaBFeK: {elements: {WzVWmRTM4: \"pricing-header\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/voxcBDk5u4pYON5IRO8e/iBP55iYWNCuPPivE7B82/YXYkaBFeK.js\")), path: \"/pricing\"}, bCCICkIhb: {elements: {apjNztywC: \"blog-header\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/SJ7cst6bFPZnAbBZLSQr/wuvogJ1TKvpynprT9kFF/bCCICkIhb.js\")), path: \"/blog\"}, ybWOzdsI6: {elements: {B2hloINaO: \"shipaton-hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/vaCDFFF0cJWHswhMlgWQ/fmssmWojVpZvJpASvQ1f/ybWOzdsI6.js\")), path: \"/shipaton\"}, yMVgEa3P3: {elements: {N0enKFZNj: \"about-header\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/9nDC1gEOsAPPzekh6uHg/M8DyK1jlPwab05ZxaOfy/yMVgEa3P3.js\")), path: \"/about\"}, MNPyH_QNp: {elements: {i39KNQBv5: \"remote-header\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/gtKaixXcNmFnVkkZfaXa/VGiLWb6Y69LrKM3CfI4b/MNPyH_QNp.js\")), path: \"/download\"}, h27Wj58jJ: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/U8IXNdzvOOO8eobnzZ4D/uBQl4uWch8pypPeFhdxw/h27Wj58jJ.js\")), path: \"/newsletter-success\"}, bdNRd1rrr: {elements: {TNkiQRvSk: \"privacy-header\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/8rhfYhIyAXJR2m8ZlWTj/4zs0rVW4CJQQr8uwhgnw/bdNRd1rrr.js\")), path: \"/privacy\"}, RizMztc96: {elements: {QSEgvrwz1: \"terms\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/d4HPQrMAlHDg4iSglSgA/VH4g2Z6uLsOPidOOYyu0/RizMztc96.js\")), path: \"/terms\"}, DX9caNQtf: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/EhOTuxDhyB8gqR5pmh2k/tlbItjmb0A57rOCdau3N/DX9caNQtf.js\")), path: \"/404\"}, whgVE61z5: {elements: {UHwE_tyXB: \"guides-header\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/sbTq3mp3NQ83zBoKsBbq/mgTHTmWmOs30qK8Cm8nX/whgVE61z5.js\")), path: \"/blog/guides\"}, CVQrnQWTo: {collectionId: \"JYhr3l_7i\", elements: {R4cZ7mhbb: \"blog-post-header\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/r68Fjg5xhTt5mZoah2eH/6U9FwBCdtNg7hVWt6zk3/CVQrnQWTo.js\")), path: \"/blog/:ekjDXG5MI\"}}\r\n\r\n\t\tconst locales = [{code: \"en\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n\t\tconst collectionUtils = {JYhr3l_7i: async () => (await import(\"https://framerusercontent.com/modules/yvNlpTY9BF3dWHAEYoQ9/ACZy6iZZDesThj5vekki/JYhr3l_7i.js\"))?.[\"utils\"]}\r\n\t\tconst framerSiteId = \"752b10ce039c0506798297900c4e2daaedef33006f919e427a7871a7855dfda1\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const props1 = {uFKoHUcOm: \"rgb(0, 0, 0)\"}\r\nconst props2 = {...props1, uFKoHUcOm: \"rgb(250, 247, 242)\"}\r\nconst templateProps = {augiA20Il: props1, bCCICkIhb: props2, bdNRd1rrr: props2, CVQrnQWTo: props2, h27Wj58jJ: props2, MNPyH_QNp: props2, RizMztc96: props2, TRRyfv_d1: props2, whgVE61z5: props2, yMVgEa3P3: props2, YXYkaBFeK: props2}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"augiA20Il\":\r\ncase \"TRRyfv_d1\":\r\ncase \"YXYkaBFeK\":\r\ncase \"bCCICkIhb\":\r\ncase \"yMVgEa3P3\":\r\ncase \"MNPyH_QNp\":\r\ncase \"h27Wj58jJ\":\r\ncase \"bdNRd1rrr\":\r\ncase \"RizMztc96\":\r\ncase \"whgVE61z5\":\r\ncase \"CVQrnQWTo\":\r\nreturn React.createElement(BitrigLayout, {...props, key: \"BitrigLayout\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"augiA20Il\":\r\ncase \"TRRyfv_d1\":\r\ncase \"YXYkaBFeK\":\r\ncase \"bCCICkIhb\":\r\ncase \"yMVgEa3P3\":\r\ncase \"MNPyH_QNp\":\r\ncase \"h27Wj58jJ\":\r\ncase \"bdNRd1rrr\":\r\ncase \"RizMztc96\":\r\ncase \"whgVE61z5\":\r\ncase \"CVQrnQWTo\":\r\nreturn [{hash: \"hxc14v\", mediaQuery: \"(min-width: 1200px)\"}, {hash: \"1gwqqmz\", mediaQuery: \"(min-width: 810px) and (max-width: 1199.98px)\"}, {hash: \"176uvmu\", mediaQuery: \"(max-width: 647.98px)\"}, {hash: \"lz4qom\", mediaQuery: \"(min-width: 648px) and (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\texport async function getPageRoot({ routeId, pathVariables, localeId, collectionItemId }) {\r\n\t\t\tconst rootPreload = routes[routeId].page.preload()\r\n\r\n\t\t\tFramer.setLibraryFeatures({disableCustomCode: false, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: true, onPageMoveTool: true, onPageRichTextBlockSelection: true, privateRouterReplaceState: false, scrollRestoration: true, synchronousNavigationOnDesktop: false, yieldOnTap: false})\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\troutes,\r\n\t\t\t\t\tcollectionUtils,\r\n\t\t\t\t\tframerSiteId,\r\n\t\t\t\t\tnotFoundPage: Framer.lazy(() => import(\"https://framerusercontent.com/modules/EhOTuxDhyB8gqR5pmh2k/tlbItjmb0A57rOCdau3N/DX9caNQtf.js\")),\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://bitrig.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: true,\r\n\t\t\t\t\tLayoutTemplate: Template,\r\n\t\t\t\t\tloadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/hfBqqXT0KZd4Jt9Brg9Z/ygnwoEEoz43PdvAykDm6/snippets.js\")),\r\n\t\t\t\t\tinitialCollectionItemId: collectionItemId,\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\tconst effect = {enter: {mask: {angle: 90, type: \"wipe\", width: \"100%\"}, opacity: 1, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0, duration: 0.4, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"0px\"}}\r\n\t\t\tconst page = React.createElement(Framer.PageEffectsProvider, {\r\n\t\t\t\tchildren: contentWithGracefullyDegradingErrorBoundary,\r\n\t\t\t\tvalue: {routes: {DX9caNQtf: {augiA20Il: effect}, ybWOzdsI6: {augiA20Il: effect}}}\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\r\n\t\tif (isBrowser) {\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\t\r\n\t\t\t\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, pathVariables, 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\tpathVariables = routeData.pathVariables\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\tFramer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\tconst serverRouteExperimentEnabled = true\r\n\t\t\t\t\tconst serverRoute = serverRouteExperimentEnabled && 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\tpathVariables,\r\n\t\t\t\t\tcollectionItemId: routeData?.collectionItemId,\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\tlet collectionItemId = routeData?.collectionItemId ?? null\r\n\t\tif (collectionItemId === null && route?.collectionId && collectionUtils) {\r\n\t\t\t  const utils = await collectionUtils[route.collectionId]?.()\r\n\t\t\t  const [slug] = Object.values(pathVariables)\r\n\t\t\t  if (utils && typeof slug === \"string\") {\r\n\t\t\t\t  collectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n\t\t\t  }\r\n\t\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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"}