{"version":3,"file":"StudioToReality.0WIW3vjl.mjs","names":["useState","useRef","useCallback","useMemo","startTransition","Image1","React.useContext","React.useMemo","React.Fragment","React.forwardRef","useRef","React.useId","useState","sizedAsset","useRef","_Fragment","c","useState","useRef","useCallback","_Fragment","useEffect","useLayoutEffect","useRef","useState","_Fragment","useCallback","useId","useMemo","c","React.useRef","React.useId","React.useState"],"sources":["https:/framerusercontent.com/modules/aEwsHQOaH9BWmSmN7cLm/65TUYx7dmuaFfnulgoCw/DesignRotatorAutoAdvance.js","https:/framerusercontent.com/modules/6D8C4s0UM0ZixpkkZpyC/t8GPmP78nPcU8GGubTIp/FXgkrnJao.js","https:/framerusercontent.com/modules/7Hx7KBsi9SG6nJp7SHEh/dlVp17KA60XPpqP38oJt/BrandHubDemo.js","https:/framerusercontent.com/modules/2EEtXU5wWGesJEQ40qW9/9Bc5k4qiITKSi9Gke3rD/SeeEverySideReplay.js","https:/framerusercontent.com/modules/VFmDYy6q1ViAFpyrErTs/ELD132zmhwrrzUROgelw/StartDesigning.js","https:/framerusercontent.com/modules/qjJiV9FVysK9I9uaQ1Ud/T4puRHuEwuygd1W1n0u4/StudioToReality.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{forwardRef,startTransition,useCallback,useEffect,useMemo,useRef,useState}from\"react\";import{useIsStaticRenderer}from\"framer\";const CYCLE_DURATION_MS=3e3;export function withAutoRotateDesignRotator(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const WrappedComponent=Component;const isStaticRenderer=useIsStaticRenderer();const[isHovering,setIsHovering]=useState(false);const[isHidden,setIsHidden]=useState(false);const[prefersReducedMotion,setPrefersReducedMotion]=useState(false);const wrapperRef=useRef(null);const rafIdRef=useRef(null);const cycleStartRef=useRef(0);const clearRaf=useCallback(()=>{if(rafIdRef.current!==null&&typeof window!==\"undefined\"){window.cancelAnimationFrame(rafIdRef.current);}rafIdRef.current=null;},[]);const autoRotateEnabled=useMemo(()=>{return!isStaticRenderer&&!prefersReducedMotion&&!isHidden&&!isHovering;},[isHidden,isHovering,isStaticRenderer,prefersReducedMotion]);const triggerNextVariant=useCallback(()=>{const root=wrapperRef.current;if(!root)return;const target=root.firstElementChild??root;target.click();},[]);const startAutoRotate=useCallback(()=>{clearRaf();cycleStartRef.current=0;if(!autoRotateEnabled)return;const tick=timestamp=>{if(!autoRotateEnabled)return;if(cycleStartRef.current===0)cycleStartRef.current=timestamp;const elapsed=timestamp-cycleStartRef.current;if(elapsed>=CYCLE_DURATION_MS){triggerNextVariant();cycleStartRef.current=timestamp;}rafIdRef.current=window.requestAnimationFrame(tick);};if(typeof window!==\"undefined\"){rafIdRef.current=window.requestAnimationFrame(tick);}},[autoRotateEnabled,clearRaf,triggerNextVariant]);useEffect(()=>{if(typeof window===\"undefined\"||typeof document===\"undefined\")return;const onVisibilityChange=()=>{startTransition(()=>setIsHidden(document.visibilityState===\"hidden\"));};onVisibilityChange();document.addEventListener(\"visibilitychange\",onVisibilityChange);return()=>document.removeEventListener(\"visibilitychange\",onVisibilityChange);},[]);useEffect(()=>{if(typeof window===\"undefined\"||typeof window.matchMedia!==\"function\")return;const mediaQuery=window.matchMedia(\"(prefers-reduced-motion: reduce)\");startTransition(()=>setPrefersReducedMotion(mediaQuery.matches));const onChange=event=>{startTransition(()=>setPrefersReducedMotion(event.matches));};mediaQuery.addEventListener(\"change\",onChange);return()=>mediaQuery.removeEventListener(\"change\",onChange);},[]);useEffect(()=>{if(autoRotateEnabled){startAutoRotate();}else{clearRaf();}},[autoRotateEnabled,clearRaf,startAutoRotate]);useEffect(()=>{return()=>clearRaf();},[clearRaf]);return /*#__PURE__*/_jsx(\"div\",{ref:wrapperRef,style:{position:\"relative\",width:\"100%\",height:\"100%\"},onPointerEnter:()=>startTransition(()=>setIsHovering(true)),onPointerLeave:()=>startTransition(()=>setIsHovering(false)),children:/*#__PURE__*/_jsx(WrappedComponent,{ref:ref,...props})});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withAutoRotateDesignRotator\":{\"type\":\"reactHoc\",\"name\":\"withAutoRotateDesignRotator\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./DesignRotatorAutoAdvance.map","// Generated by Framer (f03650d)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,CycleVariantState,getLoadingLazyAtYPosition,Image as Image1,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useOnVariantChange,useVariantState,withCodeBoundaryForOverrides,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import{withAutoRotateDesignRotator}from\"https://framerusercontent.com/modules/aEwsHQOaH9BWmSmN7cLm/65TUYx7dmuaFfnulgoCw/DesignRotatorAutoAdvance.js\";const Image1WithAutoRotateDesignRotatorm10upl=withCodeBoundaryForOverrides(Image1,{nodeId:\"tl8giCxeE\",override:withAutoRotateDesignRotator,scopeId:\"FXgkrnJao\"});const cycleOrder=[\"tl8giCxeE\",\"y0ZOp1TWO\",\"dIbeE1VRF\",\"wrAJQhOcZ\"];const serializationHash=\"framer-IHqRA\";const variantClassNames={dIbeE1VRF:\"framer-v-emnl1s\",tl8giCxeE:\"framer-v-m10upl\",wrAJQhOcZ:\"framer-v-lv4hdy\",y0ZOp1TWO:\"framer-v-by5egy\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={\"T-shirt\":\"tl8giCxeE\",Cap:\"dIbeE1VRF\",Hoodie:\"y0ZOp1TWO\",Print:\"wrAJQhOcZ\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"tl8giCxeE\"};};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:\"tl8giCxeE\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onAppear1yp0wpv=activeVariantCallback(async(...args)=>{await delay(()=>setVariant(CycleVariantState,true),1e3);});useOnVariantChange(baseVariant,{default:onAppear1yp0wpv});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(Image1WithAutoRotateDesignRotatorm10upl,{...restProps,...gestureHandlers,background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition(componentViewport?.y||0),pixelHeight:875,pixelWidth:700,sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/EktE3qzVF9UAydkfxXtDbm3vc.webp?width=700&height=875\",srcSet:\"https://framerusercontent.com/images/EktE3qzVF9UAydkfxXtDbm3vc.webp?width=700&height=875 700w\"},className:cx(scopingClassNames,\"framer-m10upl\",className,classNames),\"data-framer-name\":\"T-shirt\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"tl8giCxeE\",ref:refBinding,style:{borderBottomLeftRadius:18,borderBottomRightRadius:18,borderTopLeftRadius:18,borderTopRightRadius:18,...style},...addPropertyOverrides({dIbeE1VRF:{\"data-framer-name\":\"Cap\",background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition(componentViewport?.y||0),pixelHeight:875,pixelWidth:700,sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/umUWIxJaIWNHOLjx0nOHh1Y73E.webp?width=700&height=875\",srcSet:\"https://framerusercontent.com/images/umUWIxJaIWNHOLjx0nOHh1Y73E.webp?width=700&height=875 700w\"}},wrAJQhOcZ:{\"data-framer-name\":\"Print\",background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition(componentViewport?.y||0),pixelHeight:875,pixelWidth:700,sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/0Bpa7lqhmVh5uK3zeNecwFnY.webp?width=700&height=875\",srcSet:\"https://framerusercontent.com/images/0Bpa7lqhmVh5uK3zeNecwFnY.webp?width=700&height=875 700w\"}},y0ZOp1TWO:{\"data-framer-name\":\"Hoodie\",background:{alt:\"\",fit:\"fill\",loading:getLoadingLazyAtYPosition(componentViewport?.y||0),pixelHeight:875,pixelWidth:700,sizes:componentViewport?.width||\"100vw\",src:\"https://framerusercontent.com/images/sdXdrwoUrAapD4bplsKSpiPTJIc.webp?width=700&height=875\",srcSet:\"https://framerusercontent.com/images/sdXdrwoUrAapD4bplsKSpiPTJIc.webp?width=700&height=875 700w\"}}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-21y0zf\",\"data-framer-name\":\"Text readability\",layoutDependency:layoutDependency,layoutId:\"u_yPMjsEr\",style:{background:\"linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.15) 24%, rgba(0, 0, 0, 0) 52%)\"}})})})})});});const css=[\".framer-IHqRA.framer-1a67a01, .framer-IHqRA .framer-1a67a01 { display: block; }\",\".framer-IHqRA.framer-m10upl { cursor: pointer; height: 449px; overflow: var(--overflow-clip-fallback, clip); position: relative; width: 354px; will-change: var(--framer-will-change-override, transform); }\",\".framer-IHqRA .framer-21y0zf { bottom: 0px; flex: none; left: 0px; position: absolute; right: 0px; top: 0px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 449\n * @framerIntrinsicWidth 354\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"y0ZOp1TWO\":{\"layout\":[\"fixed\",\"fixed\"]},\"dIbeE1VRF\":{\"layout\":[\"fixed\",\"fixed\"]},\"wrAJQhOcZ\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerFXgkrnJao=withCSS(Component,css,\"framer-IHqRA\");export default FramerFXgkrnJao;FramerFXgkrnJao.displayName=\"Design Rotator\";FramerFXgkrnJao.defaultProps={height:449,width:354};addPropertyControls(FramerFXgkrnJao,{variant:{options:[\"tl8giCxeE\",\"y0ZOp1TWO\",\"dIbeE1VRF\",\"wrAJQhOcZ\"],optionTitles:[\"T-shirt\",\"Hoodie\",\"Cap\",\"Print\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerFXgkrnJao,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerFXgkrnJao\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"y0ZOp1TWO\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"dIbeE1VRF\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"wrAJQhOcZ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"354\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"449\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FXgkrnJao.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useEffect,useState,useRef,useCallback}from\"react\";import{useIsStaticRenderer,useLocaleInfo,addPropertyControls,ControlType}from\"framer\";// Inlined Framer runtime foundation: generated from StudioIllustrationStyle.tsx.\n// Shared visual foundation for BrandHubDemo and StudioFeatureDemo.\n// Brand Hub is the reference. Keep these values in one place in Framer.\n// Framer serves the original unless the URL asks for a size. These boxes are\n// small, so cap the asset and hand the browser a 1x/2x pair instead of a 2000px\n// original it then has to downsample.\nconst sizedAsset=(u,n=512)=>typeof u===\"string\"&&u.includes(\"framerusercontent.com/images/\")&&!u.includes(\"?\")?u+\"?scale-down-to=\"+n:u;const studioUI={headingFamily:'\"Studio General Sans\", \"General Sans\", sans-serif',headingFontURL:\"https://framerusercontent.com/third-party-assets/fontshare/wf/K46YRH762FH3QJ25IQM3VAXAKCHEXXW4/ISLWQPUZHZF33LRIOTBMFOJL57GBGQ4B/3ZLMEXZEQPLTEPMHTQDAUXP5ZZXCZAEN.woff2\",fontFamily:'Inter, \"Inter Placeholder\", sans-serif',ink:\"#292931\",accent:\"#007AFF\",surface:\"#FFFFFF\",field:\"rgba(0,0,0,0.035)\",hover:\"rgba(0,0,0,0.065)\",line:\"rgba(0,0,0,0.07)\",muted:\"rgba(0,0,0,0.55)\",fontSize:13,headingSize:18,labelSize:12,smallSize:11,lineHeight:1.4,weight:400,labelWeight:500,headingWeight:600,letterSpacing:\"-0.01em\",panelWidth:336,panelRadius:20,trayRadius:12,controlRadius:8,panelPadding:18,trayPadding:10,gap:8,controlHeight:36,iconButtonSize:32,shadow:\"0 1px 2px rgba(0,0,0,0.05)\"};// Frosted UI surfaces share a single blur. The illustration/card background stays\n// external, so backdrop-filter can sample the actual artwork or Framer background.\nconst studioGlass={filter:\"blur(16px)\",light:\"rgba(255,255,255,.9)\",dark:\"#1F1F1F\"};function studioGlassStyle(tint=studioUI.surface){return{background:tint===studioUI.surface?studioGlass.light:`color-mix(in srgb, ${tint} 90%, transparent)`,backdropFilter:studioGlass.filter,WebkitBackdropFilter:studioGlass.filter};}const studioMotion={ease:\"cubic-bezier(0.32, 0.72, 0, 1)\",bezier:[.32,.72,0,1],exit:\"cubic-bezier(0.4, 0, 0.2, 1)\",// Shape changes accelerate through the middle; surfaces land with the iOS sheet curve.\nmorph:\"cubic-bezier(0.32, 0.72, 0, 1)\",surface:\"cubic-bezier(0.32, 0.72, 0, 1)\",surfaceIn:360,surfaceOut:240,contentDelay:64,collapse:300,menu:180,feedback:120,quick:200,viewIn:180,viewOut:100,viewGap:80,ui:280,panel:360,reveal:560,settle:640,move:480,expand:360,stagger:64};const studioFontControl={fontSize:\"13px\",lineHeight:\"1.4em\",letterSpacing:\"-0.01em\"};const studioFontCSS=`@font-face{font-family:\"Studio General Sans\";src:url(\"${studioUI.headingFontURL}\") format(\"woff2\");font-weight:600;font-style:normal;font-display:swap}\n.sfd-root,.sfd-root *,.mm-brand-hub-demo,.mm-brand-hub-demo *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}`;// One observer per illustration. Recompute only when its Framer frame resizes;\n// animation ticks never measure layout. Everything, including type, scales together.\n// Fit the fixed-size stage inside its Framer frame. A frame shorter than the\n// stage used to clip the search bar and the top of the result card, because the\n// root centres an overflowing child. Give up the padding first, then scale the\n// whole illustration down. Never scales up.\nfunction useStageFit(ref,maxPad,width,height){const[fit,setFit]=useState({pad:maxPad,scale:1});useEffect(()=>{const node=ref.current;if(!node)return;const update=()=>{const frameWidth=node.clientWidth;const frameHeight=node.clientHeight;if(!frameWidth||!frameHeight)return;const pad=Math.max(0,Math.min(maxPad,(frameHeight-height)/2));const scale=Math.min(1,(frameWidth-pad*2)/width,(frameHeight-pad*2)/height);setFit(current=>current.pad===pad&&current.scale===scale?current:{pad,scale});};update();if(typeof ResizeObserver===\"undefined\")return;const observer=new ResizeObserver(update);observer.observe(node);return()=>observer.disconnect();},[ref,maxPad,width,height]);return fit;}function useStudioScale(ref,width=400,height=400){const[scale,setScale]=useState(1);useEffect(()=>{const node=ref.current;if(!node)return;const update=()=>{const w=node.clientWidth,h=node.clientHeight;if(w&&h)setScale(Math.min(w/width,h/height));};update();if(typeof ResizeObserver===\"undefined\")return;const observer=new ResizeObserver(update);observer.observe(node);return()=>observer.disconnect();},[ref,width,height]);return scale;}// Shared playback contract: a real initial state before entry, a 60% entry gate,\n// a 5% exit gate for clipped carousels, and no clocks in hidden browser tabs.\nfunction useStudioTimeline(ref,durations,options={}){const isStatic=useIsStaticRenderer();const[visible,setVisible]=useState(false),[near,setNear]=useState(false),[pageVisible,setPageVisible]=useState(true),[reduced,setReduced]=useState(false);const[frame,setFrame]=useState(0),[epoch,setEpoch]=useState(0),[finished,setFinished]=useState(false),[manual,setManual]=useState(false),[requested,setRequested]=useState(false);const remaining=useRef({frame:-1,ms:0});const final=durations.length-1,rate=Math.max(.5,Math.min(2,Number(options.speed)||1));const scrubbing=typeof options.step===\"number\"&&options.step>=0;useEffect(()=>{if(isStatic||typeof window===\"undefined\")return;const node=ref.current;if(!node)return;const mq=window.matchMedia(\"(prefers-reduced-motion: reduce)\");const media=()=>setReduced(mq.matches),page=()=>setPageVisible(!document.hidden);media();page();mq.addEventListener(\"change\",media);document.addEventListener(\"visibilitychange\",page);let io,warm;if(typeof IntersectionObserver===\"undefined\"){setVisible(true);setNear(true);}else{// Play gate: 60% in to start the clock, 5% out to stop it.\nio=new IntersectionObserver(([entry])=>{setVisible(previous=>entry.isIntersecting&&entry.intersectionRatio>=(previous?.05:.6));},{threshold:[0,.05,.6,1]});io.observe(node);// Warm gate, one screen early. Media decodes before anything moves, and the\n// rewind only happens once the illustration is far enough away to be unseen.\nwarm=new IntersectionObserver(([entry])=>{setNear(entry.isIntersecting);if(!entry.isIntersecting){setFrame(0);setFinished(false);setManual(false);remaining.current={frame:-1,ms:0};}},{rootMargin:\"400px\",threshold:0});warm.observe(node);}return()=>{io?.disconnect();warm?.disconnect();mq.removeEventListener(\"change\",media);document.removeEventListener(\"visibilitychange\",page);};},[isStatic,ref]);const active=visible&&pageVisible&&!isStatic&&!options.paused;const running=active&&!reduced&&!scrubbing&&!finished&&!manual&&(options.autoplay!==false||requested);useEffect(()=>{if(!running)return;if(remaining.current.frame!==frame)remaining.current={frame,ms:durations[frame]};const started=performance.now();const timer=window.setTimeout(()=>{remaining.current={frame:-1,ms:0};if(frame<final)setFrame(f=>f+1);else if(options.loop){setFrame(0);setEpoch(e=>e+1);}else setFinished(true);},remaining.current.ms/rate);return()=>{window.clearTimeout(timer);if(remaining.current.frame===frame)remaining.current.ms=Math.max(0,remaining.current.ms-(performance.now()-started)*rate);};},[running,frame,final,rate,options.loop,durations]);const replay=useCallback(()=>{remaining.current={frame:-1,ms:0};setRequested(true);setManual(false);setFinished(false);setFrame(reduced?final:0);setEpoch(e=>e+1);},[reduced,final]);const jump=useCallback((next,resume=false)=>{remaining.current={frame:-1,ms:0};setFrame(Math.max(0,Math.min(final,next)));setRequested(resume);setManual(!resume);setFinished(false);},[final]);return{frame:scrubbing?Math.max(0,Math.min(final,Math.round(options.step))):reduced?final:frame,epoch,active,near,running,reduced,isStatic,instant:isStatic||reduced||scrubbing,rate,replay,jump,interact:()=>setManual(true),manual,finished:!isStatic&&!scrubbing&&(finished||manual||reduced)};}// Framer String controls stay the source of truth for translated/custom copy.\n// Defaults can follow the active locale; an explicit translated value wins.\nfunction useStudioCopy(defaults,supplied,localeOverride,dictionaries){const{activeLocale}=useLocaleInfo();const code=(localeOverride||activeLocale?.code||\"en\").toLowerCase().replace(\"_\",\"-\");const localized=dictionaries?.[code]||dictionaries?.[code.split(\"-\")[0]]||{};const result={...defaults,...localized};for(const key of Object.keys(defaults)){const value=supplied?.[key];if(typeof value===\"string\"&&(value!==defaults[key]||!(key in localized)))result[key]=value;}return result;}const studioReplayCSS=`.studio-replay{position:absolute;right:12px;bottom:12px;width:32px;height:32px;padding:0;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(24,24,27,.04);background:rgba(255,255,255,.32);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);color:#292931;box-shadow:0 1px 4px rgba(24,24,27,.05);cursor:pointer;z-index:9;transition:background 120ms,transform 120ms ${studioMotion.ease};animation:studio-replay-enter 240ms ${studioMotion.ease} both}.studio-replay:hover{background:rgba(255,255,255,.44)}.studio-replay:active{transform:scale(.94)}.studio-replay:focus-visible{outline:2px solid #007aff;outline-offset:3px}@keyframes studio-replay-enter{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.studio-replay{animation:none;transition:none}}`;function StudioReplay({onClick,label=\"Replay animation\"}){return /*#__PURE__*/_jsx(\"button\",{type:\"button\",\"data-replay\":true,className:\"studio-replay\",onClick:onClick,\"aria-label\":label,title:label,children:/*#__PURE__*/_jsx(\"svg\",{width:\"14\",height:\"18\",viewBox:\"0 0 17.6074 23.2715\",\"aria-hidden\":\"true\",style:{fill:\"#fff\",stroke:\"none\",flexShrink:0},children:/*#__PURE__*/_jsx(\"path\",{d:\"M8.62305 20.9766C13.3887 20.9766 17.2461 17.1191 17.2461 12.3535C17.2461 7.58789 13.3887 3.73047 8.62305 3.73047C7.58789 3.73047 6.58203 3.91602 5.68359 4.25781C5.41992 4.35547 5.04883 4.54102 5.05859 5.03906C5.06836 5.64453 5.66406 5.92773 6.16211 5.73242C6.93359 5.44922 7.76367 5.29297 8.62305 5.29297C12.5195 5.29297 15.6738 8.44727 15.6738 12.3438C15.6738 16.2402 12.5195 19.3945 8.62305 19.3945C4.72656 19.3945 1.57227 16.2402 1.57227 12.3438C1.57227 11.9141 1.2207 11.5625 0.78125 11.5625C0.351562 11.5625 0 11.9141 0 12.3438C0 17.1191 3.85742 20.9766 8.62305 20.9766ZM5.97656 4.90234L9.54102 1.36719C9.6875 1.2207 9.75586 1.00586 9.75586 0.800781C9.75586 0.361328 9.42383 0 8.98438 0C8.75 0 8.56445 0.0976562 8.41797 0.244141L4.39453 4.32617C4.23828 4.48242 4.15039 4.69727 4.15039 4.91211C4.15039 5.12695 4.21875 5.32227 4.39453 5.49805L8.41797 9.54102C8.56445 9.67773 8.74023 9.76562 8.98438 9.76562C9.42383 9.76562 9.75586 9.42383 9.75586 8.97461C9.75586 8.76953 9.6875 8.57422 9.53125 8.42773Z\"})})});}const UI=studioUI;const MOTION=studioMotion;// The whole demo is one timeline. Each step names how long it holds, so the\n// pacing lives in one readable place instead of scattered across timeouts.\nconst STEPS=[{key:\"idle\",ms:620},{key:\"expand\",ms:760},{key:\"typing\",ms:1e3},{key:\"searching\",ms:700},{key:\"result\",ms:700},{key:\"click\",ms:260},{key:\"loadingLogos\",ms:700},{key:\"loadingColours\",ms:700},{key:\"loadingFonts\",ms:700},{key:\"morph\",ms:680},{key:\"fill\",ms:1800},{key:\"apply\",ms:900},{key:\"applyClick\",ms:260},{key:\"products\",ms:900},{key:\"hold\",ms:2600},{key:\"reset\",ms:900}];const INDEX=STEPS.reduce(function(acc,s,i){acc[s.key]=i;return acc;},{});const BAR_W=360;const BAR_H=56;// Breathing room between the Framer frame and the illustration stage.\nconst STAGE_PAD=24;const DEFAULT_MERCH={scale:.85,offsetY:-20,capSize:38,capX:59,capY:6};const DEFAULT_SHIRT={src:\"https://framerusercontent.com/images/RKWadnBuO1mrl6l8r6ihYHSOQ.webp\"};const DEFAULT_CAP={src:\"https://framerusercontent.com/images/CuDpuUl4XDvvMy1ZuQzDqHaCrY.webp\"};const DEFAULT_LABELS={replay:\"Replay animation\",next:\"Preview the next Brand Hub step\",title:\"Brand Hub\",search:\"Company name or website…\",use:\"Apply brand\",logos:\"Logos\",colours:\"Colours\",fonts:\"Fonts\",findingLogos:\"Finding logos…\",findingColours:\"Sampling colours…\",findingFonts:\"Detecting fonts…\",fontSample:\"Ag\",description:\"Brand Hub demonstration\"};// CSS masks use the SVG's alpha, so one upload becomes both light and dark\n// artwork without fetching, parsing or injecting the SVG into the page.\nfunction LogoArtwork({logo,size=\"68%\",colour}){const dimensions={width:size,height:size,display:\"block\",flexShrink:0};return logo.monochrome?/*#__PURE__*/_jsx(\"span\",{style:{...dimensions,backgroundColor:colour,maskImage:`url(${JSON.stringify(logo.image.src)})`,WebkitMaskImage:`url(${JSON.stringify(logo.image.src)})`,maskSize:\"contain\",WebkitMaskSize:\"contain\",maskPosition:\"center\",WebkitMaskPosition:\"center\",maskRepeat:\"no-repeat\",WebkitMaskRepeat:\"no-repeat\",maskMode:\"alpha\"}}):/*#__PURE__*/_jsx(\"img\",{src:sizedAsset(logo.image.src,512),alt:\"\",style:{...dimensions,objectFit:\"contain\"}});}const DEFAULT_LOGOS=[{image:{src:\"https://framerusercontent.com/images/NO8nQSlkK5RrV10vddF0sfBYGiw.webp\"},onDark:true},{image:{src:\"https://framerusercontent.com/images/kddinAZC4uwRkP6WSN05yQUPa3U.webp\"},onDark:false},{image:{src:\"https://framerusercontent.com/images/W3owNg4w1Qurzeh5cubYttLzg.webp\"},onDark:true},{image:{src:\"https://framerusercontent.com/images/V3NHKEtDm2VUkjcH1pTIkvm1bE4.webp\"},onDark:false}];function HubMark({size}){return /*#__PURE__*/_jsx(\"span\",{style:{width:size,height:size,flexShrink:0,borderRadius:Math.round(size*.28),background:\"linear-gradient(135deg, #f97316, #fb923c 32%, #60a5fa 78%, #2563eb)\",display:\"grid\",placeItems:\"center\"},children:/*#__PURE__*/_jsx(\"svg\",{width:Math.round(size*.62),height:Math.round(size*.62),viewBox:\"0 0 256 256\",fill:\"#fff\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M232,164H70.38c2.2-4.42,4.41-8.94,6.59-13.52l.79-1.66c13.52-1.65,28.69-11.3,45.38-28.87,5.31,12,14,24.73,27.59,27.29,5.26,1,13.51.79,22.93-5.82a57.86,57.86,0,0,0,9-7.91C190.9,141.2,205.68,148,232,148a12,12,0,0,0,0-24c-31,0-35.42-10.49-36-12.38.49-5.37-2.75-9.76-7.88-11.63s-11.17.78-14.22,5.46c-10,15.32-16.62,18.62-18.75,18.21-4.88-.91-12.39-15.54-15.44-30.09a12,12,0,0,0-21.13-5c-10.3,12.92-19.16,21.79-26.47,27.56,21.19-52.94,17-72.22,11.37-82.25C98.48,24.91,89.41,20,78,20,59.92,20,45.36,36.55,39,64.26c-3.45,15.1-4,31.81-1.46,45.85,2.65,14.71,8.36,25.7,16.68,32.23C50.69,149.78,47,157.06,43.47,164H24a12,12,0,0,0,0,24h6.7c-9.7,17.67-16.85,29.6-17,29.81a12,12,0,1,0,20.56,12.38C34.91,229.15,45.23,212,58,188H232a12,12,0,0,0,0-24ZM62.43,69.6C65.77,55,72.45,44,78,44c3.71,0,4.29,1,4.64,1.64,1.43,2.53,6.55,17.07-17.44,72.78a44.64,44.64,0,0,1-4-12.56C59.23,94.89,59.68,81.67,62.43,69.6Z\"})})});}/**\n * Brand Hub demo.\n *\n * A self-playing bento tile: a search circle widens into a bar, a domain types\n * itself in, the match drops in beneath, and the card grows into the filled\n * Brand Hub. Built from the studio's own controls — the hub mark, the asset\n * tiles — so it reads as the product rather than an illustration of it.\n *\n * Holds still on the canvas, when scrolled out of view, and for anyone who\n * asked for reduced motion.\n *\n * @framerIntrinsicWidth 460\n * @framerIntrinsicHeight 520\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function BrandHubDemo(props){const{domain=\"notion.com\",brandName=\"Notion\",logos,symbolSvg,wordmarkSvg,labels,showBrandFont=false,brandFont,brandFontName=\"Inter\",colours=[{name:\"Black\",hex:\"#111111\"},{name:\"White\",hex:\"#FFFFFF\"},{name:\"Sky\",hex:\"#0A85D1\"}],matchStyle=\"card\",merch,shirt,cap,surface=UI.surface,ink=UI.ink,accent=UI.accent,loop=false,speed=1,paused=false,stepIndex=-1,font,style}=props;const copy={...DEFAULT_LABELS,...labels};const website=domain.trim().replace(/^https?:\\/\\//i,\"\").replace(/\\/$/,\"\");const uiFont={fontFamily:UI.fontFamily,fontSize:UI.fontSize,fontWeight:UI.weight,lineHeight:UI.lineHeight,letterSpacing:UI.letterSpacing,textTransform:\"none\"};const specimenFont={...uiFont,fontSize:14,...brandFont,textTransform:\"none\"};const isStatic=useIsStaticRenderer();const rootRef=useRef(null);// The stage has a fixed height, and the root centres it. Without a fit\n// scale a frame shorter than the stage clips the search bar and the top of\n// the result card.\nconst stageHeight=showBrandFont?392:340;const{pad:stagePad,scale:fitScale}=useStageFit(rootRef,STAGE_PAD,studioUI.panelWidth,stageHeight);const[step,setStep]=useState(0);const[typed,setTyped]=useState(\"\");const[inView,setInView]=useState(false);const[pageVisible,setPageVisible]=useState(true);const[still,setStill]=useState(false);useEffect(()=>{if(isStatic)return;const media=window.matchMedia(\"(prefers-reduced-motion: reduce)\");const updateMotion=()=>setStill(media.matches);const updatePage=()=>setPageVisible(!document.hidden);updateMotion();updatePage();media.addEventListener(\"change\",updateMotion);document.addEventListener(\"visibilitychange\",updatePage);return()=>{media.removeEventListener(\"change\",updateMotion);document.removeEventListener(\"visibilitychange\",updatePage);};},[isStatic]);// Only run while it is actually on screen. A timeline ticking behind the\n// fold is wasted work and, on a long page, a lot of it.\nuseEffect(function(){if(isStatic||typeof window===\"undefined\")return;const el=rootRef.current;if(!el||!(\"IntersectionObserver\"in window)){setInView(true);return;}const io=new IntersectionObserver(function(entries){const e=entries[0];setInView(previous=>e.isIntersecting&&e.intersectionRatio>=(previous?.05:.6));if(e.intersectionRatio<.05){setStep(0);setTyped(\"\");}},{threshold:[0,.05,.6]});io.observe(el);return function(){io.disconnect();};},[isStatic]);// An image control cannot carry a default, so Framer passes [] and the\n// parameter default never fires. Fall back when nothing usable was supplied.\nconst supplied=(logos||[]).filter(function(l){return l&&l.image&&l.image.src;});const customSvgs=[symbolSvg,wordmarkSvg].filter(src=>Boolean(src));const customMarks=customSvgs.flatMap(src=>[{image:{src},onDark:true,monochrome:true},{image:{src},onDark:false,monochrome:true}]);const marks=customMarks.length?customMarks:supplied.length?supplied:brandName===\"Notion\"&&/^(www\\.)?notion\\.com$/i.test(website)?DEFAULT_LOGOS:[];const scrubbing=Number(stepIndex)>=0;const playing=!isStatic&&inView&&pageVisible&&!still&&!paused&&!scrubbing;useEffect(function(){if(!playing)return;if(!loop&&step===INDEX.hold)return;const rate=Math.max(.25,Number(speed)||1);const timer=setTimeout(function(){setStep(function(s){const next=s+1;if(next>=STEPS.length)return loop?0:STEPS.length-2;return next;});},STEPS[step].ms/rate);return function(){clearTimeout(timer);};},[step,playing,loop,speed]);const s=scrubbing?Math.min(STEPS.length-1,Math.max(0,Math.round(Number(stepIndex)))):isStatic||still?INDEX.hold:step;// Type the domain out across the typing step rather than per keystroke, so\n// the text always finishes exactly when the step does.\nuseEffect(function(){if(scrubbing){setTyped(s<INDEX.typing?\"\":s>INDEX.typing?website:website.slice(0,Math.ceil(website.length*.6)));return;}if(!playing){if(isStatic||still)setTyped(website);return;}if(step<INDEX.typing){setTyped(\"\");return;}if(step>INDEX.typing){setTyped(website);return;}const rate=Math.max(.25,Number(speed)||1);const per=STEPS[INDEX.typing].ms/rate/Math.max(1,website.length);let i=0;const t=setInterval(function(){i+=1;setTyped(website.slice(0,i));if(i>=website.length)clearInterval(t);},per);return function(){clearInterval(t);};},[step,playing,website,speed,isStatic,still,scrubbing,paused,s]);// On the canvas and under reduced motion, show the finished state — a\n// half-played animation frozen mid-way reads as a bug.\nconst loading=s>=INDEX.loadingLogos&&s<=INDEX.loadingFonts;const showResult=s>=INDEX.result&&s<=INDEX.click;const clicking=s===INDEX.click;const loadingTick=s-INDEX.loadingLogos;const opened=s>=INDEX.morph&&s<INDEX.reset;const filled=s>=INDEX.fill;const showProducts=s>=INDEX.products&&s<INDEX.reset;const showApply=s>=INDEX.apply&&s<INDEX.products;const applying=s===INDEX.applyClick;const m={...DEFAULT_MERCH,...merch};const expanded=s>=INDEX.expand&&s<INDEX.reset;const resetting=s===INDEX.reset;// The match row sits on a pale surface, so it needs the dark artwork.\nconst favicon=marks.filter(function(l){return l&&!l.onDark;})[0]||marks[0];function Mark({size,radius}){const px=size||22;return favicon?/*#__PURE__*/_jsx(LogoArtwork,{logo:favicon,size:px,colour:ink}):/*#__PURE__*/_jsx(\"span\",{style:{width:px,height:px,borderRadius:radius||6,flexShrink:0,background:ink,color:\"#fff\",display:\"grid\",placeItems:\"center\",fontSize:px*.55,fontWeight:700},children:brandName.slice(0,1)});}// Soft, interruptible transitions. No opposing scale animations.\nconst ease=MOTION.ease;// Extend the surface past the frame while keeping content and action fixed.\nconst cardBleed=\"max(400px, 100vh)\";const card={position:\"absolute\",left:0,right:0,top:0,background:surface,borderRadius:UI.panelRadius,boxShadow:`inset 0 0 0 1px ${UI.line}, ${UI.shadow}`,overflow:\"hidden\",contain:\"layout paint\",height:\"auto\",paddingBottom:cardBleed};const label={fontSize:\"0.923em\",fontWeight:500,letterSpacing:\"-0.01em\",textTransform:\"none\",color:\"rgba(0,0,0,0.55)\",margin:\"0 0 8px\"};const tray={background:UI.field,borderRadius:UI.trayRadius,padding:UI.trayPadding,display:\"flex\",gap:UI.gap,alignItems:\"center\"};function rise(on,delay){return{opacity:on?1:0,transform:on?\"translateY(0)\":\"translateY(4px)\",transition:\"opacity 0.4s \"+ease+\" \"+delay+\"ms, transform 0.4s \"+ease+\" \"+delay+\"ms\"};}// Plain, stationary trays. Only the artwork fades in, with a short stagger.\nconst rate=Math.max(.25,Number(speed)||1);const instant=isStatic||still||scrubbing;function reveal(delay){const visible=filled&&opened;const wait=visible?delay/rate:0;return{opacity:visible?1:0,transform:visible?\"translateY(0)\":\"translateY(4px)\",filter:visible?\"blur(0px)\":\"blur(1px)\",transition:instant?\"none\":`opacity ${MOTION.reveal/rate}ms ${ease} ${wait}ms, transform ${MOTION.settle/rate}ms ${ease} ${wait}ms, filter ${MOTION.reveal/rate}ms ${ease} ${wait}ms`};}return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,className:\"mm-brand-hub-demo\",\"data-animation-text-locked\":\"\",onCopyCapture:event=>{event.preventDefault();event.stopPropagation();},onCutCapture:event=>{event.preventDefault();event.stopPropagation();},onDragStartCapture:event=>event.preventDefault(),role:\"group\",\"aria-label\":copy.description,style:{...style,position:\"relative\",width:\"100%\",height:\"100%\",background:\"transparent\",overflow:\"hidden\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",padding:stagePad,boxSizing:\"border-box\",color:ink,...uiFont},children:[/*#__PURE__*/_jsxs(\"div\",{\"aria-hidden\":\"true\",style:{position:\"relative\",width:\"100%\",maxWidth:UI.panelWidth,height:stageHeight,flexShrink:0,zIndex:2,// Transform only — the stage keeps its box, so nothing\n// around it reflows as it hands over to the merch.\nopacity:showProducts||resetting?0:1,transform:\"scale(\"+(showProducts?.97:1)*fitScale+\")\",transition:\"opacity 0.4s \"+MOTION.ease+\", transform 0.55s \"+MOTION.ease,pointerEvents:showProducts?\"none\":undefined},children:[/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",left:\"50%\",top:30,zIndex:3,transform:\"translateX(-50%)\",height:BAR_H,boxSizing:\"border-box\",width:\"100%\",maxWidth:expanded?BAR_W:BAR_H,borderRadius:999,background:surface,boxShadow:\"inset 0 0 0 1px rgba(0,0,0,0.06), 0 4px 16px rgba(0,0,0,0.08)\",overflow:\"hidden\",opacity:opened?0:1,// Width is the whole effect, so it is the one layout property\n// worth animating. The bar is absolutely placed, so nothing\n// around it reflows while it grows.\ntransition:\"max-width 0.68s cubic-bezier(0.4, 0, 0.2, 1)\"+\", opacity 0.25s \"+ease},children:[/*#__PURE__*/_jsx(\"svg\",{width:\"19\",height:\"19\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"rgba(0,0,0,0.45)\",strokeWidth:\"2\",strokeLinecap:\"round\",style:{position:\"absolute\",left:expanded?22:(BAR_H-19)/2,top:(BAR_H-19)/2,display:\"block\",transition:\"left 0.68s cubic-bezier(0.4, 0, 0.2, 1)\",animation:loading||s===INDEX.searching?\"mm-bh-spin 0.9s linear infinite\":undefined,animationPlayState:playing?\"running\":\"paused\"},children:loading||s===INDEX.searching?/*#__PURE__*/_jsx(\"path\",{d:\"M21 12a9 9 0 1 1-6.2-8.5\"}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"11\",cy:\"11\",r:\"7\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M20 20l-3.5-3.5\"})]})}),/*#__PURE__*/_jsxs(\"span\",{style:{position:\"absolute\",left:51,right:matchStyle===\"inline\"?62:22,top:\"50%\",transform:\"translateY(-50%)\",fontSize:\"1.154em\",fontWeight:500,whiteSpace:\"nowrap\",minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",opacity:expanded?1:0,transition:\"opacity 0.2s \"+ease+(expanded?\" 0.18s\":\"\")},children:[matchStyle===\"inline\"&&showResult?/*#__PURE__*/_jsxs(_Fragment,{children:[website.slice(0,typed.length),/*#__PURE__*/_jsx(\"span\",{style:{color:\"rgba(0,0,0,0.32)\"},children:website.slice(typed.length)})]}):typed||(s===INDEX.typing?null:/*#__PURE__*/_jsx(\"span\",{style:{color:\"rgba(0,0,0,0.38)\",fontWeight:400},children:copy.search})),s===INDEX.typing&&/*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-block\",width:1.5,height:17,background:ink,marginLeft:1,verticalAlign:\"-3px\",animation:\"mm-caret 1s steps(1) infinite\",animationPlayState:playing?\"running\":\"paused\"}})]}),matchStyle===\"inline\"&&/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",right:16,top:13,width:30,height:30,borderRadius:\"50%\",display:\"grid\",placeItems:\"center\",flexShrink:0,background:clicking?ink:\"rgba(0,0,0,0.06)\",color:clicking?\"#fff\":\"rgba(0,0,0,0.5)\",transition:\"background 0.12s \"+ease+\", color 0.12s \"+ease,...rise(showResult,0)},children:/*#__PURE__*/_jsx(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2.4\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h13M12 5l7 7-7 7\"})})})]}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",left:0,right:0,top:100,zIndex:3,opacity:opened?0:1,transition:\"opacity 0.2s \"+ease},children:[matchStyle===\"row\"&&/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:10,width:\"100%\",maxWidth:BAR_W,marginLeft:\"auto\",marginRight:\"auto\",height:48,borderRadius:999,padding:\"0 11px\",boxSizing:\"border-box\",display:\"flex\",alignItems:\"center\",gap:10,background:clicking?\"rgba(0,0,0,0.06)\":\"rgba(0,0,0,0.035)\",transition:\"background 0.12s \"+ease,...rise(showResult,0)},children:[/*#__PURE__*/_jsx(Mark,{}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"1.000em\",fontWeight:500},children:brandName}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"0.923em\",color:\"rgba(0,0,0,0.4)\",marginLeft:\"auto\"},children:website})]}),matchStyle===\"list\"&&/*#__PURE__*/_jsx(\"div\",{style:{marginTop:8,width:\"100%\",maxWidth:BAR_W,marginLeft:\"auto\",marginRight:\"auto\",borderRadius:18,overflow:\"hidden\",padding:4,boxSizing:\"border-box\",background:\"#fff\",boxShadow:\"inset 0 0 0 1px rgba(0,0,0,0.07), 0 6px 20px rgba(0,0,0,0.08)\",...rise(showResult,0)},children:/*#__PURE__*/_jsxs(\"div\",{style:{height:40,borderRadius:999,padding:\"0 8px\",display:\"flex\",alignItems:\"center\",gap:9,background:clicking?\"rgba(0,0,0,0.08)\":\"rgba(0,0,0,0.045)\",transition:\"background 0.12s \"+ease},children:[/*#__PURE__*/_jsx(Mark,{size:18}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"0.962em\",fontWeight:500},children:brandName}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"0.885em\",color:\"rgba(0,0,0,0.4)\",marginLeft:\"auto\"},children:website})]})}),matchStyle===\"attached\"&&/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",maxWidth:BAR_W,margin:\"-8px auto 0\",borderRadius:20,padding:6,boxSizing:\"border-box\",background:\"#fff\",boxShadow:\"inset 0 0 0 1px rgba(0,0,0,0.07), 0 10px 24px rgba(0,0,0,0.10)\",...rise(showResult,0)},children:/*#__PURE__*/_jsxs(\"div\",{style:{height:44,borderRadius:999,padding:\"0 10px\",display:\"flex\",alignItems:\"center\",gap:10,background:clicking?\"rgba(0,0,0,0.07)\":\"transparent\",transition:\"background 0.12s \"+ease},children:[/*#__PURE__*/_jsx(Mark,{size:22,radius:6}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"1em\",fontWeight:500},children:brandName}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"0.885em\",color:\"rgba(0,0,0,0.4)\",marginLeft:\"auto\"},children:website})]})}),matchStyle===\"preview\"&&/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:10,width:\"100%\",maxWidth:BAR_W,marginLeft:\"auto\",marginRight:\"auto\",borderRadius:20,padding:12,background:\"#fff\",boxSizing:\"border-box\",boxShadow:\"inset 0 0 0 1px rgba(0,0,0,0.07), 0 6px 20px rgba(0,0,0,0.08)\",transform:clicking?\"scale(0.985)\":\"none\",transition:\"transform 0.12s \"+ease,...rise(showResult,0)},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:11},children:[/*#__PURE__*/_jsx(Mark,{size:34,radius:9}),/*#__PURE__*/_jsxs(\"span\",{children:[/*#__PURE__*/_jsx(\"span\",{style:{display:\"block\",fontSize:\"1.077em\",fontWeight:600},children:brandName}),/*#__PURE__*/_jsx(\"span\",{style:{display:\"block\",fontSize:\"0.923em\",color:\"rgba(0,0,0,0.45)\"},children:website})]})]}),/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",gap:5,marginTop:12},children:(colours||[]).slice(0,6).map(function(c,i){return /*#__PURE__*/_jsx(\"span\",{style:{width:24,height:24,borderRadius:7,background:c.hex,boxShadow:\"inset 0 0 0 1px rgba(0,0,0,0.09)\",...rise(showResult,90+i*45)}},i);})})]}),matchStyle===\"minimal\"&&/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:14,width:\"100%\",maxWidth:BAR_W,marginLeft:\"auto\",marginRight:\"auto\",padding:\"10px 8px 0\",boxSizing:\"border-box\",display:\"flex\",alignItems:\"center\",gap:10,borderTop:\"1px solid rgba(255,255,255,0.28)\",opacity:clicking?.6:1,transition:\"opacity 0.12s \"+ease,...rise(showResult,0)},children:[/*#__PURE__*/_jsx(Mark,{size:24,radius:7}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"1em\",fontWeight:500},children:brandName}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"0.885em\",color:\"rgba(0,0,0,0.4)\",marginLeft:\"auto\"},children:website})]}),matchStyle===\"card\"&&/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:10,width:\"100%\",maxWidth:BAR_W,marginLeft:\"auto\",marginRight:\"auto\",borderRadius:20,padding:12,display:\"flex\",boxSizing:\"border-box\",alignItems:\"center\",gap:11,background:\"#fff\",boxShadow:\"inset 0 0 0 1px rgba(0,0,0,0.07), 0 6px 20px rgba(0,0,0,0.08)\",transform:clicking?\"scale(0.985)\":\"none\",transition:\"transform 0.12s \"+ease,...rise(showResult,0)},children:[/*#__PURE__*/_jsx(Mark,{size:34,radius:9}),/*#__PURE__*/_jsxs(\"span\",{children:[/*#__PURE__*/_jsx(\"span\",{style:{display:\"block\",fontSize:\"1.077em\",fontWeight:600},children:brandName}),/*#__PURE__*/_jsx(\"span\",{style:{display:\"block\",fontSize:\"0.923em\",color:\"rgba(0,0,0,0.45)\"},children:website})]})]})]}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",top:102,left:0,right:0,marginLeft:\"auto\",marginRight:\"auto\",maxWidth:BAR_W,padding:UI.panelPadding,boxSizing:\"border-box\",borderRadius:20,background:surface,boxShadow:\"inset 0 0 0 1px rgba(0,0,0,0.07)\",pointerEvents:\"none\",...rise(loading,0)},children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",height:2,overflow:\"hidden\",background:\"rgba(0,0,0,0.06)\",marginBottom:14,borderRadius:999},children:/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",top:0,bottom:0,left:0,width:\"30%\",background:\"linear-gradient(90deg, transparent, #f97316 30%, #2563eb 70%, transparent)\",animation:\"mm-bh-hairline 1.4s cubic-bezier(0.45, 0, 0.55, 1) infinite alternate\",animationPlayState:playing&&loading?\"running\":\"paused\"}})}),[copy.findingLogos,copy.findingColours,copy.findingFonts].map((text,i)=>/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,minHeight:24,fontSize:\"1em\",fontWeight:400,color:i===loadingTick?ink:\"rgba(0,0,0,0.4)\",opacity:i>loadingTick?.5:1,transition:\"color 0.2s ease, opacity 0.2s ease\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{width:12,height:12,flexShrink:0,display:\"grid\",placeItems:\"center\"},children:i<loadingTick?/*#__PURE__*/_jsx(\"svg\",{width:\"12\",height:\"12\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2.6\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"polyline\",{points:\"20 6 9 17 4 12\"})}):i===loadingTick?/*#__PURE__*/_jsx(\"span\",{style:{width:6,height:6,borderRadius:\"50%\",background:ink,animation:\"mm-bh-pulse 1s ease-in-out infinite\",animationPlayState:playing?\"running\":\"paused\"}}):null}),text]},i))]}),/*#__PURE__*/_jsxs(\"div\",{style:{...card,opacity:opened?1:0,transform:opened?\"translateY(0)\":\"translateY(6px)\",transition:\"opacity 0.45s \"+ease+\" 0.12s, transform 0.6s \"+ease},children:[/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",padding:UI.panelPadding,pointerEvents:\"none\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:9,flexWrap:\"wrap\",marginBottom:16},children:[/*#__PURE__*/_jsx(HubMark,{size:26}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:UI.headingSize,whiteSpace:\"nowrap\",fontWeight:600,letterSpacing:\"-0.02em\"},children:copy.title}),/*#__PURE__*/_jsxs(\"span\",{style:{marginLeft:\"auto\",minWidth:0,maxWidth:\"48%\",width:\"max-content\",flex:\"0 1 auto\",height:26,borderRadius:999,padding:\"0 10px\",display:\"inline-flex\",alignItems:\"center\",gap:5,background:\"rgba(0,0,0,0.04)\",fontSize:\"0.885em\",color:\"rgba(0,0,0,0.55)\"},children:[/*#__PURE__*/_jsxs(\"svg\",{width:\"11\",height:\"11\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"12\",cy:\"12\",r:\"9\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M3 12h18M12 3a15 15 0 0 1 0 18a15 15 0 0 1 0-18\"})]}),/*#__PURE__*/_jsx(\"span\",{style:{overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"},children:website})]})]}),/*#__PURE__*/_jsx(\"p\",{style:label,children:copy.logos}),/*#__PURE__*/_jsx(\"div\",{style:{...tray,position:\"relative\",marginBottom:14},children:Array.from({length:marks.length||2},(_,i)=>i).map(function(i){const l=marks[i];return /*#__PURE__*/_jsx(\"span\",{style:{flex:\"0 1 46px\",minWidth:0,aspectRatio:\"1\",borderRadius:10,background:l?l.onDark?\"#33383D\":\"#fff\":i%2?\"#fff\":\"#33383D\",boxShadow:\"inset 0 0 0 1px rgba(0,0,0,0.06)\",display:\"grid\",placeItems:\"center\",overflow:\"hidden\",...reveal(i*MOTION.stagger)},children:l?/*#__PURE__*/_jsx(LogoArtwork,{logo:l,colour:l.onDark?\"#fff\":ink}):/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"1.308em\",fontWeight:700,color:i%2?ink:\"#fff\"},children:brandName.slice(0,1)})},i);})}),/*#__PURE__*/_jsx(\"p\",{style:label,children:copy.colours}),/*#__PURE__*/_jsx(\"div\",{style:{...tray,position:\"relative\",marginBottom:14,alignItems:\"flex-start\"},children:(colours||[]).slice(0,4).map(function(c,i){return /*#__PURE__*/_jsxs(\"span\",{style:{...reveal(260+i*MOTION.stagger),flex:\"0 1 46px\",minWidth:0,textAlign:\"center\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{display:\"block\",width:\"100%\",aspectRatio:\"1\",borderRadius:10,background:c.hex,boxShadow:\"inset 0 0 0 1px rgba(0,0,0,0.08)\"}}),/*#__PURE__*/_jsx(\"span\",{style:{display:\"block\",fontSize:\"0.769em\",color:\"rgba(0,0,0,0.45)\",marginTop:5,whiteSpace:\"nowrap\",overflow:\"hidden\",textOverflow:\"ellipsis\"},children:c.name})]},i);})}),showBrandFont&&/*#__PURE__*/_jsxs(\"div\",{children:[/*#__PURE__*/_jsx(\"p\",{style:label,children:copy.fonts}),/*#__PURE__*/_jsxs(\"div\",{style:{...tray,position:\"relative\",justifyContent:\"space-between\",gap:12,minHeight:40},children:[/*#__PURE__*/_jsx(\"span\",{style:{...specimenFont,...reveal(580),minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"},children:brandFontName}),/*#__PURE__*/_jsx(\"span\",{style:{...specimenFont,...reveal(580),fontSize:\"1.5em\",flexShrink:0},children:/*#__PURE__*/_jsx(\"span\",{style:{opacity:.6},children:copy.fontSample})})]})]})]}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:0,right:0,bottom:cardBleed,display:\"flex\",justifyContent:\"center\",padding:\"0 \"+UI.panelPadding+\"px \"+(UI.panelPadding+8)+\"px\",boxSizing:\"border-box\",background:\"linear-gradient(to top, \"+surface+\" 62%, transparent)\",pointerEvents:\"none\",opacity:showApply?1:0,transform:showApply?\"translateY(0)\":\"translateY(10px)\",transition:\"opacity 0.35s \"+ease+\", transform 0.5s \"+ease},children:/*#__PURE__*/_jsx(\"span\",{style:{height:UI.controlHeight+14,borderRadius:999,padding:\"0 28px\",display:\"inline-flex\",alignItems:\"center\",background:ink,color:\"#fff\",fontSize:\"1.077em\",fontWeight:UI.headingWeight,whiteSpace:\"nowrap\",boxShadow:\"0 8px 22px rgba(0,0,0,0.20)\",transform:applying?\"scale(0.96)\":\"scale(1)\",transition:\"transform 0.12s \"+ease},children:copy.use})})]})]}),/*#__PURE__*/_jsxs(\"div\",{\"aria-hidden\":\"true\",style:{position:\"absolute\",left:\"50%\",top:24,bottom:24,width:\"56%\",zIndex:1,pointerEvents:\"none\",opacity:showProducts?1:0,transform:\"translateX(-50%) translateY(\"+m.offsetY+\"px) scale(\"+(showProducts?m.scale:m.scale*.96)+\")\",transition:\"opacity 0.5s \"+MOTION.ease+\" 0.12s, transform 0.7s \"+MOTION.ease+\" 0.12s\"},children:[/*#__PURE__*/_jsx(\"img\",{src:sizedAsset(shirt&&shirt.src||DEFAULT_SHIRT.src,512),alt:\"\",style:{position:\"absolute\",left:\"50%\",top:0,height:\"100%\",width:\"auto\",display:\"block\",transform:\"translateX(-50%)\"}}),/*#__PURE__*/_jsx(\"img\",{src:sizedAsset(cap&&cap.src||DEFAULT_CAP.src,512),alt:\"\",style:{position:\"absolute\",left:m.capX+\"%\",bottom:m.capY+\"%\",height:m.capSize+\"%\",width:\"auto\",display:\"block\",opacity:showProducts?1:0,transform:showProducts?\"translateY(0)\":\"translateY(12px)\",transition:\"opacity 0.45s \"+MOTION.ease+\" 0.3s, transform 0.6s \"+MOTION.ease+\" 0.3s\"}})]}),!isStatic&&!scrubbing&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",\"aria-label\":copy.next,onClick:()=>setStep(s=>s<INDEX.result?INDEX.result:s<INDEX.fill?INDEX.fill:s<INDEX.products?INDEX.products:0),style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",padding:0,border:0,background:\"transparent\",cursor:\"pointer\",zIndex:5}}),!isStatic&&!scrubbing&&(s>=INDEX.hold||still)&&/*#__PURE__*/_jsx(StudioReplay,{label:copy.replay,onClick:()=>{setStep(0);setTyped(\"\");}}),/*#__PURE__*/_jsx(\"style\",{children:\"[data-animation-text-locked],[data-animation-text-locked] *{user-select:none!important;-webkit-user-select:none!important;-webkit-touch-callout:none}\"+studioReplayCSS}),/*#__PURE__*/_jsx(\"style\",{children:\" .mm-brand-hub-demo{container-type:inline-size;container-name:brand-hub} @media(prefers-reduced-motion:reduce){.mm-brand-hub-demo *{animation:none!important;transition:none!important}} @keyframes mm-caret{0%,49%{opacity:1}50%,100%{opacity:0}} @keyframes mm-bh-spin{to{transform:rotate(360deg)}} @keyframes mm-bh-hairline{to{left:70%}} @keyframes mm-bh-pulse{50%{opacity:0.3}}\"})]});}addPropertyControls(BrandHubDemo,{matchStyle:{type:ControlType.Enum,title:\"Match\",defaultValue:\"card\",options:[\"row\",\"list\",\"inline\",\"card\",\"attached\",\"preview\",\"minimal\"],optionTitles:[\"Row below\",\"Dropdown list\",\"Inline complete\",\"Result card\",\"Under the field\",\"Card with colours\",\"Quiet line\"],description:\"How the found brand appears before it is picked.\"},domain:{type:ControlType.String,title:\"Website\",defaultValue:\"notion.com\",preventLocalization:true},brandName:{type:ControlType.String,title:\"Brand\",defaultValue:\"Notion\",preventLocalization:true},shirt:{type:ControlType.ResponsiveImage,title:\"T-shirt\",description:\"Shown on the last beat, behind the Brand Hub card.\"},cap:{type:ControlType.ResponsiveImage,title:\"Cap\"},merch:{type:ControlType.Object,title:\"Merch shot\",description:\"Framing of the closing frame, after the card clears.\",controls:{scale:{type:ControlType.Number,title:\"Size\",min:.6,max:2.4,step:.02,defaultValue:DEFAULT_MERCH.scale},offsetY:{type:ControlType.Number,title:\"Move up\",min:-200,max:80,step:1,unit:\"px\",defaultValue:DEFAULT_MERCH.offsetY},capSize:{type:ControlType.Number,title:\"Cap size\",min:20,max:90,step:1,unit:\"%\",defaultValue:DEFAULT_MERCH.capSize},capX:{type:ControlType.Number,title:\"Cap left\",min:0,max:100,step:1,unit:\"%\",defaultValue:DEFAULT_MERCH.capX},capY:{type:ControlType.Number,title:\"Cap bottom\",min:-30,max:50,step:1,unit:\"%\",defaultValue:DEFAULT_MERCH.capY}},defaultValue:DEFAULT_MERCH},symbolSvg:{type:ControlType.File,title:\"Logo 1\",allowedFileTypes:[\"svg\"],description:\"Upload a transparent SVG. Light and dark versions are made automatically.\"},wordmarkSvg:{type:ControlType.File,title:\"Logo 2\",allowedFileTypes:[\"svg\"],description:\"Optional second SVG, for example the wordmark. Also appears on light and dark tiles.\"},logos:{type:ControlType.Array,title:\"Logos\",control:{type:ControlType.Object,controls:{image:{type:ControlType.ResponsiveImage,title:\"Logo\"},onDark:{type:ControlType.Boolean,title:\"Tile\",defaultValue:false,enabledTitle:\"Dark\",disabledTitle:\"Light\",description:\"White artwork needs a dark tile.\"}}},maxCount:4,hidden:()=>true},colours:{type:ControlType.Array,title:\"Colours\",control:{type:ControlType.Object,controls:{name:{type:ControlType.String,defaultValue:\"Colour\"},hex:{type:ControlType.Color,defaultValue:\"#000000\"}}},defaultValue:[{name:\"Black\",hex:\"#111111\"},{name:\"White\",hex:\"#FFFFFF\"},{name:\"Sky\",hex:\"#0A85D1\"}],maxCount:4},surface:{type:ControlType.Color,title:\"Card\",defaultValue:UI.surface},ink:{type:ControlType.Color,title:\"Ink\",defaultValue:UI.ink},accent:{type:ControlType.Color,title:\"Focus ring\",defaultValue:UI.accent},labels:{type:ControlType.Object,title:\"Texts\",buttonTitle:\"Edit texts\",description:\"All visible text can be edited here and translated with Framer Localization.\",controls:{title:{type:ControlType.String,title:\"Title\",defaultValue:DEFAULT_LABELS.title},search:{type:ControlType.String,title:\"Search\",defaultValue:DEFAULT_LABELS.search},use:{type:ControlType.String,title:\"Apply button\",defaultValue:DEFAULT_LABELS.use},logos:{type:ControlType.String,title:\"Logos label\",defaultValue:DEFAULT_LABELS.logos},colours:{type:ControlType.String,title:\"Colours label\",defaultValue:DEFAULT_LABELS.colours},fonts:{type:ControlType.String,title:\"Fonts label\",defaultValue:DEFAULT_LABELS.fonts},findingLogos:{type:ControlType.String,title:\"Loading logos\",defaultValue:DEFAULT_LABELS.findingLogos},findingColours:{type:ControlType.String,title:\"Loading colours\",defaultValue:DEFAULT_LABELS.findingColours},findingFonts:{type:ControlType.String,title:\"Loading fonts\",defaultValue:DEFAULT_LABELS.findingFonts},fontSample:{type:ControlType.String,title:\"Font sample\",defaultValue:DEFAULT_LABELS.fontSample},description:{type:ControlType.String,title:\"Accessible label\",defaultValue:DEFAULT_LABELS.description},replay:{type:ControlType.String,title:\"Replay label\",defaultValue:DEFAULT_LABELS.replay},next:{type:ControlType.String,title:\"Next label\",defaultValue:DEFAULT_LABELS.next}},defaultValue:DEFAULT_LABELS},showBrandFont:{type:ControlType.Boolean,title:\"Show font\",defaultValue:false,description:\"Show the brand's font below the colours. Adds height to the card.\"},brandFontName:{type:ControlType.String,title:\"Font name\",defaultValue:\"Inter\",preventLocalization:true,hidden:props=>!props.showBrandFont},brandFont:{type:ControlType.Font,title:\"Brand font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"14px\",variant:\"Regular\",lineHeight:\"1.4em\",letterSpacing:\"-0.01em\"},hidden:props=>!props.showBrandFont},loop:{type:ControlType.Boolean,title:\"Loop\",defaultValue:false},paused:{type:ControlType.Boolean,title:\"Paused\",defaultValue:false,description:\"Holds the timeline where it is.\"},stepIndex:{type:ControlType.Number,title:\"Step\",defaultValue:-1,min:-1,max:STEPS.length-1,step:1,displayStepper:true,description:\"-1 plays. 0–15 pins a step; 4 the match, 6–8 loading, 11–12 apply, 13–14 the merch.\"},speed:{type:ControlType.Number,title:\"Speed\",defaultValue:1,min:.4,max:2.5,step:.05,description:\"Above 1 plays faster. The whole cycle is about 11 seconds at 1.\"},font:{type:ControlType.Font,title:\"UI font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"13px\",variant:\"Regular\",letterSpacing:\"-0.01em\",lineHeight:\"1.4em\"}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BrandHubDemo\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"520\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"460\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BrandHubDemo.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{forwardRef,useCallback,useEffect,useLayoutEffect,useRef,useState}from\"react\";import{createPortal}from\"react-dom\";import{useIsStaticRenderer}from\"framer\";const useClientLayoutEffect=typeof window===\"undefined\"?useEffect:useLayoutEffect;const views=[{group:\"Front view\",image:\"T_SHIRT_ANGLE_1 1\"},{group:\"Back view\",image:\"T_SHIRT_ANGLE_2 1\"},{group:\"Left view\",image:\"T_SHIRT_ANGLE_4 1\"}];const ease=\"cubic-bezier(0.22, 1, 0.36, 1)\";const replayStyle={position:\"absolute\",right:12,bottom:12,width:32,height:32,display:\"grid\",placeItems:\"center\",padding:0,borderRadius:\"50%\",border:\"1px solid rgba(24,24,27,.04)\",background:\"rgba(255,255,255,.32)\",backdropFilter:\"blur(12px) saturate(1.2)\",WebkitBackdropFilter:\"blur(12px) saturate(1.2)\",color:\"#292931\",boxShadow:\"0 1px 4px rgba(24,24,27,.05)\",cursor:\"pointer\",zIndex:9};// Keep the Framer frame, responsive layout, images and text intact. Only the\n// six existing view/label entrances are controlled here, using their native timings.\nexport function withSeeEverySideReplay(Component){return /*#__PURE__*/forwardRef(function SeeEverySideReplay(props,forwardedRef){// A sibling style node interferes with Framer's native element hydration.\nuseEffect(()=>{if(document.getElementById(\"mm-animation-text-styles\"))return;const sheet=document.createElement(\"style\");sheet.id=\"mm-animation-text-styles\";sheet.textContent=\"[data-animation-text-locked],[data-animation-text-locked] *{user-select:none!important;-webkit-user-select:none!important;-webkit-touch-callout:none}\";document.head.appendChild(sheet);},[]);const[host,setHost]=useState(null);const[inView,setInView]=useState(false);const[pageVisible,setPageVisible]=useState(true);const[reduced,setReduced]=useState(false);const[finished,setFinished]=useState(false);const[replay,setReplay]=useState(0);const animations=useRef([]);const lastReplay=useRef(0);const isStatic=useIsStaticRenderer();const attach=useCallback(node=>{setHost(node);if(typeof forwardedRef===\"function\")forwardedRef(node);else if(forwardedRef)forwardedRef.current=node;},[forwardedRef]);useEffect(()=>{if(!host||isStatic)return;const previous=host.getAttribute(\"data-animation-text-locked\");host.setAttribute(\"data-animation-text-locked\",\"\");const prevent=event=>{event.preventDefault();event.stopPropagation();};const events=[\"copy\",\"cut\",\"dragstart\",\"selectstart\"];events.forEach(type=>host.addEventListener(type,prevent,true));return()=>{events.forEach(type=>host.removeEventListener(type,prevent,true));if(previous===null)host.removeAttribute(\"data-animation-text-locked\");else host.setAttribute(\"data-animation-text-locked\",previous);};},[host,isStatic]);useEffect(()=>{if(!host||isStatic)return;const media=window.matchMedia(\"(prefers-reduced-motion: reduce)\");const updateMotion=()=>setReduced(media.matches);const updatePage=()=>setPageVisible(!document.hidden);updateMotion();updatePage();media.addEventListener(\"change\",updateMotion);document.addEventListener(\"visibilitychange\",updatePage);const observer=new IntersectionObserver(([entry])=>{setInView(previous=>entry.isIntersecting&&entry.intersectionRatio>=(previous?.05:.6));},{threshold:[0,.05,.6,1]});observer.observe(host);return()=>{observer.disconnect();media.removeEventListener(\"change\",updateMotion);document.removeEventListener(\"visibilitychange\",updatePage);};},[host,isStatic]);useClientLayoutEffect(()=>{if(!host||isStatic||reduced)return;const current=[];for(const[index,view]of views.entries()){const group=host.querySelector(`[data-framer-name=\"${view.group}\"]`);const targets=[{node:group?.querySelector(`[data-framer-name=\"${view.image}\"]`),y:25,duration:550,delay:index*140},{node:group?.querySelector('[data-framer-name=\"button-2026\"]'),y:8,duration:320,delay:900+index*160}];for(const{node,y,duration,delay}of targets){if(!node||typeof node.animate!==\"function\")continue;const animation=node.animate([{opacity:0,transform:`translateY(${y}px) scale(.96)`},{opacity:1,transform:\"translateY(0px) scale(1)\"}],{duration,delay,easing:ease,fill:\"both\"});animation.pause();animation.currentTime=0;current.push(animation);}}animations.current=current;setFinished(false);return()=>{current.forEach(animation=>animation.cancel());animations.current=[];};},[host,isStatic,reduced]);useEffect(()=>{if(!host||isStatic)return;if(reduced){setFinished(true);return;}const current=animations.current;if(!inView){current.forEach(animation=>{animation.pause();animation.currentTime=0;});setFinished(false);return;}if(!pageVisible){current.forEach(animation=>animation.pause());return;}if(finished&&lastReplay.current===replay)return;if(lastReplay.current!==replay){current.forEach(animation=>{animation.pause();animation.currentTime=0;});lastReplay.current=replay;}let cancelled=false;current.forEach(animation=>animation.play());Promise.all(current.map(animation=>animation.finished)).then(()=>{if(!cancelled)setFinished(true);}).catch(()=>{});return()=>{cancelled=true;current.forEach(animation=>animation.pause());};},[host,isStatic,reduced,inView,pageVisible,replay,finished]);return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(Component,{...props,ref:attach}),!isStatic&&host&&finished&&/*#__PURE__*/createPortal(/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"mm-view-replay\",\"aria-label\":\"Replay animation\",title:\"Replay animation\",style:replayStyle,onClick:event=>{event.stopPropagation();if(!reduced){setFinished(false);setReplay(value=>value+1);}},children:/*#__PURE__*/_jsx(\"svg\",{width:\"14\",height:\"18\",viewBox:\"0 0 17.6074 23.2715\",\"aria-hidden\":\"true\",style:{fill:\"#fff\",stroke:\"none\",flexShrink:0},children:/*#__PURE__*/_jsx(\"path\",{d:\"M8.62305 20.9766C13.3887 20.9766 17.2461 17.1191 17.2461 12.3535C17.2461 7.58789 13.3887 3.73047 8.62305 3.73047C7.58789 3.73047 6.58203 3.91602 5.68359 4.25781C5.41992 4.35547 5.04883 4.54102 5.05859 5.03906C5.06836 5.64453 5.66406 5.92773 6.16211 5.73242C6.93359 5.44922 7.76367 5.29297 8.62305 5.29297C12.5195 5.29297 15.6738 8.44727 15.6738 12.3438C15.6738 16.2402 12.5195 19.3945 8.62305 19.3945C4.72656 19.3945 1.57227 16.2402 1.57227 12.3438C1.57227 11.9141 1.2207 11.5625 0.78125 11.5625C0.351562 11.5625 0 11.9141 0 12.3438C0 17.1191 3.85742 20.9766 8.62305 20.9766ZM5.97656 4.90234L9.54102 1.36719C9.6875 1.2207 9.75586 1.00586 9.75586 0.800781C9.75586 0.361328 9.42383 0 8.98438 0C8.75 0 8.56445 0.0976562 8.41797 0.244141L4.39453 4.32617C4.23828 4.48242 4.15039 4.69727 4.15039 4.91211C4.15039 5.12695 4.21875 5.32227 4.39453 5.49805L8.41797 9.54102C8.56445 9.67773 8.74023 9.76562 8.98438 9.76562C9.42383 9.76562 9.75586 9.42383 9.75586 8.97461C9.75586 8.76953 9.6875 8.57422 9.53125 8.42773Z\"})})}),/*#__PURE__*/_jsx(\"style\",{children:`.mm-view-replay:hover{background:rgba(255,255,255,.44)!important}.mm-view-replay:active{transform:scale(.94)}.mm-view-replay:focus-visible{outline:2px solid #007aff;outline-offset:3px}`})]}),host)]});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withSeeEverySideReplay\":{\"type\":\"reactHoc\",\"name\":\"withSeeEverySideReplay\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SeeEverySideReplay.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsStaticRenderer,useLocaleInfo}from\"framer\";import{useCallback,useEffect,useId,useMemo,useRef,useState}from\"react\";// Copied 1:1 from the shop navbar's table. The US market is a SEPARATE Odoo\n// website (75 / company 3) with its own category ids, so never reuse EU ids.\nconst LOCALES=[{lang:\"nl_NL\",websiteId:1,companyId:1,currency:41,shopPrefix:\"nl\"},{lang:\"en_GB\",websiteId:1,companyId:1,currency:41,shopPrefix:\"uk\"},{lang:\"de_DE\",websiteId:1,companyId:1,currency:41,shopPrefix:\"de\"},{lang:\"fr_FR\",websiteId:1,companyId:1,currency:41,shopPrefix:\"fr\"},{lang:\"es_ES\",websiteId:1,companyId:1,currency:41,shopPrefix:\"es\"},{lang:\"en_US\",websiteId:75,companyId:3,shopPrefix:\"us\"},{lang:\"it_IT\",websiteId:1,companyId:1,currency:41,shopPrefix:\"it\"},// EU English is the Framer site's default locale and carries no URL prefix.\n{lang:\"en\",websiteId:1,companyId:1,currency:41,shopPrefix:\"en\",apiLang:\"en_GB\"}];const DEFAULT_LOCALE=LOCALES[LOCALES.length-1];// The shop picks its Design Studio parents by English name, which silently\n// drops every category once Odoo answers in another language. Ids per market\n// give the same eight cards in every language. Order is the shop's order.\nconst CATEGORY_IDS={1:[\"46\",\"64\",\"45\",\"47\",\"62\",\"846\",\"63\",\"699\"],75:[\"271\",\"293\",\"286\",\"282\",\"266\",\"298\",\"305\"]};// Products before print: the broad row leads, the specialist one follows.\nconst TAB_IDS=[\"discover\",\"apparel\",\"print\",\"categories\"];const STUDIO_TYPES=[\"standard\",\"print\",\"sticker\",\"sticker_sheet\"];const EDITOR={standard:\"design\",print:\"print-studio\",sticker:\"sticker\",sticker_sheet:\"sticker-sheet\"};const PRODUCTS_PER_TYPE=24;// Responses are cached for the page's lifetime, keyed by the full market\n// context, so switching tabs or locales never refetches what is already known.\nconst CACHE=new Map;function cached(key,load){const hit=CACHE.get(key);if(hit)return hit;const run=load().catch(error=>{CACHE.delete(key);throw error;});CACHE.set(key,run);return run;}function safeOrigin(value,fallback){try{const u=new URL(value);if(u.protocol===\"https:\")return u.origin;}catch{}return fallback;}function imageURL(value){if(!value)return\"\";try{const u=new URL(value);return u.protocol===\"https:\"?u.href:\"\";}catch{return\"\";}}function fill(template,value){return(template||\"\").replace(/\\{(?:name|category)\\}/g,value);}// Framer's locale slug is the very set of prefixes the shop uses (nl, de, fr,\n// es, it, uk, us), so it maps onto a market directly. Matching on the language\n// code instead would send English (United States) to the EU website, which has\n// different category ids and prices.\nfunction resolveLocale(active,override){const pick=value=>LOCALES.find(l=>l.shopPrefix===value)||DEFAULT_LOCALE;const manual=(override||\"\").trim().toLowerCase();if(manual&&manual!==\"auto\")return pick(manual);const slug=(active?.slug||\"\").trim().toLowerCase();if(slug)return pick(slug);// The default locale carries an empty slug; fall back to the code for any\n// Framer version that does not expose one.\nconst code=(active?.code||\"\").trim().toLowerCase();if(!code)return DEFAULT_LOCALE;const regional={\"en-gb\":\"uk\",\"en-us\":\"us\"};return pick(regional[code]||code.split(/[-_]/)[0]);}function prefix(locale){return locale.shopPrefix===\"en\"?\"\":\"/\"+locale.shopPrefix;}function editorHref(shop,locale,slug,type,template){const q=new URLSearchParams({ref:\"studio-home\"});if(template)q.set(\"template\",template);return`${shop}${prefix(locale)}/shop/products/${encodeURIComponent(slug)}/${EDITOR[type]}?${q}`;}function printSlug(t){return`${(t.name||\"design\").toLowerCase().replace(/[^a-z0-9]+/g,\"-\").replace(/(^-|-$)/g,\"\")}-${t.pid}`;}// Every Odoo call is public: no cookies, no Authorization, no account data.\nfunction odooParams(locale){const lang=locale.apiLang||locale.lang;const params=new URLSearchParams({lang,company_id:String(locale.companyId),website_id:String(locale.websiteId)});if(locale.currency!=null)params.set(\"currency\",String(locale.currency));return params;}function odooHeaders(locale){const headers={Accept:\"application/json\",\"X-Platform-Lang\":locale.apiLang||locale.lang};if(locale.currency!=null)headers[\"X-Platform-Pricelist\"]=String(locale.currency);return headers;}function getJSON(url,init){return fetch(url,{credentials:\"omit\",...init}).then(r=>{if(!r.ok)throw new Error(`${url} responded ${r.status}`);return r.json();});}/** The image the catalogue prefers: the product's chosen colour variant, with\n *  the template shot as fallback. Mirrors the shop's preferredProductImage. */function productImage(product){const variantId=product?.preferred_variant_id||product?.display_variant_id;const variant=variantId?(product?.variants||[]).find(v=>v?.id===variantId):undefined;return imageURL(variant?.image||product?.image);}function loadCategories(api,locale,signal){const params=odooParams(locale);return cached(`cats:${api}:${params}`,()=>getJSON(`${api}/v1/websites/categories?${params}`,{headers:odooHeaders(locale),signal}).then(payload=>{const wanted=CATEGORY_IDS[locale.websiteId]||CATEGORY_IDS[1];const byId=new Map;for(const raw of payload.categories||[]){const id=String(raw?.id??\"\");if(!id||!wanted.includes(id)||raw?.show_on_shop===false)continue;const mapped={id,name:String(raw.name||\"\"),image:imageURL(raw?.featured_product?.image),children:(raw.childs||[]).filter(c=>c?.id&&c?.name&&c?.show_on_shop!==false).map(c=>({id:String(c.id),name:String(c.name),image:imageURL(c?.featured_product?.image),children:[]}))};// Odoo carries duplicate parents per market; the richest wins,\n    // the same tie-break the shop applies.\n    const previous=byId.get(id);if(!previous||mapped.children.length>previous.children.length)byId.set(id,mapped);}return wanted.flatMap(id=>{const category=byId.get(id);return category?[category]:[];});}));}// One request per studio type, because that is the only way Odoo will say which\n// editor a product opens in. Settled individually so one failing type costs its\n// own products and nothing else.\nfunction loadProducts(api,locale,categoryId,signal){const base=odooParams(locale);return cached(`products:${api}:${categoryId}:${base}`,async()=>{const groups=await Promise.allSettled(STUDIO_TYPES.map(async studioType=>{const params=new URLSearchParams(base);params.set(\"category_id\",categoryId);params.set(\"design_studio_active\",\"true\");params.set(\"design_studio_type\",studioType);params.set(\"limit\",String(PRODUCTS_PER_TYPE));params.set(\"page\",\"1\");const payload=await getJSON(`${api}/v1/products/products/mm?${params}`,{headers:odooHeaders(locale),signal});return(payload.data||[]).flatMap(p=>{const id=Number(p?.id);const slug=String(p?.slug||\"\");if(!id||!slug)return[];return[{id,name:String(p.name||\"\"),slug,image:productImage(p),studioType}];});}));const seen=new Set;return groups.flatMap(group=>group.status===\"fulfilled\"?group.value.filter(p=>seen.has(p.id)?false:(seen.add(p.id),true)):[]);});}// Templates come from the shop's own route, which strips Odoo's canvas_data.\n// Same-origin only, so this resolves to an empty list on the Framer canvas.\nfunction loadPrintTemplates(shop,signal){return cached(`print:${shop}`,()=>getJSON(`${shop}/api/print-studio/templates?studio_type=print`,{signal}).then(payload=>{const seen=new Set;return(payload.templates||[]).flatMap(t=>{const image=imageURL(t?.preview_front||t?.preview_back);const key=image||`__id_${t?.id}`;if(seen.has(key))return[];seen.add(key);if(!t?.product_template_id||t?.is_published===false)return[];return[{id:String(t.id),name:String(t.name||\"\"),image,back:t.has_back_content?imageURL(t.preview_back):\"\",pid:Number(t.product_template_id)}];});}));}function loadApparelTemplates(shop,locale,signal){const lang=locale.apiLang||locale.lang;return cached(`apparel:${shop}:${lang}`,()=>getJSON(`${shop}/api/studio-home/apparel-templates?lang=${encodeURIComponent(lang)}`,{signal}).then(payload=>(payload.templates||[]).filter(t=>t?.productSlug)));}function Arrow({back=false}){return /*#__PURE__*/_jsx(\"svg\",{width:\"16\",height:\"16\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.7\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":\"true\",children:/*#__PURE__*/_jsx(\"path\",{d:back?\"M14 5l-7 7 7 7\":\"M10 5l7 7-7 7\"})});}// Keep offscreen images out of the request queue until they approach the viewport.\nfunction useThumbnail(priority,source=\"\"){const ref=useRef(null);const[near,setNear]=useState(false);useEffect(()=>{if(priority||near)return;const el=ref.current;if(!el)return;if(typeof IntersectionObserver===\"undefined\"){setNear(true);return;}const observer=new IntersectionObserver(entries=>{if(entries.some(entry=>entry.isIntersecting)){setNear(true);observer.disconnect();}},{rootMargin:\"200px\"});observer.observe(el);return()=>observer.disconnect();},[priority,near,source]);return{ref,ready:priority||near};}function Photo({src,className=\"\",fallback,priority=false}){const url=imageURL(src);const[failed,setFailed]=useState(\"\");const{ref,ready}=useThumbnail(priority,url);if(!url||failed===url)return fallback?/*#__PURE__*/_jsx(\"span\",{className:\"sd-image-fallback\",\"aria-hidden\":\"true\",children:fallback}):null;return /*#__PURE__*/_jsx(\"img\",{ref:ref,src:ready?url:undefined,alt:\"\",loading:priority?\"eager\":\"lazy\",fetchPriority:priority?\"high\":\"low\",decoding:\"async\",className:className,onError:()=>setFailed(url)});}function ApparelMedia({item,priority=false}){const[failures,setFailures]=useState([]);const photo=imageURL(item.photo),preview=imageURL(item.preview);const hasPhoto=!!photo&&!failures.includes(photo),hasPreview=!!preview&&!failures.includes(preview);const{ref,ready}=useThumbnail(priority);return /*#__PURE__*/_jsxs(_Fragment,{children:[!hasPhoto&&!hasPreview&&/*#__PURE__*/_jsx(\"span\",{className:\"sd-image-fallback\",\"aria-hidden\":\"true\",children:item.name}),hasPhoto&&/*#__PURE__*/_jsx(\"img\",{ref:ref,src:ready?photo:undefined,alt:\"\",loading:priority?\"eager\":\"lazy\",fetchPriority:priority?\"high\":\"low\",decoding:\"async\",className:\"sd-photo\",onError:()=>setFailures(f=>[...f,photo])}),hasPreview&&/*#__PURE__*/_jsx(\"img\",{ref:hasPhoto?undefined:ref,src:ready?preview:undefined,alt:\"\",loading:\"lazy\",fetchPriority:hasPhoto?\"low\":priority?\"high\":\"low\",decoding:\"async\",className:`sd-photo ${hasPhoto?\"sd-apparel-preview\":\"\"}`,onError:()=>setFailures(f=>[...f,preview])})]});}function Skeletons({count,kind}){return /*#__PURE__*/_jsx(_Fragment,{children:Array.from({length:count},(_,i)=>/*#__PURE__*/_jsx(\"div\",{className:`sd-skeleton sd-${kind}`},i))});}function Card({name,subtitle,kind,href,onClick,children,newTab,icon,cta}){const content=/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"div\",{className:`sd-tile sd-${kind}`,children:[children,/*#__PURE__*/_jsx(\"span\",{className:\"sd-card-cta\",children:/*#__PURE__*/_jsxs(\"span\",{className:\"sd-pill\",children:[kind!==\"category\"&&/*#__PURE__*/_jsx(\"img\",{src:icon,width:\"16\",height:\"16\",alt:\"\"}),cta]})})]}),/*#__PURE__*/_jsx(\"span\",{className:\"sd-name\",children:name}),subtitle&&/*#__PURE__*/_jsx(\"span\",{className:\"sd-subtitle\",children:subtitle})]});return href?/*#__PURE__*/_jsx(\"a\",{className:\"sd-card\",href:href,target:newTab?\"_blank\":\"_self\",rel:newTab?\"noopener noreferrer\":undefined,children:content}):/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"sd-card\",onClick:onClick,children:content});}function Row({title,children,onAll,count,viewAllLabel,backLabel,nextLabel}){const ref=useRef(null);const[edges,setEdges]=useState({back:false,next:false});const initialized=useRef(false);// Grab and drag the row, the same way the product carousel works.\nconst[dragging,setDragging]=useState(false);const drag=useRef(null);const suppressClick=useRef(false);function dragStart(event){const el=ref.current;if(!el||event.button!==0)return;if(event.target.closest(\"button\"))return;suppressClick.current=false;drag.current={id:event.pointerId,start:event.clientX,offset:el.scrollLeft,moved:false};}function dragMove(event){const state=drag.current;const el=ref.current;if(!state||!el||state.id!==event.pointerId)return;const delta=event.clientX-state.start;// A few pixels of slack, so a plain click on a card still opens it.\nif(!state.moved&&Math.abs(delta)<6)return;if(!state.moved){state.moved=true;setDragging(true);event.currentTarget.setPointerCapture(event.pointerId);}event.preventDefault();suppressClick.current=true;const max=Math.max(0,el.scrollWidth-el.clientWidth);el.scrollLeft=Math.max(0,Math.min(max,state.offset-delta));}function dragEnd(event){if(drag.current?.id!==event.pointerId)return;drag.current=null;setDragging(false);if(event.currentTarget.hasPointerCapture(event.pointerId))event.currentTarget.releasePointerCapture(event.pointerId);}const measure=useCallback(()=>{const el=ref.current;if(!el)return;const body=el.parentElement;if(body){const rect=body.getBoundingClientRect();const scale=body.offsetWidth?rect.width/body.offsetWidth:1;const left=Math.max(0,rect.left/(scale||1));const right=Math.max(0,(document.documentElement.clientWidth-rect.right)/(scale||1));// The rail spans both viewport edges; left padding aligns its first\n// card. Heading and controls stay on the Framer content width.\nel.style.setProperty(\"--sd-bleed-left\",left+\"px\");el.style.setProperty(\"--sd-bleed-right\",right+\"px\");}const position=Math.max(0,Math.min(el.scrollLeft,el.scrollWidth-el.clientWidth));setEdges(previous=>{const next={back:position>4,next:position+el.clientWidth<el.scrollWidth-4};return previous.back===next.back&&previous.next===next.next?previous:next;});},[]);useEffect(()=>{measure();const el=ref.current;if(!el)return;if(!initialized.current){el.scrollLeft=0;initialized.current=true;}const obs=typeof ResizeObserver!==\"undefined\"?new ResizeObserver(measure):null;obs?.observe(el);if(el.parentElement)obs?.observe(el.parentElement);window.addEventListener(\"resize\",measure);return()=>{obs?.disconnect();window.removeEventListener(\"resize\",measure);};},[count,measure]);function scroll(direction){const el=ref.current;if(!el)return;el.scrollBy({left:direction*((el.parentElement?.clientWidth||el.clientWidth)*.9),behavior:window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches?\"auto\":\"smooth\"});}return /*#__PURE__*/_jsxs(\"section\",{className:\"sd-row\",\"aria-label\":title,children:[/*#__PURE__*/_jsxs(\"div\",{className:\"sd-row-heading\",children:[/*#__PURE__*/_jsx(\"h3\",{children:title}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"sd-view-all\",onClick:onAll,children:viewAllLabel})]}),/*#__PURE__*/_jsx(\"div\",{className:\"sd-row-body\",children:/*#__PURE__*/_jsx(\"div\",{className:\"sd-scroller\",ref:ref,onScroll:measure,style:{cursor:dragging?\"grabbing\":\"grab\"},onPointerDown:dragStart,onPointerMove:dragMove,onPointerUp:dragEnd,onPointerCancel:dragEnd,onClickCapture:event=>{if(!suppressClick.current)return;event.preventDefault();event.stopPropagation();suppressClick.current=false;},onDragStart:event=>event.preventDefault(),children:children})}),/*#__PURE__*/_jsxs(\"div\",{className:\"sd-row-arrows\",children:[/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"sd-row-arrow\",disabled:!edges.back,\"aria-label\":fill(backLabel,title),onClick:()=>scroll(-1),children:/*#__PURE__*/_jsx(Arrow,{back:true})}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"sd-row-arrow\",disabled:!edges.next,\"aria-label\":fill(nextLabel,title),onClick:()=>scroll(1),children:/*#__PURE__*/_jsx(Arrow,{})})]})]});}/**\n * The public Studio Home browser, adapted for a marketing page.\n * @framerIntrinsicWidth 1200\n * @framerIntrinsicHeight 1120\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n *//**\n * The stylesheet lives in <head>, not in the React tree.\n *\n * A <style> rendered inside a component makes React compare the server HTML\n * with the client HTML on hydration. When those differ it throws the whole\n * section away and rebuilds it in the browser, which shows up as a slow,\n * late-reacting page. A tag in <head> cannot mismatch.\n */const STYLE_ID=\"mm-start-designing-style\";function injectStyle(css){if(typeof document===\"undefined\")return;if(document.getElementById(STYLE_ID))return;const el=document.createElement(\"style\");el.id=STYLE_ID;el.textContent=css;document.head.appendChild(el);}export default function StartDesigning(props){useEffect(()=>injectStyle(CSS),[]);const{ink=\"#1d1d1f\",cardColor=\"#ededed\",cardWidth=224,initialTab=\"discover\",shopOrigin=\"https://www.mondaymerch.com\",apiOrigin=\"https://mondaymerch.com\",locale=\"auto\",newTab=false,tabDiscover=\"Discover\",tabPrint=\"Print templates\",tabApparel=\"Templates\",tabCategories=\"Categories\",ctaDesign=\"Design Now\",ctaBrowse=\"Browse\",viewAll=\"View all\",loadMore=\"Load more\",allCategories=\"All categories\",browseCategories=\"Browse categories\",tryAgain=\"Try again\",byline=\"Team Monday Merch\",allInCategory=\"All {name}\",emptyTemplatesTitle=\"No templates yet\",emptyTemplatesBody=\"Choose a category to start your own design.\",emptyProductsTitle=\"No products found\",emptyProductsBody=\"Choose another category to find a product to design.\",errorProductsTitle=\"Products unavailable\",errorProductsBody=\"Please try loading this category again.\",ariaSection=\"Design Studio\",ariaScrollBack=\"Scroll back in {name}\",ariaScrollNext=\"Scroll forward in {name}\",style}=props;const isStatic=useIsStaticRenderer();const id=useId();const{activeLocale}=useLocaleInfo();const market=useMemo(()=>resolveLocale(activeLocale,locale),[activeLocale?.code,activeLocale?.slug,locale]);const shop=safeOrigin(shopOrigin,\"https://www.mondaymerch.com\");const api=safeOrigin(apiOrigin,\"https://mondaymerch.com\");const icon=shop+\"/shop/color-wheel-studio.svg\";const[tab,setTab]=useState(initialTab);const[categories,setCategories]=useState([]);const[categoriesFailed,setCategoriesFailed]=useState(false);const[printTemplates,setPrintTemplates]=useState([]);const[apparelTemplates,setApparelTemplates]=useState([]);const[templatesSettled,setTemplatesSettled]=useState(false);const[parentId,setParentId]=useState(null);const[childId,setChildId]=useState(null);const[products,setProducts]=useState(null);const[productsFailed,setProductsFailed]=useState(false);const[retry,setRetry]=useState(0);const[limit,setLimit]=useState(36);const track=useRef(null);const tabsTop=useRef(null);const[line,setLine]=useState({left:0,width:0});const tabs=useMemo(()=>[{id:\"discover\",label:tabDiscover},{id:\"apparel\",label:tabApparel},{id:\"print\",label:tabPrint},{id:\"categories\",label:tabCategories}],[tabDiscover,tabApparel,tabPrint,tabCategories]);const activeTab=TAB_IDS.includes(tab)?tab:\"discover\";const parent=categories.find(c=>c.id===parentId);const child=parent?.children.find(c=>c.id===childId);const categoryId=childId||parentId;const categoryCards=!parentId?categories:!childId?parent?.children||[]:[];useEffect(()=>{setTab(initialTab);},[initialTab]);useEffect(()=>{setLimit(36);},[activeTab]);// Categories drive everything else, so they load first and on every market\n// change. A new market invalidates the open category too: its ids differ.\nuseEffect(()=>{if(isStatic)return;const controller=new AbortController;let live=true;setCategoriesFailed(false);loadCategories(api,market,controller.signal).then(list=>{if(live)setCategories(list);}).catch(()=>{if(live&&!controller.signal.aborted)setCategoriesFailed(true);});return()=>{live=false;controller.abort();};},[api,market,isStatic,retry]);useEffect(()=>{setParentId(null);setChildId(null);},[market.websiteId]);// Templates need the shop's own route, which only answers same-origin.\n// Off the shop domain this settles empty and the template rows stay hidden.\nuseEffect(()=>{if(isStatic||typeof window===\"undefined\")return;if(window.location.origin!==shop){setTemplatesSettled(true);return;}const controller=new AbortController;let live=true;Promise.allSettled([loadPrintTemplates(shop,controller.signal).then(list=>{if(live)setPrintTemplates(list);}),loadApparelTemplates(shop,market,controller.signal).then(list=>{if(live)setApparelTemplates(list);})]).then(()=>{if(live)setTemplatesSettled(true);});return()=>{live=false;controller.abort();};},[shop,market,isStatic]);// Cancelling the previous request keeps a fast category change from being\n// overwritten by the answer to the category before it.\nuseEffect(()=>{setProducts(null);setProductsFailed(false);if(isStatic||!categoryId)return;const controller=new AbortController;let live=true;loadProducts(api,market,categoryId,controller.signal).then(list=>{if(live)setProducts(list);}).catch(()=>{if(live&&!controller.signal.aborted)setProductsFailed(true);});return()=>{live=false;controller.abort();};},[api,market,categoryId,isStatic,retry]);// A fixed initial order keeps the first paint stable; a visit then gets its\n// own shuffle so the same templates are not always on top.\nconst[shuffleSeed,setShuffleSeed]=useState(0);useEffect(()=>{if(!isStatic)setShuffleSeed(1+Math.floor(Math.random()*4294967295));},[isStatic]);const shuffledPrint=useMemo(()=>shuffle(printTemplates,shuffleSeed),[printTemplates,shuffleSeed]);const shuffledApparel=useMemo(()=>shuffle(apparelTemplates,shuffleSeed),[apparelTemplates,shuffleSeed]);const measureTabs=useCallback(()=>{const el=track.current;const active=el?.querySelector(`[data-tab=\"${activeTab}\"]`);const top=tabsTop.current;const container=top?.parentElement;if(el&&top&&container){const buttons=Array.from(el.querySelectorAll('[role=\"tab\"]'));const gap=parseFloat(window.getComputedStyle(el).columnGap)||24;const required=buttons.reduce((width,button)=>width+button.offsetWidth,0)+gap*Math.max(0,buttons.length-1);const rect=container.getBoundingClientRect();const scale=container.offsetWidth?rect.width/container.offsetWidth:1;const extra=required>container.clientWidth+1?Math.max(0,(document.documentElement.clientWidth-rect.right)/(scale||1)):0;// Measured against the unexpanded width, so the expansion does not\n// switch itself off the moment it makes the last tab fit.\ntop.style.setProperty(\"--sd-tabs-bleed\",extra+\"px\");}if(el&&active)setLine({left:active.offsetLeft-el.scrollLeft,width:active.offsetWidth});},[activeTab]);useEffect(()=>{measureTabs();const el=track.current;if(!el||typeof ResizeObserver===\"undefined\")return;const observer=new ResizeObserver(measureTabs);observer.observe(el);if(tabsTop.current?.parentElement)observer.observe(tabsTop.current.parentElement);window.addEventListener(\"resize\",measureTabs);let alive=true;document.fonts?.ready.then(()=>{if(alive)measureTabs();});return()=>{alive=false;observer.disconnect();window.removeEventListener(\"resize\",measureTabs);};},[measureTabs]);function reveal(){const el=tabsTop.current;if(el&&el.getBoundingClientRect().top<0)el.scrollIntoView({block:\"start\",behavior:window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches?\"auto\":\"smooth\"});}function chooseTab(next){setTab(next);reveal();}function chooseCategory(c,fromDiscover=false){if(fromDiscover||!parentId){setParentId(c.id);setChildId(null);}else setChildId(c.id);setTab(\"categories\");reveal();}function retryNow(){CACHE.clear();setRetry(n=>n+1);}const renderPrint=(t,index)=>/*#__PURE__*/_jsxs(Card,{name:t.name,subtitle:byline,kind:\"print\",icon:icon,cta:ctaDesign,newTab:newTab,href:editorHref(shop,market,printSlug(t),\"print\",t.id),children:[/*#__PURE__*/_jsx(Photo,{priority:index<4,src:t.image,className:\"sd-ambient\"}),t.back&&/*#__PURE__*/_jsx(Photo,{priority:index<4,src:t.back,className:\"sd-print-back\"}),/*#__PURE__*/_jsx(Photo,{priority:index<4,src:t.image,className:t.back?\"sd-print-front\":\"sd-print-single\"})]},t.id);const renderApparel=(t,index)=>/*#__PURE__*/_jsx(Card,{name:t.name,subtitle:t.productName||byline,kind:\"apparel\",icon:icon,cta:ctaDesign,newTab:newTab,href:editorHref(shop,market,t.productSlug,\"standard\",t.id),children:/*#__PURE__*/_jsx(ApparelMedia,{item:t,priority:activeTab===\"apparel\"&&index<4})},t.id);const renderCategory=(c,fromDiscover=false)=>/*#__PURE__*/_jsx(Card,{name:c.name,kind:\"category\",icon:icon,cta:ctaBrowse,newTab:newTab,onClick:()=>chooseCategory(c,fromDiscover),children:/*#__PURE__*/_jsx(Photo,{src:c.image,className:\"sd-product-photo\",fallback:c.name})},c.id);const renderProduct=p=>/*#__PURE__*/_jsx(Card,{name:p.name,kind:\"product\",icon:icon,cta:ctaDesign,newTab:newTab,href:editorHref(shop,market,p.slug,p.studioType),children:/*#__PURE__*/_jsx(Photo,{src:p.image,className:\"sd-product-photo\",fallback:p.name})},p.id);const gridTemplates=activeTab===\"print\"?shuffledPrint:shuffledApparel;const templatesPending=!templatesSettled&&!isStatic;const productsPending=!!categoryId&&products===null&&!productsFailed;const variables={...style,position:\"relative\",width:\"100%\",height:\"auto\",overflow:\"visible\",color:ink,\"--sd-ink\":ink,\"--sd-card\":cardColor,\"--sd-card-width\":`${cardWidth}px`};return /*#__PURE__*/_jsx(\"section\",{className:\"mm-start-designing\",style:variables,\"aria-label\":ariaSection,\"data-static\":isStatic?\"true\":undefined,children:/*#__PURE__*/_jsxs(\"div\",{className:\"sd-inner\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"sd-tabs-top\",ref:tabsTop,children:[/*#__PURE__*/_jsx(\"div\",{className:\"sd-tabs\",role:\"tablist\",\"aria-label\":ariaSection,ref:track,onScroll:measureTabs,children:tabs.map((t,index)=>/*#__PURE__*/_jsx(\"button\",{type:\"button\",role:\"tab\",\"data-tab\":t.id,id:`${id}-tab-${t.id}`,\"aria-controls\":`${id}-panel`,\"aria-selected\":activeTab===t.id,tabIndex:activeTab===t.id?0:-1,onClick:()=>chooseTab(t.id),onKeyDown:e=>{const next=e.key===\"ArrowRight\"?(index+1)%tabs.length:e.key===\"ArrowLeft\"?(index+tabs.length-1)%tabs.length:e.key===\"Home\"?0:e.key===\"End\"?tabs.length-1:-1;if(next<0)return;e.preventDefault();setTab(tabs[next].id);track.current?.querySelector(`[data-tab=\"${tabs[next].id}\"]`)?.focus();},children:t.label},t.id))}),/*#__PURE__*/_jsx(\"span\",{className:\"sd-tab-line\",style:{transform:`translateX(${line.left}px)`,width:line.width},\"aria-hidden\":\"true\"})]}),/*#__PURE__*/_jsx(\"div\",{role:\"tabpanel\",id:`${id}-panel`,\"aria-labelledby\":`${id}-tab-${activeTab}`,tabIndex:0,children:/*#__PURE__*/_jsxs(\"div\",{className:\"sd-panel\",children:[activeTab===\"discover\"&&/*#__PURE__*/_jsxs(\"div\",{className:\"sd-discover\",children:[(templatesPending||!!shuffledApparel.length)&&/*#__PURE__*/_jsx(Row,{title:tabApparel,count:shuffledApparel.length,viewAllLabel:viewAll,backLabel:ariaScrollBack,nextLabel:ariaScrollNext,onAll:()=>chooseTab(\"apparel\"),children:shuffledApparel.length?shuffledApparel.map(renderApparel):/*#__PURE__*/_jsx(Skeletons,{count:6,kind:\"apparel\"})}),(templatesPending||!!shuffledPrint.length)&&/*#__PURE__*/_jsx(Row,{title:tabPrint,count:Math.min(shuffledPrint.length,16),viewAllLabel:viewAll,backLabel:ariaScrollBack,nextLabel:ariaScrollNext,onAll:()=>chooseTab(\"print\"),children:shuffledPrint.length?shuffledPrint.slice(0,16).map(renderPrint):/*#__PURE__*/_jsx(Skeletons,{count:6,kind:\"print\"})}),/*#__PURE__*/_jsx(Row,{title:tabCategories,count:categories.length,viewAllLabel:viewAll,backLabel:ariaScrollBack,nextLabel:ariaScrollNext,onAll:()=>{setParentId(null);setChildId(null);chooseTab(\"categories\");},children:categories.length?categories.map(c=>renderCategory(c,true)):/*#__PURE__*/_jsx(Skeletons,{count:6,kind:\"category\"})})]}),(activeTab===\"print\"||activeTab===\"apparel\")&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{className:\"sd-grid\",children:gridTemplates.length?activeTab===\"print\"?shuffledPrint.slice(0,limit).map(renderPrint):shuffledApparel.slice(0,limit).map(renderApparel):templatesPending&&/*#__PURE__*/_jsx(Skeletons,{count:8,kind:activeTab})}),!gridTemplates.length&&!templatesPending&&/*#__PURE__*/_jsxs(\"div\",{className:\"sd-empty\",children:[/*#__PURE__*/_jsx(\"h3\",{children:emptyTemplatesTitle}),/*#__PURE__*/_jsx(\"p\",{children:emptyTemplatesBody}),/*#__PURE__*/_jsxs(\"button\",{type:\"button\",className:\"sd-pill\",onClick:()=>chooseTab(\"categories\"),children:[browseCategories,\" \",/*#__PURE__*/_jsx(Arrow,{})]})]}),gridTemplates.length>limit&&/*#__PURE__*/_jsx(\"div\",{className:\"sd-more\",children:/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"sd-pill\",onClick:()=>setLimit(n=>n+36),children:loadMore})})]}),activeTab===\"categories\"&&/*#__PURE__*/_jsxs(_Fragment,{children:[parentId&&/*#__PURE__*/_jsxs(\"div\",{className:\"sd-breadcrumb\",children:[/*#__PURE__*/_jsxs(\"button\",{type:\"button\",className:\"sd-pill\",onClick:()=>{if(childId)setChildId(null);else setParentId(null);reveal();},children:[/*#__PURE__*/_jsx(Arrow,{back:true}),childId?parent?.name||tabCategories:allCategories]}),/*#__PURE__*/_jsx(\"span\",{children:child?.name||parent?.name})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"sd-category-level\",children:[!!categoryCards.length&&/*#__PURE__*/_jsx(\"div\",{className:\"sd-grid\",children:categoryCards.map(c=>renderCategory(c))}),!categories.length&&!categoriesFailed&&/*#__PURE__*/_jsx(\"div\",{className:\"sd-grid\",children:/*#__PURE__*/_jsx(Skeletons,{count:8,kind:\"category\"})}),categoryId&&/*#__PURE__*/_jsxs(_Fragment,{children:[!!categoryCards.length&&!!products?.length&&/*#__PURE__*/_jsx(\"h3\",{className:\"sd-products-heading\",children:fill(allInCategory,parent?.name||\"\")}),/*#__PURE__*/_jsxs(\"div\",{className:\"sd-grid\",\"aria-busy\":productsPending,children:[products?.map(renderProduct),productsPending&&/*#__PURE__*/_jsx(Skeletons,{count:8,kind:\"product\"})]}),!products?.length&&!productsPending&&/*#__PURE__*/_jsxs(\"div\",{className:\"sd-empty\",children:[/*#__PURE__*/_jsx(\"h3\",{children:productsFailed?errorProductsTitle:emptyProductsTitle}),/*#__PURE__*/_jsx(\"p\",{children:productsFailed?errorProductsBody:emptyProductsBody}),productsFailed?/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"sd-pill\",onClick:retryNow,children:tryAgain}):/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"sd-pill\",onClick:()=>{setParentId(null);setChildId(null);},children:allCategories})]})]}),categoriesFailed&&!categories.length&&/*#__PURE__*/_jsxs(\"div\",{className:\"sd-empty\",children:[/*#__PURE__*/_jsx(\"h3\",{children:errorProductsTitle}),/*#__PURE__*/_jsx(\"p\",{children:errorProductsBody}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"sd-pill\",onClick:retryNow,children:tryAgain})]})]},`${parentId}:${childId}`)]})]},activeTab)})]})});}// Stable per-visit ranks: a slow template response can join the list without\n// reshuffling what the visitor is already looking at.\nfunction shuffle(items,seed){function rank(id){let hash=(seed^2166136261)>>>0;for(let i=0;i<id.length;i++)hash=Math.imul(hash^id.charCodeAt(i),16777619);hash=Math.imul(hash^hash>>>16,2246822507);hash=Math.imul(hash^hash>>>13,3266489909);return(hash^hash>>>16)>>>0;}return items.map(item=>({item,rank:rank(item.id)})).sort((a,b)=>a.rank-b.rank||a.item.id.localeCompare(b.item.id)).map(entry=>entry.item);}const CSS=`\n.mm-start-designing {box-sizing:border-box;min-width:0;isolation:isolate;font-family:Inter,Arial,sans-serif;container-type:inline-size;overflow:visible;-webkit-font-smoothing:antialiased}\n.mm-start-designing *{box-sizing:border-box}\n.mm-start-designing button,.mm-start-designing a{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}\n.mm-start-designing button{border:0;cursor:pointer;background:none;padding:0}\n.mm-start-designing a{text-decoration:none}\n.mm-start-designing button:focus-visible,.mm-start-designing a:focus-visible{outline:2px solid #007aff;outline-offset:4px}\n.mm-start-designing .sd-inner{width:100%;min-width:0;margin:0;padding:0}\n.mm-start-designing .sd-tabs-top{position:relative;width:calc(100% + var(--sd-tabs-bleed,0px));max-width:none;border-bottom:1px solid rgba(0,0,0,.05);margin-bottom:28px;scroll-margin-top:88px}\n.mm-start-designing .sd-tabs{display:flex;align-items:flex-end;gap:24px;overflow-x:auto;scrollbar-width:none;min-width:0}\n.mm-start-designing .sd-tabs::-webkit-scrollbar,.mm-start-designing .sd-scroller::-webkit-scrollbar{display:none}\n.mm-start-designing .sd-tabs button{padding:12px 0;white-space:nowrap;flex:none;font-size:14px;line-height:20px;color:color-mix(in srgb,var(--sd-ink) 82%,transparent);transition:color 300ms ease-out}\n.mm-start-designing .sd-tabs button[aria-selected=true],.mm-start-designing .sd-tabs button:hover{color:var(--sd-ink)}\n.mm-start-designing .sd-tabs button[aria-selected=true]{font-weight:500}\n.mm-start-designing .sd-tab-line{position:absolute;bottom:-1px;left:0;height:2px;background:var(--sd-ink);transition:transform 420ms cubic-bezier(.22,1,.36,1),width 420ms cubic-bezier(.22,1,.36,1);pointer-events:none}\n.mm-start-designing .sd-panel{animation:sd-panel-in 340ms cubic-bezier(.22,1,.36,1) both}\n.mm-start-designing .sd-discover{display:flex;flex-direction:column;gap:44px}\n.mm-start-designing .sd-row-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}\n.mm-start-designing h3{font-family:\"General Sans\",Inter,sans-serif;font-size:20px;font-weight:600;line-height:1.4;letter-spacing:-.02em;margin:0}\n.mm-start-designing .sd-view-all{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;min-width:80px;height:32px;margin:0;padding:0;font-size:14px;font-weight:500;line-height:20px;white-space:nowrap;flex-shrink:0;color:#007aff;opacity:1;text-align:right}\n.mm-start-designing .sd-view-all:hover{color:#0066dd}\n.mm-start-designing .sd-view-all svg{display:block;width:16px;height:16px;flex:0 0 16px}\n.mm-start-designing .sd-row-body{position:relative}\n.mm-start-designing .sd-scroller{width:calc(100% + var(--sd-bleed-left,0px) + var(--sd-bleed-right,0px));max-width:none;display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;direction:ltr;overflow-anchor:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;padding:0 0 0 var(--sd-bleed-left,0px);margin:0 0 0 calc(-1 * var(--sd-bleed-left,0px));scroll-padding-left:var(--sd-bleed-left,0px)}\n.mm-start-designing .sd-scroller>.sd-card,.mm-start-designing .sd-scroller>.sd-skeleton{width:var(--sd-card-width);flex:0 0 var(--sd-card-width)}\n.mm-start-designing .sd-card{display:block;text-align:left;min-width:0}\n.mm-start-designing .sd-tile{position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.1);background:var(--sd-card);border-radius:16px;width:100%;isolation:isolate}\n.mm-start-designing .sd-print{aspect-ratio:1/.72}\n.mm-start-designing .sd-apparel{aspect-ratio:4/5}\n.mm-start-designing .sd-category,.mm-start-designing .sd-product{aspect-ratio:1}\n.mm-start-designing .sd-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}\n.mm-start-designing .sd-apparel-preview{opacity:0;transform:scale(1.02);transition:opacity 280ms cubic-bezier(.22,1,.36,1),transform 280ms cubic-bezier(.22,1,.36,1)}\n.mm-start-designing .sd-card:is(:hover,:focus-visible) .sd-apparel-preview{opacity:1;transform:scale(1)}\n.mm-start-designing .sd-product-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:24px;transition:transform 300ms ease}\n.mm-start-designing .sd-card:is(:hover,:focus-visible) .sd-product-photo{transform:scale(1.08)}\n.mm-start-designing .sd-image-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;font-size:17px;font-weight:600}\n.mm-start-designing .sd-ambient{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(30px) saturate(1.4);transform:scale(1.35);opacity:.16}\n.mm-start-designing .sd-print-back,.mm-start-designing .sd-print-front,.mm-start-designing .sd-print-single{position:absolute;height:auto;transition:transform 400ms ease}\n.mm-start-designing .sd-print-back{width:40%;left:18%;top:21%;box-shadow:0 8px 22px rgba(0,0,0,.18)}\n.mm-start-designing .sd-print-front{width:44%;left:40%;top:40%;box-shadow:0 14px 32px rgba(0,0,0,.26)}\n.mm-start-designing .sd-print-single{width:44%;left:28%;top:14%;box-shadow:0 14px 32px rgba(0,0,0,.26)}\n.mm-start-designing .sd-card:is(:hover,:focus-visible) .sd-print-back{transform:translate(-3%,-2%) rotate(-1.5deg)}\n.mm-start-designing .sd-card:is(:hover,:focus-visible) .sd-print-front{transform:translate(2%,2%) rotate(1deg)}\n.mm-start-designing .sd-card:is(:hover,:focus-visible) .sd-print-single{transform:translateY(-2%) scale(1.03)}\n.mm-start-designing .sd-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;line-height:21px;margin-top:10px}\n.mm-start-designing .sd-subtitle{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:18px;opacity:.6}\n.mm-start-designing .sd-card-cta .sd-pill{font-weight:600}\n.mm-start-designing .sd-card-cta{position:absolute;inset:auto 0 16px;display:flex;justify-content:center;opacity:0;transform:translateY(4px);transition:opacity 260ms cubic-bezier(.22,1,.36,1),transform 260ms cubic-bezier(.22,1,.36,1);pointer-events:none}\n.mm-start-designing .sd-card:is(:hover,:focus-visible) .sd-card-cta{opacity:1;transform:translateY(0)}\n.mm-start-designing .sd-pill{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border:1px solid rgba(0,0,0,.06);border-radius:999px;background:#fff;color:#1d1d1f;font-size:12px;line-height:18px;white-space:nowrap}\n.mm-start-designing .sd-row-arrows{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}\n.mm-start-designing .sd-row-arrow{border:0;border-radius:50%;width:36px;height:36px;background:rgba(0,0,0,.06);color:rgba(0,0,0,.88);display:grid;place-items:center}\n.mm-start-designing .sd-row-arrow:disabled{opacity:.35;cursor:default}\n.mm-start-designing .sd-row-arrow:not(:disabled):hover{background:rgba(0,0,0,.10)}\n.mm-start-designing .sd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--sd-card-width)),1fr));gap:24px 20px;align-content:start}\n.mm-start-designing .sd-breadcrumb{display:flex;align-items:center;gap:12px;margin:0 0 24px;font-size:13px}\n.mm-start-designing .sd-products-heading{margin:32px 0 16px}\n.mm-start-designing .sd-category-level{animation:sd-panel-in 320ms cubic-bezier(.22,1,.36,1) both}\n.mm-start-designing .sd-empty{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;padding:40px 20px}\n.mm-start-designing .sd-empty h3{font-size:20px;line-height:1.2}\n.mm-start-designing .sd-empty p{font-size:14px;line-height:1.5;opacity:.65;margin:0;max-width:320px}\n.mm-start-designing .sd-more{display:flex;justify-content:center;margin-top:32px}\n.mm-start-designing .sd-skeleton{border-radius:16px;background:var(--sd-card);animation:sd-pulse 1200ms ease-in-out infinite alternate}\n@keyframes sd-panel-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}\n@keyframes sd-pulse{to{opacity:.4}}\n@container (max-width:600px){.mm-start-designing .sd-tabs{gap:22px}.mm-start-designing .sd-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.mm-start-designing .sd-discover{gap:32px}.mm-start-designing .sd-product-photo{padding:16px}.mm-start-designing .sd-tile,.mm-start-designing .sd-skeleton{border-radius:12px}}\n@media(hover:none){.mm-start-designing .sd-card-cta{opacity:1;transform:none}.mm-start-designing .sd-card-cta .sd-pill{padding:6px 10px;font-size:11px;font-weight:600}}\n.mm-start-designing[data-static=true] *{animation:none!important;transition:none!important}\n@media(prefers-reduced-motion:reduce){.mm-start-designing *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}\n`;addPropertyControls(StartDesigning,{initialTab:{type:ControlType.Enum,title:\"Start tab\",options:TAB_IDS,optionTitles:[\"Discover\",\"Templates\",\"Print templates\",\"Categories\"],defaultValue:\"discover\"},ink:{type:ControlType.Color,title:\"Text\",defaultValue:\"#1d1d1f\"},cardColor:{type:ControlType.Color,title:\"Cards\",defaultValue:\"#ededed\"},cardWidth:{type:ControlType.Number,title:\"Card width\",defaultValue:224,min:160,max:320,step:8},shopOrigin:{type:ControlType.String,title:\"Shop origin\",description:\"Where the editor links point, and the template source.\",defaultValue:\"https://www.mondaymerch.com\",// URLs are not content: keep auto-translate away from them.\npreventLocalization:true},apiOrigin:{type:ControlType.String,title:\"API origin\",description:\"Public Odoo API for categories and products.\",defaultValue:\"https://mondaymerch.com\",preventLocalization:true},locale:{type:ControlType.String,title:\"Market\",description:\"auto follows the page locale. Override with en, nl, de, fr, es, it, uk or us.\",defaultValue:\"auto\",preventLocalization:true},newTab:{type:ControlType.Boolean,title:\"New tab\",defaultValue:false},tabDiscover:{type:ControlType.String,title:\"Tab 1\",defaultValue:\"Discover\"},tabPrint:{type:ControlType.String,title:\"Tab 3\",defaultValue:\"Print templates\"},tabApparel:{type:ControlType.String,title:\"Tab 2\",description:\"Every non-print product: apparel, drinkware, bags.\",defaultValue:\"Templates\"},tabCategories:{type:ControlType.String,title:\"Tab 4\",defaultValue:\"Categories\"},ctaDesign:{type:ControlType.String,title:\"Design CTA\",defaultValue:\"Design Now\"},ctaBrowse:{type:ControlType.String,title:\"Browse CTA\",defaultValue:\"Browse\"},viewAll:{type:ControlType.String,title:\"View all\",defaultValue:\"View all\"},loadMore:{type:ControlType.String,title:\"Load more\",defaultValue:\"Load more\"},allCategories:{type:ControlType.String,title:\"All categories\",defaultValue:\"All categories\"},browseCategories:{type:ControlType.String,title:\"Browse categories\",defaultValue:\"Browse categories\"},tryAgain:{type:ControlType.String,title:\"Try again\",defaultValue:\"Try again\"},byline:{type:ControlType.String,title:\"Card byline\",defaultValue:\"Team Monday Merch\"},allInCategory:{type:ControlType.String,title:\"Products heading\",description:\"{name} or {category} is replaced by the category name.\",defaultValue:\"All {name}\"},emptyTemplatesTitle:{type:ControlType.String,title:\"No templates title\",defaultValue:\"No templates yet\"},emptyTemplatesBody:{type:ControlType.String,title:\"No templates text\",defaultValue:\"Choose a category to start your own design.\",displayTextArea:true},emptyProductsTitle:{type:ControlType.String,title:\"No products title\",defaultValue:\"No products found\"},emptyProductsBody:{type:ControlType.String,title:\"No products text\",defaultValue:\"Choose another category to find a product to design.\",displayTextArea:true},errorProductsTitle:{type:ControlType.String,title:\"Error title\",defaultValue:\"Products unavailable\"},errorProductsBody:{type:ControlType.String,title:\"Error text\",defaultValue:\"Please try loading this category again.\",displayTextArea:true},ariaSection:{type:ControlType.String,title:\"Section label\",description:\"Screen reader only.\",defaultValue:\"Design Studio\"},ariaScrollBack:{type:ControlType.String,title:\"Scroll back label\",description:\"Screen reader only. {name} is the row title.\",defaultValue:\"Scroll back in {name}\"},ariaScrollNext:{type:ControlType.String,title:\"Scroll forward label\",description:\"Screen reader only. {name} is the row title.\",defaultValue:\"Scroll forward in {name}\"}});// The chunk loads before the component renders, so the styles are in place\n// for the first paint.\ninjectStyle(CSS);\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StartDesigning\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./StartDesigning.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}from\"framer-motion\";const PAIRS=[{\"code\":\"A14\",\"name\":\"Rindleby Classic T-shirt\",\"design\":\"https://framerusercontent.com/images/qWEk9O6gbLVDeB7jFF6LpiNNpc.jpg\",\"photo\":\"https://framerusercontent.com/images/GYLkYlDcJ23yceajjQIXqJiR3c.webp\",\"size\":[1280,1600],\"box\":[230,365,819,875],\"scale\":94,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":48,\"photoZoom\":1,\"brightness\":.82},{\"code\":\"A20\",\"name\":\"Bite, Sip, Vibe Dual Color Shopper Tote\",\"design\":\"https://framerusercontent.com/images/pIc4w2e4etCwxDPyAG1dluLk0g.webp\",\"photo\":\"https://framerusercontent.com/images/2rC7fbyQE3CvIFcz4e0vzHkXWE.webp\",\"size\":[800,1e3],\"box\":[138,178,529,646],\"scale\":94,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":50,\"photoZoom\":1,\"brightness\":.84},{\"code\":\"A37\",\"name\":\"Fiery Eyes Skull Made in Europe T-Shirt\",\"design\":\"https://framerusercontent.com/images/buhk1qF4wIWtsKbKjihmbuXyXVk.webp\",\"photo\":\"https://framerusercontent.com/images/bMvzVlOyCe3ZxbadLOW9RjFEU.webp\",\"size\":[800,1e3],\"box\":[127,228,545,545],\"scale\":94,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":48,\"photoZoom\":1,\"brightness\":.8},{\"code\":\"A43\",\"name\":\"Rindleby Premium Hoodie\",\"design\":\"https://framerusercontent.com/images/OH6EFhDijJlqUyq9YE48ka2A.jpg\",\"photo\":\"https://framerusercontent.com/images/B4PZSv6AN9sTvdwJ8QWq7lHYXc.webp\",\"size\":[1280,1600],\"box\":[137,256,1006,1031],\"scale\":94,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":46,\"photoZoom\":1,\"brightness\":.93},{\"code\":\"A01\",\"name\":\"Morning Ceramic Glazed Mug\",\"design\":\"https://framerusercontent.com/images/gkOvye0b95KgChykUhkI7AFY.webp\",\"photo\":\"https://framerusercontent.com/images/A6xRv4MZv3M7dNqQ3QSqOq9KxPs.webp\",\"size\":[800,1e3],\"box\":[148,439,547,380],\"scale\":83,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":50,\"photoZoom\":1,\"brightness\":.87},{\"code\":\"A57\",\"name\":\"Credify Vintage Low Profile Cap\",\"design\":\"https://framerusercontent.com/images/TXwqQkR843j4GUhxwOjywtxVgU.webp\",\"photo\":\"https://framerusercontent.com/images/FeA4rk8mQU93778J8nRFk1JIuhk.webp\",\"size\":[800,1e3],\"box\":[178,289,444,448],\"scale\":84,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":48,\"photoZoom\":1,\"brightness\":.79}];const EASE=[.32,.72,0,1];// Strong ease-in-out for on-screen movement. A critically damped spring covers\n// most of the distance early and then creeps, which is why the return read as\n// rushed even at nearly a second. Same curve both ways so the path is symmetric.\nconst MORPH=[.77,0,.175,1];const FONT=\"https://framerusercontent.com/third-party-assets/fontshare/wf/K46YRH762FH3QJ25IQM3VAXAKCHEXXW4/ISLWQPUZHZF33LRIOTBMFOJL57GBGQ4B/3ZLMEXZEQPLTEPMHTQDAUXP5ZZXCZAEN.woff2\";// Framer serves the original unless the URL asks for a size. These boxes are\n// small, so cap the asset and hand the browser a 1x/2x pair instead of a large\n// original it then has to downsample.\nconst sizedAsset=(u,n=512)=>typeof u===\"string\"&&u.includes(\"framerusercontent.com/images/\")&&!u.includes(\"?\")?u+\"?scale-down-to=\"+n:u;const clamp=(n,min,max)=>Math.max(min,Math.min(max,n));/**\n * @framerIntrinsicWidth 354\n * @framerIntrinsicHeight 480\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function StudioToReality({style,start=0,preview=\"Auto\",background=\"#F3F4F2\",designTop=29,speed=1,autoplay=true,title=\"Design anything.\",body=\"Think it, design it, create it.\",nextLabel=\"See the next design\",a14,a20,a37,a43,a01,a57}){const ref=React.useRef(null),copyRef=React.useRef(null),isStatic=useIsStaticRenderer(),uid=React.useId().replace(/:/g,\"\");const[layout,setLayout]=React.useState({width:354,height:480,copy:130});const[active,setActive]=React.useState(false),[pageVisible,setPageVisible]=React.useState(true),[step,setStep]=React.useState(0),[ready,setReady]=React.useState(false),[reduced,setReduced]=React.useState(false);const remaining=React.useRef({step:-1,ms:0}),first=clamp(Math.round(start),0,PAIRS.length-1),rate=clamp(speed,.5,2);// Two phases per product: the studio fills the card, then it shrinks into the\n// corner card and the photo underneath simply becomes visible. Growing back is\n// one movement with the design swap, so the card that returns already carries\n// the next design.\nconst phase=step%2,index=(first+Math.floor(step/2))%PAIRS.length,previous=(index+PAIRS.length-1)%PAIRS.length;const hold=phase===0?2400:2200,grow=1.15/rate,shrink=.6/rate;// The canvas covers the card from these numbers, so a late measurement means a\n// visible strip of the photo on first paint. Measure on mount, on the next two\n// frames, on load and on any resize of the card, the copy or the frame around it.\nReact.useEffect(()=>{const element=ref.current,copy=copyRef.current;if(!element||!copy)return;const measure=()=>{const w=element.clientWidth,h=element.clientHeight;if(w&&h)setLayout({width:w,height:h,copy:copy.offsetHeight});};measure();let f1=0,f2=0;if(typeof requestAnimationFrame!==\"undefined\")f1=requestAnimationFrame(()=>{measure();f2=requestAnimationFrame(measure);});if(typeof window!==\"undefined\")window.addEventListener(\"load\",measure);let observer;if(typeof ResizeObserver!==\"undefined\"){observer=new ResizeObserver(measure);observer.observe(element);observer.observe(copy);if(element.parentElement)observer.observe(element.parentElement);}return()=>{if(typeof cancelAnimationFrame!==\"undefined\"){cancelAnimationFrame(f1);cancelAnimationFrame(f2);}if(typeof window!==\"undefined\")window.removeEventListener(\"load\",measure);observer?.disconnect();};},[title,body]);React.useEffect(()=>{if(isStatic||typeof window===\"undefined\")return;const mq=window.matchMedia(\"(prefers-reduced-motion: reduce)\"),media=()=>setReduced(mq.matches),page=()=>setPageVisible(!document.hidden);media();page();mq.addEventListener(\"change\",media);document.addEventListener(\"visibilitychange\",page);return()=>{mq.removeEventListener(\"change\",media);document.removeEventListener(\"visibilitychange\",page);};},[isStatic]);// Warm only the pair on screen and the one after it. Waiting for all twelve\n// assets held the animation back and decoded roughly 15 megapixels up front,\n// most of which the visitor never reaches.\nReact.useEffect(()=>{let cancelled=false;const wanted=[PAIRS[index],PAIRS[(index+1)%PAIRS.length]].flatMap(p=>[sizedAsset(p.design,768),sizedAsset(p.photo,512)]).filter(Boolean);Promise.all(wanted.map(src=>new Promise(resolve=>{const img=new Image;img.onload=()=>resolve();img.onerror=()=>resolve();img.src=src;}))).then(()=>{if(!cancelled)setReady(true);});return()=>{cancelled=true;};},[index]);React.useEffect(()=>{if(isStatic||!ref.current)return;if(typeof IntersectionObserver===\"undefined\"){setActive(true);return;}// Play gate: 60% in to start the clock, 5% out to stop it.\nconst observer=new IntersectionObserver(([entry])=>{setActive(was=>entry.isIntersecting&&entry.intersectionRatio>=(was?.05:.6));},{threshold:[0,.05,.6,1]});observer.observe(ref.current);// Rewind a screen away, so the reset is never on screen while it happens.\nconst warm=new IntersectionObserver(([entry])=>{if(!entry.isIntersecting){setStep(0);remaining.current={step:-1,ms:0};}},{rootMargin:\"400px\",threshold:0});warm.observe(ref.current);return()=>{observer.disconnect();warm.disconnect();};},[isStatic]);React.useEffect(()=>{setStep(0);remaining.current={step:-1,ms:0};},[first]);const running=active&&pageVisible&&ready&&!isStatic&&preview===\"Auto\"&&autoplay&&!reduced;React.useEffect(()=>{if(!running)return;if(remaining.current.step!==step)remaining.current={step,ms:hold};const began=performance.now();const timer=window.setTimeout(()=>{remaining.current={step:-1,ms:0};setStep(s=>s+1);},remaining.current.ms/rate);return()=>{window.clearTimeout(timer);if(remaining.current.step===step)remaining.current.ms=Math.max(0,remaining.current.ms-(performance.now()-began)*rate);};},[running,step,rate,hold]);// The photo underneath only changes once the grown card actually covers it.\n// Tied to the animation finishing, not to a timer: timers keep running when\n// frames do not, and then the new photo shows through a card still growing.\nconst[photoIndex,setPhotoIndex]=React.useState(first);React.useEffect(()=>{if(phase===0&&(isStatic||reduced||preview!==\"Auto\"))setPhotoIndex(index);},[phase,index,isStatic,reduced,preview]);const instant=reduced||isStatic||preview!==\"Auto\";const life=preview===\"Lifestyle\"||preview===\"Auto\"&&phase===1;// One curve, no overshoot. The dot grid is painted on this element, so any\n// bounce bounces the dots with it, and this is a timed morph rather than a\n// gesture, so there is no velocity to carry through.\nconst morph=duration=>({duration:instant?0:duration,ease:MORPH});const pad=clamp(layout.width*.09,24,40);// Corner card: a true resize, so the dots and the corner radius keep their size.\n// Full size draws no curve and overshoots by a whole dot cell on every side. The\n// element we measure is itself a little smaller than the card, so matching it\n// exactly left a strip of the photo along the right edge. The card clips, so\n// overshooting costs nothing, and 32px is two dot cells so the grid still lands\n// in the same place.\nconst cornerW=clamp(layout.width*.32,96,150),cornerH=cornerW,cornerGap=Math.round(pad*.55);// Only the box of the surface animates. Padding and shadow are static, because\n// both are per-frame layout or repaint work for something you cannot see: in the\n// full state the shadow falls outside the card and the card clips it.\n// The canvas never moves. It sits at a fixed -32 on every side, which the browser\n// resolves against the card itself, and the corner state is a clip inside it\n// rather than a smaller box. Three things follow from that: the dot grid cannot\n// shift, because the element it is painted on never changes; the 14px corner stays\n// a true 14px, because a clip lives in unscaled local coordinates; and there is no\n// layout in the loop at all, only clip-path and transform, both on the compositor.\nconst BLEED=32;const cornerClip=`inset(${Math.max(0,layout.height-cornerH-cornerGap)+BLEED}px ${Math.max(0,layout.width-cornerW-cornerGap)+BLEED}px ${BLEED+cornerGap}px ${BLEED+cornerGap}px round 14px)`;const clip=life?cornerClip:\"inset(0px 0px 0px 0px round 0px)\";// The design keeps one fixed pixel size and is only ever transformed, so the\n// silhouette filter rasterises once instead of on every frame of the resize.\nconst padTop=Math.max(layout.height*designTop/100,layout.copy+26);const stageW=Math.max(40,layout.width-pad*1.3),stageH=Math.max(40,layout.height-padTop-32);const stageFit=Math.min((cornerW-20)/stageW,(cornerH-20)/stageH);// The canvas no longer moves, so the product has to be told where the clip is:\n// centred in the corner rect instead of in the card.\nconst trackScale=life?stageFit:1;const trackX=life?cornerGap+cornerW/2-layout.width/2:0;const trackY=life?layout.height/2-cornerH/2-cornerGap:(padTop-32)/2;// Safety net: a grow that gets interrupted never reports completion, and then\n// the wrong lifestyle shot would be uncovered. Correct it while the card is\n// still on its way down, not after the photo is already in view.\nReact.useEffect(()=>{if(life&&photoIndex!==index)setPhotoIndex(index);},[life,index,photoIndex]);const slots=[previous,index];const started=React.useRef(false);React.useEffect(()=>{started.current=true;},[]);const photo=PAIRS[photoIndex],photoTune=[a14,a20,a37,a43,a01,a57][photoIndex]||{};const focal=`${photoTune.photoX??photo.photoX}% ${photoTune.photoY??photo.photoY}%`,zoom=photoTune.photoZoom??photo.photoZoom;const advance=()=>{remaining.current={step:-1,ms:0};setStep(s=>s+1);};return /*#__PURE__*/_jsxs(\"div\",{ref:ref,className:\"studio-reality\",\"data-animation-text-locked\":\"\",onCopyCapture:event=>{event.preventDefault();event.stopPropagation();},onCutCapture:event=>{event.preventDefault();event.stopPropagation();},onDragStartCapture:event=>event.preventDefault(),\"data-product\":index,\"data-view\":life?\"lifestyle\":\"canvas\",\"data-running\":running,style:{...style,position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\",isolation:\"isolate\",background},children:[/*#__PURE__*/_jsx(\"img\",{className:\"reality-photo\",src:sizedAsset(photo.photo,1024),alt:`${photo.name} in real life`,style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",objectFit:\"cover\",objectPosition:focal,transform:`scale(${zoom})`,transformOrigin:focal,filter:`brightness(${photo.brightness})`}}),/*#__PURE__*/_jsx(motion.div,{className:\"reality-shadow\",\"aria-hidden\":\"true\",initial:false,animate:{opacity:life?1:0},transition:{duration:instant?0:(life?shrink:grow)*.5,delay:instant?0:life?shrink*.4:0,ease:EASE},style:{position:\"absolute\",left:cornerGap,top:Math.max(0,layout.height-cornerH-cornerGap),width:cornerW,height:cornerH,borderRadius:14,boxShadow:\"0 8px 24px rgba(0,0,0,.18)\",pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(motion.div,{className:\"reality-surface\",initial:false,animate:{clipPath:clip},transition:morph(life?shrink:grow),onAnimationComplete:()=>{if(!life)setPhotoIndex(index);},style:{position:\"absolute\",left:-BLEED,top:-BLEED,right:-BLEED,bottom:-BLEED,overflow:\"hidden\",background,boxSizing:\"border-box\",backgroundImage:`radial-gradient(circle at 1px 1px, #D0D2CF 1px, ${background} 0)`,backgroundSize:\"16px 16px\"},children:/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(motion.div,{className:\"reality-window\",initial:false,animate:{transform:`translate(${trackX}px, ${trackY}px) scale(${trackScale})`},transition:morph(life?shrink:grow),style:{position:\"absolute\",left:\"50%\",top:\"50%\",marginLeft:-stageW/2,marginTop:-stageH/2,width:stageW,height:stageH,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(motion.div,{className:\"reality-track\",initial:started.current&&!instant?{transform:\"translateX(0%)\"}:false,animate:{transform:\"translateX(-50%)\"},transition:instant?{duration:0}:{duration:grow*.62,delay:grow*.3,ease:MORPH},style:{display:\"flex\",width:stageW*2,height:stageH},children:slots.map((slot,i)=>{const pair=PAIRS[slot],tune=[a14,a20,a37,a43,a01,a57][slot]||{},zoomOut=clamp(tune.scale??pair.scale,50,115)/100;return /*#__PURE__*/_jsx(\"div\",{className:\"reality-slot\",style:{flex:`0 0 ${stageW}px`,width:stageW,height:stageH,display:\"grid\",placeItems:\"center\"},children:/*#__PURE__*/_jsxs(\"svg\",{className:\"reality-product\",viewBox:pair.box.join(\" \"),role:\"img\",\"aria-label\":`${pair.name} in Design Studio`,preserveAspectRatio:\"xMidYMid meet\",style:{width:`${zoomOut*100}%`,height:`${zoomOut*100}%`,overflow:\"hidden\",transform:`translate(${tune.x??pair.x}px,${tune.y??pair.y}px)`},children:[/*#__PURE__*/_jsxs(\"defs\",{children:[/*#__PURE__*/_jsxs(\"filter\",{id:`${uid}-key-${slot}-${i}`,x:\"-2%\",y:\"-2%\",width:\"104%\",height:\"104%\",colorInterpolationFilters:\"sRGB\",children:[/*#__PURE__*/_jsx(\"feColorMatrix\",{type:\"matrix\",values:\"0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  -33 -33 -33 0 97.5\"}),/*#__PURE__*/_jsx(\"feMorphology\",{operator:\"dilate\",radius:\"1.2\"})]}),/*#__PURE__*/_jsx(\"mask\",{id:`${uid}-silhouette-${slot}-${i}`,maskUnits:\"userSpaceOnUse\",x:0,y:0,width:pair.size[0],height:pair.size[1],style:{maskType:\"alpha\"},children:/*#__PURE__*/_jsx(\"image\",{href:sizedAsset(pair.design,768),width:pair.size[0],height:pair.size[1],filter:`url(#${uid}-key-${slot}-${i})`})})]}),/*#__PURE__*/_jsx(\"rect\",{x:0,y:0,width:pair.size[0],height:pair.size[1],fill:background,mask:`url(#${uid}-silhouette-${slot}-${i})`}),/*#__PURE__*/_jsx(\"image\",{href:sizedAsset(pair.design,768),width:pair.size[0],height:pair.size[1],mask:`url(#${uid}-silhouette-${slot}-${i})`,style:{mixBlendMode:\"multiply\"}})]})},`${slot}-${i}`);})},index)})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"reality-copy\",ref:copyRef,initial:false,animate:{color:life?\"#ffffff\":\"#292931\",textShadow:life?\"0 1px 8px rgba(0,0,0,0.22)\":\"0 1px 8px rgba(0,0,0,0)\"},transition:{duration:instant?0:(life?shrink:grow)*.55,ease:EASE},style:{position:\"absolute\",inset:\"0 0 auto\",padding:`${pad}px ${pad}px 0`,pointerEvents:\"none\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:'\"Studio General Sans\", \"General Sans\", sans-serif',fontSize:clamp(layout.width*.09,28,34),fontWeight:600,lineHeight:1.15,letterSpacing:\"-.035em\"},children:title}),/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Inter, sans-serif\",fontSize:16,lineHeight:1.5,marginTop:16},children:body})]}),preview===\"Auto\"&&!isStatic&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"reality-next\",onClick:advance,\"aria-label\":nextLabel,style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",border:0,padding:0,background:\"transparent\",cursor:\"pointer\"}}),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:\"[data-animation-text-locked],[data-animation-text-locked] *{user-select:none!important;-webkit-user-select:none!important;-webkit-touch-callout:none}\"+`@font-face{font-family:\"Studio General Sans\";src:url(${FONT}) format('woff2');font-weight:600;font-display:swap}.reality-copy>div:last-child{text-wrap:pretty}.reality-next:focus-visible{outline:2px solid #007aff;outline-offset:-5px;border-radius:18px}`}})]});}const framingControls={scale:{type:ControlType.Number,title:\"Design scale\",min:50,max:115,step:1,unit:\"%\"},x:{type:ControlType.Number,title:\"Design X\",min:-60,max:60,step:1},y:{type:ControlType.Number,title:\"Design Y\",min:-40,max:60,step:1},photoX:{type:ControlType.Number,title:\"Photo X\",min:0,max:100,step:1,unit:\"%\"},photoY:{type:ControlType.Number,title:\"Photo Y\",min:0,max:100,step:1,unit:\"%\"},photoZoom:{type:ControlType.Number,title:\"Photo zoom\",min:1,max:1.5,step:.01}};addPropertyControls(StudioToReality,{title:{type:ControlType.String,defaultValue:\"Design anything.\"},body:{type:ControlType.String,defaultValue:\"Think it, design it, create it.\"},start:{type:ControlType.Enum,title:\"First product\",options:[0,1,2,3,4,5],optionTitles:[\"A14 \\xb7 Olive T-shirt\",\"A20 \\xb7 Tote\",\"A37 \\xb7 Grey T-shirt\",\"A43 \\xb7 Hoodie\",\"A01 \\xb7 Morning mug\",\"A57 \\xb7 Cap\"],defaultValue:0},preview:{type:ControlType.Enum,options:[\"Auto\",\"Canvas\",\"Lifestyle\"],defaultValue:\"Auto\"},background:{type:ControlType.Color,title:\"Canvas BG\",defaultValue:\"#F3F4F2\"},designTop:{type:ControlType.Number,title:\"Design top\",min:20,max:55,step:1,unit:\"%\",defaultValue:29},a14:{type:ControlType.Object,title:\"A14 framing\",controls:framingControls,defaultValue:{\"scale\":94,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":48,\"photoZoom\":1}},a20:{type:ControlType.Object,title:\"A20 framing\",controls:framingControls,defaultValue:{\"scale\":94,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":50,\"photoZoom\":1}},a37:{type:ControlType.Object,title:\"A37 framing\",controls:framingControls,defaultValue:{\"scale\":94,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":48,\"photoZoom\":1}},a43:{type:ControlType.Object,title:\"A43 framing\",controls:framingControls,defaultValue:{\"scale\":94,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":46,\"photoZoom\":1}},a01:{type:ControlType.Object,title:\"A01 framing\",controls:framingControls,defaultValue:{\"scale\":83,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":50,\"photoZoom\":1}},a57:{type:ControlType.Object,title:\"A57 framing\",controls:framingControls,defaultValue:{\"scale\":84,\"x\":0,\"y\":0,\"photoX\":50,\"photoY\":48,\"photoZoom\":1}},speed:{type:ControlType.Number,min:.5,max:2,step:.1,defaultValue:1},autoplay:{type:ControlType.Boolean,defaultValue:true},nextLabel:{type:ControlType.String,title:\"Next label\",defaultValue:\"See the next design\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"StudioToReality\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"354\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"480\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./StudioToReality.map"],"mappings":"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"}