{"version":3,"file":"HowItWorksSteps.DFHaVqCI.mjs","names":["useRef","useState"],"sources":["https:/framerusercontent.com/modules/6Kz6n7EhDlCjPIF2x80Y/rhmCNhlfz0PduebSIoA4/HowItWorksSteps.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useEffect,useLayoutEffect,useRef,useState}from\"react\";/**\n * HOW IT WORKS — Steps (staircase + scroll-drawn connectors)\n *\n * Cards sit in a horizontal row, each offset progressively lower than the\n * last (a staircase). Curved lines connect each step's badge to the next and\n * draw in sequentially the first time the section scrolls into view.\n *\n * Controls are grouped: Layout, Card Style, Typography, Connector Line.\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any\n */export default function HowItWorksSteps(props){const{steps,layout:lay,card,typography,line,entrance,style}=props;const{direction,stepOffset,cardGap,cardPadding,badgeGap,textGap,breakpoint}=lay;const{backgroundColor,borderColor,borderWidth,borderRadius,accentColor,accentTextColor,badgePadding}=card;const{numberFont,titleFont,titleTransform,messageFont,titleColor,textColor}=typography;const{showConnector,lineStyle,lineColor,lineWidth,drawDuration,replayOnExit}=line;const{enabled:entranceOn,distance:enterDist,duration:enterDur,stagger:enterStagger,replay:entranceReplay}=entrance;const containerRef=useRef(null);const badgeRefs=useRef([]);const cardRefs=useRef([]);const[measured,setMeasured]=useState({w:0,h:0,nodes:[]});const[inView,setInView]=useState(false);// Orientation: \"horizontal\" / \"vertical\" force it; \"auto\" switches to\n// vertical once the measured container width drops below the breakpoint.\nconst autoVertical=measured.w>0&&measured.w<breakpoint;const isMobile=direction===\"vertical\"?true:direction===\"horizontal\"?false:autoVertical;// Measure badge geometry + card-top edges relative to the container.\n// Uses layout offsets (not getBoundingClientRect) so the entrance\n// transforms on the cards don't skew the connector endpoints.\nconst measure=()=>{const container=containerRef.current;if(!container)return;const nodes=badgeRefs.current.map((el,i)=>{const cardEl=cardRefs.current[i];if(!el||!cardEl)return{bx:0,by:0,br:0,cardTop:0};return{bx:cardEl.offsetLeft+el.offsetLeft+el.offsetWidth/2,by:cardEl.offsetTop+el.offsetTop+el.offsetHeight/2,br:el.offsetWidth/2,cardTop:cardEl.offsetTop};});setMeasured({w:container.offsetWidth,h:container.offsetHeight,nodes});};useLayoutEffect(()=>{measure();const container=containerRef.current;if(!container||typeof ResizeObserver===\"undefined\")return;const ro=new ResizeObserver(()=>measure());ro.observe(container);return()=>ro.disconnect();// eslint-disable-next-line react-hooks/exhaustive-deps\n},[steps,stepOffset,cardPadding,badgeGap,textGap,cardGap,borderWidth,isMobile]);// Trigger draw when the section enters the viewport\nuseEffect(()=>{const container=containerRef.current;if(!container||typeof IntersectionObserver===\"undefined\"){setInView(true);return;}const io=new IntersectionObserver(([entry])=>{if(entry.isIntersecting)setInView(true);else if(replayOnExit)setInView(false);},{threshold:.25});io.observe(container);return()=>io.disconnect();},[replayOnExit]);// Entrance: fire the per-card fade/slide once ~half the section is visible\nconst[enterInView,setEnterInView]=useState(false);useEffect(()=>{const container=containerRef.current;if(!container||typeof IntersectionObserver===\"undefined\"){setEnterInView(true);return;}const io=new IntersectionObserver(([entry])=>{if(entry.isIntersecting)setEnterInView(true);else if(entranceReplay)setEnterInView(false);},{threshold:.5});io.observe(container);return()=>io.disconnect();},[entranceReplay]);const containerStyle={position:\"relative\",display:\"flex\",flexDirection:isMobile?\"column\":\"row\",// Always top/left-align so cards keep their natural (auto) height and\n// never stretch to equal heights.\nalignItems:\"flex-start\",gap:cardGap,width:\"100%\",...style};const cardStyle={display:\"flex\",flexDirection:\"column\",alignSelf:\"flex-start\",height:\"auto\",gap:badgeGap,backgroundColor,border:`${borderWidth}px solid ${borderColor}`,borderRadius,padding:cardPadding,boxSizing:\"border-box\",position:\"relative\"};// Explicit square (font size + padding on each side) so the badge is\n// always a perfect circle — aspect-ratio on a flex item can go oval when\n// the digit is narrower than its line height.\nconst numFontSize=parseFloat(String((numberFont&&numberFont.fontSize)??16))||16;const badgeSize=numFontSize+badgePadding*2;const badgeStyle={alignSelf:\"flex-start\",flexShrink:0,width:badgeSize,height:badgeSize,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",borderRadius:\"50%\",backgroundColor:accentColor,lineHeight:1,boxSizing:\"border-box\",position:\"relative\",zIndex:2,fontWeight:700,fontSize:16,...numberFont,color:accentTextColor};const titleStyle={fontWeight:700,fontSize:20,lineHeight:1.2,margin:0,...titleFont,textTransform:titleTransform,color:titleColor};const messageStyle={fontSize:15,lineHeight:1.45,margin:0,...messageFont,color:textColor};const nodes=measured.nodes;// Each segment starts at the RIGHT edge of a badge, runs through the empty\n// top band, then drops straight down onto the TOP side of the next badge\n// (passing through the next card's top edge on the way).\nconst buildPath=(start,end)=>{if(lineStyle===\"straight\"){return`M ${start.x} ${start.y} L ${end.x} ${end.y}`;}if(lineStyle===\"curved\"){// smooth quarter-turn: leaves horizontally, arrives vertically\nreturn`M ${start.x} ${start.y} Q ${end.x} ${start.y} ${end.x} ${end.y}`;}// elbow (default): horizontal out of the badge, rounded corner, then\n// straight down onto the top of the next card.\nconst dx=end.x-start.x;const dy=end.y-start.y;const sx=Math.sign(dx)||1;const sy=Math.sign(dy)||1;const r=Math.min(14,Math.abs(dx)/2,Math.abs(dy)/2);return[`M ${start.x} ${start.y}`,`H ${end.x-sx*r}`,`Q ${end.x} ${start.y} ${end.x} ${start.y+sy*r}`,`V ${end.y}`].join(\" \");};return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:containerStyle,children:[showConnector&&measured.w>0&&nodes.length>1&&/*#__PURE__*/_jsx(\"svg\",{width:measured.w,height:measured.h,viewBox:`0 0 ${measured.w} ${measured.h}`,style:{position:\"absolute\",top:0,left:0,pointerEvents:\"none\",zIndex:3,// they never cover the numbers, and this avoids\n// fighting the cards' entrance transforms.\noverflow:\"visible\"},children:nodes.slice(0,-1).map((n1,i)=>{const n2=nodes[i+1];if(!n2)return null;const start={x:n1.bx+n1.br,y:n1.by};const end={x:n2.bx,y:n2.by-n2.br};const d=buildPath(start,end);return /*#__PURE__*/_jsx(\"path\",{d:d,fill:\"none\",stroke:lineColor,strokeWidth:lineWidth,strokeLinecap:\"round\",pathLength:1,strokeDasharray:1,strokeDashoffset:inView?0:1,style:{transition:`stroke-dashoffset ${drawDuration}s ease ${i*drawDuration}s`}},i);})}),steps.map((step,i)=>/*#__PURE__*/_jsxs(\"div\",{ref:el=>cardRefs.current[i]=el,style:{...cardStyle,...isMobile?{// Left-aligned, auto height. Width staircases\n    // so the RIGHT edge is jagged: step 1 narrowest,\n    // last step full width (largest).\n    flex:\"0 0 auto\",width:`calc(100% - ${(steps.length-1-i)*stepOffset}px)`,minWidth:0}:{flex:\"1 1 0\",minWidth:0,marginTop:i*stepOffset},...entranceOn?{opacity:enterInView?1:0,transform:enterInView?\"translate(0px, 0px)\":isMobile?`translateX(-${enterDist}px)`:`translateY(${enterDist}px)`,transition:`opacity ${enterDur}s ease, transform ${enterDur}s ease`,transitionDelay:`${i*enterStagger}s`,willChange:\"opacity, transform\"}:{}},children:[/*#__PURE__*/_jsx(\"div\",{ref:el=>badgeRefs.current[i]=el,style:badgeStyle,children:step.number||i+1}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:textGap},children:[/*#__PURE__*/_jsx(\"div\",{style:titleStyle,children:step.title}),/*#__PURE__*/_jsx(\"div\",{style:messageStyle,children:step.message})]})]},i))]});}HowItWorksSteps.defaultProps={steps:[{number:\"1\",title:\"Apply\",message:\"Join the founder-led partner program.\"},{number:\"2\",title:\"Get matched\",message:\"Work with a dedicated founder-led team.\"},{number:\"3\",title:\"Plug in\",message:\"Add Justuno to client accounts and pitches.\"},{number:\"4\",title:\"Grow\",message:\"Win RFPs, grow lists, and report value.\"}],layout:{direction:\"auto\",stepOffset:50,cardGap:12,cardPadding:28,badgeGap:14,textGap:8,breakpoint:480},card:{backgroundColor:\"#0e3019\",borderColor:\"#1d4a2c\",borderWidth:1,borderRadius:16,accentColor:\"#a3e635\",accentTextColor:\"#0a2912\",badgePadding:10},typography:{titleColor:\"#ffffff\",textColor:\"#9fb6a4\",numberFont:{fontWeight:700,fontSize:16},titleFont:{fontWeight:700,fontSize:20,lineHeight:\"1.2em\"},titleTransform:\"none\",messageFont:{fontWeight:400,fontSize:15,lineHeight:\"1.45em\"}},line:{showConnector:true,lineStyle:\"elbow\",lineColor:\"#a3e635\",lineWidth:3,drawDuration:.6,replayOnExit:false},entrance:{enabled:true,distance:24,duration:.6,stagger:.12,replay:false}};addPropertyControls(HowItWorksSteps,{steps:{type:ControlType.Array,title:\"Steps\",control:{type:ControlType.Object,controls:{number:{type:ControlType.String,title:\"Number\",defaultValue:\"1\"},title:{type:ControlType.String,title:\"Title\",defaultValue:\"Step\"},message:{type:ControlType.String,title:\"Message\",displayTextArea:true,defaultValue:\"Describe this step.\"}}},defaultValue:[{number:\"1\",title:\"Apply\",message:\"Join the founder-led partner program.\"},{number:\"2\",title:\"Get matched\",message:\"Work with a dedicated founder-led team.\"},{number:\"3\",title:\"Plug in\",message:\"Add Justuno to client accounts and pitches.\"},{number:\"4\",title:\"Grow\",message:\"Win RFPs, grow lists, and report value.\"}]},layout:{type:ControlType.Object,title:\"Layout\",controls:{direction:{type:ControlType.Enum,title:\"Direction\",options:[\"auto\",\"horizontal\",\"vertical\"],optionTitles:[\"Auto\",\"Horizontal\",\"Vertical\"],defaultValue:\"auto\",displaySegmentedControl:true},stepOffset:{type:ControlType.Number,title:\"Step Offset\",min:0,max:160,step:2,defaultValue:50,description:\"Downward stagger added per step\"},cardGap:{type:ControlType.Number,title:\"Card Gap\",min:0,max:120,step:1,defaultValue:12},cardPadding:{type:ControlType.Number,title:\"Padding\",min:0,max:80,step:1,defaultValue:28},badgeGap:{type:ControlType.Number,title:\"Badge Gap\",min:0,max:80,step:1,defaultValue:14,description:\"Badge → title/message group\"},textGap:{type:ControlType.Number,title:\"Text Gap\",min:0,max:48,step:1,defaultValue:8,description:\"Title → message\"},breakpoint:{type:ControlType.Number,title:\"Breakpoint\",min:0,max:1200,step:10,defaultValue:480,description:\"Auto mode only — below this width goes vertical\"}}},card:{type:ControlType.Object,title:\"Card Style\",controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#0e3019\"},borderColor:{type:ControlType.Color,title:\"Border\",defaultValue:\"#1d4a2c\"},borderWidth:{type:ControlType.Number,title:\"Border W\",min:0,max:8,step:1,defaultValue:1},borderRadius:{type:ControlType.Number,title:\"Radius\",min:0,max:60,step:1,defaultValue:16},accentColor:{type:ControlType.Color,title:\"Badge BG\",defaultValue:\"#a3e635\"},accentTextColor:{type:ControlType.Color,title:\"Badge Text\",defaultValue:\"#0a2912\"},badgePadding:{type:ControlType.Number,title:\"Badge Padding\",min:0,max:40,step:1,defaultValue:10,description:\"Circle size = number + padding\"}}},typography:{type:ControlType.Object,title:\"Typography\",controls:{numberFont:{type:ControlType.Font,title:\"Number Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontWeight:700,fontSize:16}},titleFont:{type:ControlType.Font,title:\"Title Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontWeight:700,fontSize:20,lineHeight:\"1.2em\"}},titleColor:{type:ControlType.Color,title:\"Title Color\",defaultValue:\"#ffffff\"},titleTransform:{type:ControlType.Enum,title:\"Title Case\",options:[\"none\",\"uppercase\",\"lowercase\",\"capitalize\"],optionTitles:[\"None\",\"UPPER\",\"lower\",\"Capitalize\"],defaultValue:\"none\"},messageFont:{type:ControlType.Font,title:\"Message Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontWeight:400,fontSize:15,lineHeight:\"1.45em\"}},textColor:{type:ControlType.Color,title:\"Message Color\",defaultValue:\"#9fb6a4\"}}},line:{type:ControlType.Object,title:\"Connector Line\",controls:{showConnector:{type:ControlType.Boolean,title:\"Connector\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},lineStyle:{type:ControlType.Enum,title:\"Style\",options:[\"elbow\",\"curved\",\"straight\"],optionTitles:[\"Elbow\",\"Curved\",\"Straight\"],defaultValue:\"elbow\",displaySegmentedControl:true},lineColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#a3e635\"},lineWidth:{type:ControlType.Number,title:\"Width\",min:1,max:12,step:1,defaultValue:3},drawDuration:{type:ControlType.Number,title:\"Draw Speed\",min:.1,max:3,step:.1,defaultValue:.6,description:\"Seconds per segment (also the stagger between segments)\"},replayOnExit:{type:ControlType.Boolean,title:\"Replay\",defaultValue:false,enabledTitle:\"On re-scroll\",disabledTitle:\"Once\"}}},entrance:{type:ControlType.Object,title:\"Entrance\",controls:{enabled:{type:ControlType.Boolean,title:\"Animate\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},distance:{type:ControlType.Number,title:\"Distance\",min:0,max:120,step:2,defaultValue:24,description:\"Slide distance (up when horizontal, from left when vertical)\"},duration:{type:ControlType.Number,title:\"Duration\",min:.1,max:3,step:.1,defaultValue:.6},stagger:{type:ControlType.Number,title:\"Stagger\",min:0,max:1,step:.02,defaultValue:.12,description:\"Delay between each step\"},replay:{type:ControlType.Boolean,title:\"Replay\",defaultValue:false,enabledTitle:\"On re-scroll\",disabledTitle:\"Once\"}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"HowItWorksSteps\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./HowItWorksSteps.map"],"mappings":"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"}