{"version":3,"file":"ComparisonTable.B0o_UVXm.mjs","names":["useState","useRef","useMemo","_Fragment"],"sources":["https:/framerusercontent.com/modules/hmfPmV1q1nXJE6lO0S4h/WgNsftgNdCLUJGd2v0we/ComparisonTable.js"],"sourcesContent":["// SMCo ComparisonTable — side-by-side and feature-grid comparison.\n// Used by Pricing competitive callout and all /vs/[competitor]/ pages.\n// bandMode \"dark\" = self-contained near-black band; \"soft\" (2026-06-16) = theme-aware\n// pale-sage / warm-dark panel with dark text — stands out without the heaviness.\n// bandMarginTop/Bottom (2026-06-16) add page-gap above/below a band so it doesn't butt\n// against neighboring sections.\n// FEATURE-GRID (2026-06-16): the winning cell per row gets a sage check mark —\n// driven by the row's \"highlight\" field (left | right | none). \"none\" = tie, no check.\n// FEATURE-GRID LINK (2026-06-17): an optional 5th pipe field on a row renders a small\n// \"learn more\" link under the SMCo (right) cell value; an optional 6th field sets its label.\n// NARROW LAYOUT (2026-08-11): useIsNarrow() now drives BOTH variants.\n// Two-column stacks on isNarrow alone (it used to require a band, so the default bandMode\n// \"none\" instance never collapsed). Feature-grid drops its column headers and renders each\n// row as a stacked block with the two values LABELED, because \"1.4fr 1fr 1fr\" plus 24px of\n// horizontal cell padding pushed the SMCo column past the card's overflow: hidden at 390px.\n// BREAKPOINT STANDARDISED (2026-08-12): the collapse moves 767px -> 880px. The shipped build\n// was carrying four disagreeing collapse points (767 / 768 / 809.98 / 880), so at 810px — iPad\n// portrait — this table still ran its DESKTOP grid while the 880px components either side of it\n// had already gone mobile: three layout regimes in one render. 880px is the project standard\n// (Footer, Navigation and TrustStripSection all collapse there), and there is no intermediate\n// 641–767px design in this file to break — isNarrow has exactly two states, so the only\n// behavioural change is that 768–880px now gets the narrow layout instead of a crushed desktop\n// one. Everything at >=881px is byte-for-byte unchanged.\n// FAIL-OPEN (2026-08-11): visible + true is the default and the only resting state.\n// The reveal observer, the theater observer and the counting rAF are decoration —\n// each one has a non-observer fallback and a guard, and every exit path (SSR,\n// canvas, reduced motion, missing API, silent observer, interrupt, unmount,\n// stalled rAF) lands on the full table showing the authored totals verbatim.\n// TYPE SCALE LIFT (2026-08-12): the small end of the scale is raised for legibility, matching\n// the Navigation and Footer passes so the site reads as one system. Applied to BOTH the desktop\n// and the narrow (<=880px) branches: under 11px and 11/12px chrome -> 13px; 12.5px captions and\n// chips -> 14px; 14/15px secondary body -> 16px; 16px primary body -> 17px. Nothing at 18px or\n// above moved - the final-total clamp(30px, 3.2vw, 44px) and the bare price value (30 narrow /\n// 40 desktop) are display type and are byte-identical. Uppercase eyebrows raised from 12px have\n// their tracking eased 0.18em -> 0.16em so the extra width does not buy an extra line at 390px;\n// labels already tracked at 0.16em keep it.\n// HIERARCHY (2026-08-12): in the narrow feature grid the row heading was 15 and its two values\n// 14 - the map lands both on 16, so the heading goes to 17 instead, keeping the authored\n// one-step lead. The un-banded card's price header (14) and its line items (15) DO converge at\n// 16: lifting the items to 17 would collide with that card's final total (16 -> 17) and cascade\n// past the top of the scale, so the subtle/primary colour split and the hairline carry that step.\n// No property control's defaultValue is a font size, so no control defaults changed.\n// BODY TYPE LIFT + fontScale (2026-08-25): see the block above bodyPx() inside the component.\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useMemo,useRef,useState}from\"react\";// @ts-ignore — Framer module URL import (TS2307 is a known advisory flake)\nimport SectionHeader from\"https://framer.com/m/SectionHeader-neY9dV.js\";function useDarkMode(){const[isDark,setIsDark]=useState(false);useEffect(()=>{if(typeof document===\"undefined\")return;const check=()=>setIsDark(document.documentElement.classList.contains(\"dark\"));check();const onChange=()=>check();document.addEventListener(\"smco-theme-change\",onChange);const observer=new MutationObserver(check);observer.observe(document.documentElement,{attributes:true,attributeFilter:[\"class\"]});return()=>{document.removeEventListener(\"smco-theme-change\",onChange);observer.disconnect();};},[]);return isDark;}// SINGLE COLLAPSE POINT (2026-08-12). This was (max-width: 767px). It is the file's ONLY\n// breakpoint — layout, gaps, padding and the oversized price type all hang off it — so moving\n// it to 880px standardises this component onto the project breakpoint rather than adding a\n// second one. Deliberately NOT paired with a 767px media rule elsewhere in the file: a second\n// collapse point is the defect being removed, not a fix.\nfunction useIsNarrow(){const[narrow,setNarrow]=useState(false);useEffect(()=>{if(typeof window===\"undefined\"||!window.matchMedia)return;const mq=window.matchMedia(\"(max-width: 880px)\");const update=()=>setNarrow(mq.matches);update();if(mq.addEventListener){mq.addEventListener(\"change\",update);return()=>mq.removeEventListener(\"change\",update);}mq.addListener(update);return()=>mq.removeListener(update);},[]);return narrow;}function CrossLink({label,href,accentColor,ease,band=false}){const[hovered,setHovered]=useState(false);if(band){return /*#__PURE__*/_jsx(\"a\",{href:href,onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),style:{display:\"inline-flex\",alignItems:\"center\",padding:\"12px 22px\",borderRadius:999,textDecoration:\"none\",fontFamily:\"Urbanist, sans-serif\",// TYPE SCALE (2026-08-12): 14 -> 16, band cross-link button label.\nfontSize:16,fontWeight:600,letterSpacing:\"0.02em\",color:hovered?\"#0e0e0e\":accentColor,background:hovered?accentColor:\"rgba(150, 192, 165, 0.10)\",border:`1px solid ${hovered?accentColor:\"rgba(150, 192, 165, 0.55)\"}`,transform:hovered?\"translateY(-2px)\":\"translateY(0)\",transition:`background 320ms ${ease}, color 320ms ${ease}, border-color 320ms ${ease}, transform 320ms ${ease}`},children:label});}return /*#__PURE__*/_jsx(\"a\",{href:href,onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),style:{textDecoration:\"none\",color:accentColor,fontFamily:\"Urbanist, sans-serif\",fontSize:16/* TYPE SCALE 2026-08-12: 14 -> 16 */,fontWeight:600,letterSpacing:\"0.02em\",borderBottom:`1px solid ${hovered?accentColor:\"transparent\"}`,transition:`border-color 220ms ${ease}`},children:label});}const NUM_RE=/\\d[\\d,]*(?:\\.\\d+)?/g;const isStaticEnv=()=>typeof window===\"undefined\"||RenderTarget.current()===RenderTarget.canvas;const prefersReducedMotion=()=>typeof window!==\"undefined\"&&typeof window.matchMedia===\"function\"&&window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;// Mirrors an observer's own threshold AND rootMargin, so a guard fires at the\n// same scroll position a working observer would — a healthy observer always wins\n// the race and the motion is unchanged. Anything unmeasurable fails open.\nconst isOnScreen=(node,threshold,bottomInset=0)=>{if(typeof node.getBoundingClientRect!==\"function\")return true;const rect=node.getBoundingClientRect();const vh=window.innerHeight||document.documentElement.clientHeight||0;if(rect.height<=0||vh<=0)return true;const visible=Math.min(rect.bottom,vh*(1-bottomInset))-Math.max(rect.top,0);return visible>0&&visible/rect.height>=threshold;};const LEFT_ITEM_STAGGER=600;const LEFT_ITEM_DURATION=650;const splitFinal=s=>{const idx=s.indexOf(\":\");if(idx===-1)return{label:\"\",value:s.trim()};return{label:s.slice(0,idx).trim(),value:s.slice(idx+1).trim()};};function XMark(){return /*#__PURE__*/_jsx(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 14 14\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M3.5 3.5L10.5 10.5M10.5 3.5L3.5 10.5\",stroke:\"#e5484d\",strokeWidth:\"2\",strokeLinecap:\"round\"})});}function CheckMark(){return /*#__PURE__*/_jsx(\"svg\",{width:\"15\",height:\"15\",viewBox:\"0 0 15 15\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M3 8.2L6.1 11.2L12 4.2\",stroke:\"#96c0a5\",strokeWidth:\"2.2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})});}/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n * @framerIntrinsicHeight 540\n */export default function ComparisonTable(props){// DEAD-LINK DEFECT CLASS: crossLinkHref / crossLink2Href are ControlType.Link props with no\n// defaultValue. Unconfigured they render a fully-styled anchor whose href is empty, so the link\n// looks live but navigates nowhere (empty href reloads the current page). The destructure\n// defaults below are the fallback — do not remove them when editing this signature.\nconst{variant,bandMode=\"none\",bandPaddingY=112,bandMarginTop=0,bandMarginBottom=0,headerEyebrow=\"\",headerHeadline=\"\",headerScriptLine=\"\",headerSubline=\"\",leftLabel,rightLabel,leftPriceHeader,leftPriceValue,leftLineItems,leftFinal,rightPriceHeader,rightPriceValue,rightLineItems,rightFinal,countFrom=0,deltaNote=\"\",featureRows,fontScale=1,sourceCitation,crossLinkLabel,crossLinkHref=\"/why-smco/vs/\",showCrossLink,crossLink2Label,crossLink2Href=\"\",showCrossLink2,accentColor,surfaceColor,surfaceDarkColor,textColor,textDarkColor,subtleTextColor,subtleTextDarkColor,hairlineColor}=props;// ── BODY TYPE LIFT + FONT SCALE (2026-08-25) ──────────────────────────\n// Owner request: the small line-item / feature-row text is hard to read.\n// Row/body sizes rise ~12–15%: line items and cell values 16 → 18, row\n// headings / scenario line / un-banded final totals 17 → 19, the in-cell\n// \"learn more\" link 14 → 16. Display type — the bare price value\n// (30 narrow / 40 desktop) and the clamp() final totals — and the 13px\n// uppercase chrome labels are deliberately untouched: those match the\n// sitewide 2026-08-12 system. `fontScale` (Property Control, default 1)\n// multiplies ONLY the lifted sizes so each instance can be fine-tuned.\n// Fails open to 1 on anything non-finite or non-positive.\nconst effFontScale=typeof fontScale===\"number\"&&isFinite(fontScale)&&fontScale>0?fontScale:1;const bodyPx=base=>Math.round(base*effFontScale*10)/10;const band=bandMode!==\"none\";const softBand=bandMode===\"soft\";const sage=\"#96c0a5\";const isDark=useDarkMode();const isNarrow=useIsNarrow();const containerRef=useRef(null);const comparisonRef=useRef(null);// Default = revealed / final / settled. Static export, canvas and reduced-motion\n// users get the finished table with zero JS.\nconst[revealed,setRevealed]=useState(()=>isStaticEnv()||prefersReducedMotion());const[theater,setTheater]=useState(()=>isStaticEnv()?\"final\":\"hidden\");const[countT,setCountT]=useState(()=>isStaticEnv()?1:0);const[pulsed,setPulsed]=useState(false);const effSurface=band?softBand?isDark?\"#2c2620\":\"#ffffff\":\"#1a1a1a\":isDark?surfaceDarkColor:surfaceColor;const effText=band?softBand?isDark?\"#f4f4f4\":\"#0e0e0e\":\"#f4f4f4\":isDark?textDarkColor:textColor;const effSubtle=band?softBand?isDark?\"rgba(244, 244, 244, 0.72)\":\"rgba(14, 14, 14, 0.62)\":\"rgba(244, 244, 244, 0.72)\":isDark?subtleTextDarkColor:subtleTextColor;const effHairline=band?softBand?isDark?\"rgba(244, 244, 244, 0.12)\":\"rgba(14, 14, 14, 0.1)\":\"rgba(244, 244, 244, 0.12)\":isDark?\"rgba(244, 244, 244, 0.14)\":hairlineColor;const effAccent=band?sage:accentColor;const bandOuterBg=softBand?isDark?\"#221d18\":\"#e8f0ea\":\"#0e0e0e\";const headerTextColor=softBand?isDark?\"rgb(244,244,244)\":\"rgb(14,14,14)\":\"rgb(244,244,244)\";const headerSubtleColor=softBand?isDark?\"rgba(244,244,244,0.72)\":\"rgba(14,14,14,0.62)\":\"rgba(244,244,244,0.72)\";const ease=\"cubic-bezier(0.16, 1, 0.3, 1)\";const overshoot=\"cubic-bezier(0.34, 1.56, 0.64, 1)\";const parseLines=s=>s.split(\"\\n\").map(l=>l.trim()).filter(l=>l.length>0);const leftItems=parseLines(leftLineItems);const rightItems=parseLines(rightLineItems);const leftFinalParts=useMemo(()=>splitFinal(leftFinal),[leftFinal]);const rightFinalParts=useMemo(()=>splitFinal(rightFinal),[rightFinal]);const leftFinalSegments=useMemo(()=>{const source=leftFinalParts.value;const segs=[];let last=0;let m;const re=new RegExp(NUM_RE.source,\"g\");while((m=re.exec(source))!==null){if(m.index>last)segs.push({text:source.slice(last,m.index),num:null});segs.push({text:m[0],num:parseFloat(m[0].replace(/,/g,\"\"))});last=m.index+m[0].length;}if(last<source.length)segs.push({text:source.slice(last),num:null});return segs;},[leftFinalParts.value]);const countStart=useMemo(()=>{if(countFrom>0)return countFrom;const m=leftPriceValue.match(NUM_RE);return m&&m.length>0?parseFloat(m[0].replace(/,/g,\"\")):0;},[countFrom,leftPriceValue]);useEffect(()=>{if(revealed)return;const node=containerRef.current;// Fail open: no node, or no observer API → show the table now.\nif(!node||typeof IntersectionObserver===\"undefined\"){setRevealed(true);return;}let observer=null;try{observer=new IntersectionObserver(entries=>entries.forEach(entry=>{if(entry.isIntersecting)setRevealed(true);}),{threshold:.15});observer.observe(node);}catch{setRevealed(true);return;}// Guard: a silent observer must never leave the table invisible.\nconst deadline=Date.now()+2e4;const guard=window.setInterval(()=>{if(isOnScreen(node,.15)||Date.now()>deadline)setRevealed(true);},400);return()=>{if(observer)observer.disconnect();window.clearInterval(guard);};},[revealed]);useEffect(()=>{if(!band||variant!==\"two-column\")return;if(theater!==\"hidden\")return;if(prefersReducedMotion()){setTheater(\"final\");setCountT(1);return;}const node=comparisonRef.current;// Fail open: no node, or no observer API → jump straight to the finished\n// state rather than sitting on the hidden one.\nif(!node||typeof IntersectionObserver===\"undefined\"){setTheater(\"final\");setCountT(1);return;}let observer=null;try{observer=new IntersectionObserver(entries=>{entries.forEach(entry=>{if(entry.isIntersecting)setTheater(\"animate\");});},{threshold:.25,rootMargin:\"0px 0px -15% 0px\"});observer.observe(node);}catch{setTheater(\"final\");setCountT(1);return;}// Guard: \"hidden\" renders line items at opacity 0, so it must never be a\n// resting state. If the observer stays silent, play the theater as soon as\n// the card reaches the observer's own trigger point; past the deadline,\n// force the finished state.\nconst deadline=Date.now()+2e4;const guard=window.setInterval(()=>{if(isOnScreen(node,.25,.15))setTheater(\"animate\");else if(Date.now()>deadline){setTheater(\"final\");setCountT(1);}},400);return()=>{if(observer)observer.disconnect();window.clearInterval(guard);};},[band,variant,theater]);const leftItemCount=leftItems.length;const countDuration=leftItemCount*LEFT_ITEM_STAGGER+LEFT_ITEM_DURATION;useEffect(()=>{if(!band||variant!==\"two-column\"||theater!==\"animate\")return;// The finished total is the only resting state: interrupt, unmount, a\n// stalled loop or a loop that was never scheduled all settle on t = 1.\nlet settled=false;const settle=()=>{if(settled)return;settled=true;setCountT(1);};if(typeof requestAnimationFrame!==\"function\"){settle();return;}const t0=performance.now();let raf=0;const tick=now=>{const t=Math.min(1,(now-t0)/countDuration);if(t>=1){settle();return;}setCountT(t);raf=requestAnimationFrame(tick);};raf=requestAnimationFrame(tick);// Guard: force the true total if the loop stalls or never runs.\nconst guard=window.setTimeout(settle,countDuration+1200);return()=>{cancelAnimationFrame(raf);window.clearTimeout(guard);settle();};},[band,variant,theater,countDuration]);useEffect(()=>{if(!band||variant!==\"two-column\"||theater!==\"animate\")return;const id=setTimeout(()=>setPulsed(true),countDuration);return()=>clearTimeout(id);},[band,variant,theater,countDuration]);const effT=theater===\"final\"?1:countT;const easedT=1-Math.pow(1-effT,3);const animatedLeftFinalValue=leftFinalSegments.map((seg,i)=>{if(seg.num===null)return /*#__PURE__*/_jsx(\"span\",{children:seg.text},i);// At rest, render the authored substring verbatim — never a re-derived\n// number — so separators, decimals and currency formatting are exact.\nif(effT>=1)return /*#__PURE__*/_jsx(\"span\",{style:{fontVariantNumeric:\"tabular-nums\"},children:seg.text},i);const value=Math.round(countStart+(seg.num-countStart)*easedT);const display=seg.text.includes(\",\")?value.toLocaleString(\"en-US\"):String(value);return /*#__PURE__*/_jsx(\"span\",{style:{fontVariantNumeric:\"tabular-nums\"},children:display},i);});const leftItemAnim=i=>!band?{}:{opacity:theater===\"hidden\"?0:1,transform:theater===\"hidden\"?\"translateY(10px)\":\"translateY(0)\",transition:theater===\"animate\"?`opacity ${LEFT_ITEM_DURATION}ms ${ease} ${i*LEFT_ITEM_STAGGER}ms, transform ${LEFT_ITEM_DURATION}ms ${ease} ${i*LEFT_ITEM_STAGGER}ms`:undefined};const rightItemAnim=!band?{}:{opacity:theater===\"hidden\"?0:1,transition:theater===\"animate\"?\"opacity 300ms ease-out\":undefined};const checkAnim=i=>({opacity:theater===\"hidden\"?0:1,transform:theater===\"hidden\"?\"translateY(-50%) scale(0)\":\"translateY(-50%) scale(1)\",transition:theater===\"animate\"?`transform 450ms ${overshoot} ${i*120}ms, opacity 450ms ${overshoot} ${i*120}ms`:undefined});// The delta note is copy, not chrome: it shows whenever the count has settled,\n// so an interrupted pulse timer can't leave it permanently invisible.\nconst showDelta=pulsed||theater===\"final\"||effT>=1;// TYPE SCALE (2026-08-12), banded two-column card: both uppercase labels 11 -> 13, the\n// scenario line 16 -> 17. Both labels were already tracked at 0.16em - the eased value for a\n// 13px eyebrow - so the tracking is unchanged. The step survives: labels 13 sit under the 16\n// line items, which sit under the 17 scenario line and the untouched clamp() total.\nconst scenarioLabelStyle={fontFamily:\"Urbanist, sans-serif\",fontSize:13,fontWeight:600,letterSpacing:\"0.16em\",textTransform:\"uppercase\",color:effSubtle,marginBottom:6};const scenarioValueStyle={fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(19),fontWeight:600,color:effSubtle,lineHeight:1.45,marginBottom:24};const finalLabelStyle={fontFamily:\"Urbanist, sans-serif\",fontSize:13,fontWeight:600,letterSpacing:\"0.16em\",textTransform:\"uppercase\",color:effSubtle,marginBottom:10};const finalValueStyle={fontFamily:\"Urbanist, sans-serif\",fontSize:\"clamp(30px, 3.2vw, 44px)\",fontWeight:800,letterSpacing:\"-0.01em\",lineHeight:1.05,fontVariantNumeric:\"tabular-nums\"};// OVERSIZED DISPLAY ON NARROW (2026-08-12). The un-banded two-column variant renders its\n// price value at a FIXED 40px, with no clamp to soften it — at the 400px reference that is\n// an oversized display sitting well above the 28–30px the rest of the mobile type is built\n// to. The banded variant is already correct and is left alone: its clamp(30px, 3.2vw, 44px)\n// resolves to the 30px FLOOR at 400px, because 3.2vw is only 12.8px there — the vw term is\n// inert below 938px, so the floor is what actually paints on every phone and on iPad\n// portrait alike. 30px here matches that floor exactly, so both variants read at one size\n// in the narrow regime. Desktop keeps its 40px untouched.\nconst barePriceFontSize=isNarrow?30:40;const parseFeatureRows=s=>s.split(\"\\n\").map(line=>line.trim()).filter(line=>line.length>0).map(line=>{const parts=line.split(\"|\").map(p=>p.trim());return{feature:parts[0]||\"\",leftValue:parts[1]||\"\",rightValue:parts[2]||\"\",highlight:parts[3]||\"none\",rightLink:parts[4]||\"\",rightLinkLabel:parts[5]||\"\"};});const hasFooter=showCrossLink||showCrossLink2||sourceCitation.trim().length>0;const footerLinks=/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:band?14:32,flexWrap:\"wrap\",alignItems:\"center\"},children:[showCrossLink2&&crossLink2Label.trim().length>0&&crossLink2Href.trim().length>0&&/*#__PURE__*/_jsx(CrossLink,{label:crossLink2Label,href:crossLink2Href,accentColor:effAccent,ease:ease,band:band}),showCrossLink&&crossLinkLabel.trim().length>0&&/*#__PURE__*/_jsx(CrossLink,{label:crossLinkLabel,href:crossLinkHref,accentColor:effAccent,ease:ease,band:band})]});const gutter=band?isNarrow?24:64:24;// NARROW BAND PADDING (2026-08-12). bandPaddingY is authored against a desktop band — the\n// default is 112 and live instances run higher — so on a 400px phone the band opened with\n// 112px of empty colour, then closed with another 112px: 224px of scroll, over half a\n// screen, carrying nothing. Capped inside the narrow regime only, at the same order as the\n// other mobile section paddings in the system (Footer 64, TrustStrip 56/32). The control,\n// its defaultValue and every desktop value are untouched — this is a render-time clamp, the\n// same shape as TrustStripSection's logo-height cap.\nconst effBandPaddingY=isNarrow?Math.min(bandPaddingY,72):bandPaddingY;const outerStyle={width:\"100%\",padding:band?`${effBandPaddingY}px ${gutter}px`:\"60px 24px\",boxSizing:\"border-box\",backgroundColor:band?bandOuterBg:undefined,marginTop:bandMarginTop||0,marginBottom:bandMarginBottom||0};const bandHeader=band&&headerHeadline.trim().length>0&&/*#__PURE__*/_jsx(\"div\",{style:{maxWidth:1100,margin:\"0 auto\"},children:/*#__PURE__*/_jsx(SectionHeader,{eyebrow:headerEyebrow,headline:headerHeadline,scriptLine:headerScriptLine,scriptColor:sage,subline:headerSubline,variant:\"with-subline\",showChrome:false,maxWidth:2e3,paddingTop:0,paddingBottom:48,textColor:headerTextColor,subtleTextColor:headerSubtleColor,accentColor:sage})});if(variant===\"two-column\"){const blockReveal=band?{}:{opacity:revealed?1:0,transform:revealed?\"translateY(0)\":\"translateY(16px)\",transition:`opacity 880ms ${ease}, transform 880ms ${ease}`};const leftCardStyle=band?{backgroundColor:effSurface,borderRadius:20,padding:isNarrow?28:36,border:`1px solid ${effHairline}`,boxSizing:\"border-box\",display:\"flex\",flexDirection:\"column\"}:{};const rightCardStyle=band?{backgroundColor:effSurface,borderRadius:20,padding:isNarrow?28:36,border:\"1px solid rgba(150, 192, 165, 0.45)\",boxShadow:\"0 0 36px rgba(150, 192, 165, 0.12)\",boxSizing:\"border-box\",display:\"flex\",flexDirection:\"column\"}:{};return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:outerStyle,children:[band&&/*#__PURE__*/_jsx(\"style\",{children:`\n                        @keyframes smcoFinalPulse {\n                            0% { transform: scale(1); text-shadow: 0 0 0 rgba(150, 192, 165, 0); }\n                            40% { transform: scale(1.06); text-shadow: 0 0 24px rgba(150, 192, 165, 0.5); }\n                            100% { transform: scale(1); text-shadow: 0 0 0 rgba(150, 192, 165, 0); }\n                        }\n                        .smco-final-pulse { animation: smcoFinalPulse 600ms cubic-bezier(0.16, 1, 0.3, 1) both; }\n                    `}),bandHeader,/*#__PURE__*/_jsxs(\"div\",{ref:comparisonRef,style:{maxWidth:1100,margin:\"0 auto\",display:\"grid\",gridTemplateColumns:isNarrow?\"1fr\":\"1fr 1fr\",gap:band?isNarrow?24:40:isNarrow?32:60,...blockReveal},children:[/*#__PURE__*/_jsxs(\"div\",{style:leftCardStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:13,fontWeight:600,letterSpacing:\"0.16em\",textTransform:\"uppercase\",color:effSubtle,marginBottom:16},children:leftLabel}),band?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:scenarioLabelStyle,children:leftPriceHeader}),/*#__PURE__*/_jsx(\"div\",{style:scenarioValueStyle,children:leftPriceValue})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(18),color:effSubtle,marginBottom:8},children:leftPriceHeader}),/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:barePriceFontSize,fontWeight:800,color:effText,letterSpacing:\"-0.025em\",lineHeight:1,marginBottom:24},children:leftPriceValue})]}),/*#__PURE__*/_jsx(\"div\",{style:{height:1,backgroundColor:effHairline,marginBottom:16}}),leftItems.map((item,i)=>/*#__PURE__*/_jsxs(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(18),color:effText,lineHeight:1.6,paddingLeft:band?24:16,position:\"relative\",...leftItemAnim(i)},children:[band?/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",left:0,top:\"50%\",transform:\"translateY(-50%)\",display:\"inline-flex\"},children:/*#__PURE__*/_jsx(XMark,{})}):/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",left:0,color:effSubtle},children:\"+\"}),item]},i)),band?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{height:1,backgroundColor:effHairline,marginTop:16}}),/*#__PURE__*/_jsxs(\"div\",{style:{paddingTop:18,marginTop:\"auto\"},children:[leftFinalParts.label.length>0&&/*#__PURE__*/_jsx(\"div\",{style:finalLabelStyle,children:leftFinalParts.label}),/*#__PURE__*/_jsx(\"div\",{style:{...finalValueStyle,color:effText},children:animatedLeftFinalValue})]})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{height:1,backgroundColor:effHairline,margin:\"16px 0\"}}),/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(19),fontWeight:700,color:effText},children:leftFinal})]})]}),/*#__PURE__*/_jsxs(\"div\",{style:rightCardStyle,children:[/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:13,fontWeight:600,letterSpacing:\"0.16em\",textTransform:\"uppercase\",color:effAccent,marginBottom:16},children:rightLabel}),band?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:scenarioLabelStyle,children:rightPriceHeader}),/*#__PURE__*/_jsx(\"div\",{style:scenarioValueStyle,children:rightPriceValue})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(18),color:effSubtle,marginBottom:8},children:rightPriceHeader}),/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:barePriceFontSize,fontWeight:800,color:effText,letterSpacing:\"-0.025em\",lineHeight:1,marginBottom:24},children:rightPriceValue})]}),/*#__PURE__*/_jsx(\"div\",{style:{height:1,backgroundColor:`${effAccent}66`,marginBottom:16}}),rightItems.map((item,i)=>/*#__PURE__*/_jsxs(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(18),color:effText,lineHeight:1.6,paddingLeft:band?25:16,position:\"relative\",...rightItemAnim},children:[band?/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",left:0,top:\"50%\",display:\"inline-flex\",...checkAnim(i)},children:/*#__PURE__*/_jsx(CheckMark,{})}):/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",left:0,color:effAccent},children:\"✓\"}),item]},i)),band?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{height:1,backgroundColor:`${effAccent}66`,marginTop:16}}),/*#__PURE__*/_jsxs(\"div\",{style:{paddingTop:18,marginTop:\"auto\"},children:[rightFinalParts.label.length>0&&/*#__PURE__*/_jsx(\"div\",{style:finalLabelStyle,children:rightFinalParts.label}),/*#__PURE__*/_jsx(\"div\",{className:pulsed?\"smco-final-pulse\":undefined,style:{...finalValueStyle,color:sage,transformOrigin:\"left center\"},children:rightFinalParts.value}),deltaNote.trim().length>0&&/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(18),fontWeight:600,color:\"rgba(150, 192, 165, 0.9)\",marginTop:10,opacity:showDelta?1:0,transition:\"opacity 500ms ease-out\"},children:deltaNote})]})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{height:1,backgroundColor:`${effAccent}66`,margin:\"16px 0\"}}),/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(19),fontWeight:700,color:effAccent},children:rightFinal})]})]})]}),hasFooter&&/*#__PURE__*/_jsxs(\"div\",{style:{maxWidth:1100,margin:\"40px auto 0\",paddingTop:24,borderTop:`1px solid ${effHairline}`,display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",gap:24,flexWrap:\"wrap\"},children:[sourceCitation.trim().length>0&&/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:13,color:effSubtle,fontStyle:\"italic\"},children:sourceCitation}),footerLinks]})]});}const rows=parseFeatureRows(featureRows);const cellWrap={display:\"flex\",alignItems:\"center\",gap:8};// NARROW FEATURE GRID (2026-08-11): at 390px the card has ~342px of inner width, and\n// \"1.4fr 1fr 1fr\" with 24px of horizontal cell padding left ~93px for the feature name and\n// ~52px per value cell (the SMCo cell also carries a 15px check + 8px gap), so the content\n// forced the tracks past the card and overflow: hidden clipped the SMCo column. In the narrow\n// regime each row becomes one stacked block: feature name as the heading, then the two values\n// as LABELED rows — the column headers are gone at that width, so an unlabeled value would not\n// say whose it is. Padding drops 16px 24px → 12px 14px.\n// 2026-08-12: the regime boundary moves 768px → 881px. iPad portrait at 810px was rendering\n// the three-track desktop grid — 720px of card across \"1.4fr 1fr 1fr\" leaves ~241/158/158,\n// and the two value cells lose 48px each to padding, so the SMCo column was down to ~110px of\n// text with a check mark in it. It gets the stacked rows now. Nothing below runs at >=881px.\nconst narrowCellPad=\"12px 14px\";// TYPE SCALE (2026-08-12): 10.5 -> 13, the smallest text in the file. Tracking stays at\n// 0.16em - already the eased value for a 13px eyebrow - so the label gains ~24% width, not\n// ~40%. At 390px the stacked cell has ~314px of inner width against ~173px for the default\n// \"THEIR LISTED PRICE\", so it holds one line; a label past ~30 characters will wrap.\nconst stackedLabelStyle={fontFamily:\"Urbanist, sans-serif\",fontSize:13,fontWeight:600,letterSpacing:\"0.16em\",textTransform:\"uppercase\",marginBottom:5};return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:outerStyle,children:[bandHeader,/*#__PURE__*/_jsxs(\"div\",{style:{maxWidth:1100,margin:\"0 auto\",backgroundColor:effSurface,borderRadius:20,border:`1px solid ${effHairline}`,overflow:\"hidden\",opacity:revealed?1:0,transform:revealed?\"translateY(0)\":\"translateY(16px)\",transition:`opacity 880ms ${ease}, transform 880ms ${ease}`},children:[!isNarrow&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"grid\",gridTemplateColumns:\"1.4fr 1fr 1fr\",gap:0,backgroundColor:`${effAccent}14`,borderBottom:`1px solid ${effHairline}`},children:[/*#__PURE__*/_jsx(\"div\",{style:{padding:\"16px 24px\",fontFamily:\"Urbanist, sans-serif\",fontSize:13,fontWeight:600,letterSpacing:\"0.16em\",textTransform:\"uppercase\",color:effSubtle},children:\"Feature\"}),/*#__PURE__*/_jsx(\"div\",{style:{padding:\"16px 24px\",fontFamily:\"Urbanist, sans-serif\",fontSize:13,fontWeight:600,letterSpacing:\"0.16em\",textTransform:\"uppercase\",color:effSubtle,borderLeft:`1px solid ${effHairline}`},children:leftLabel}),/*#__PURE__*/_jsx(\"div\",{style:{padding:\"16px 24px\",fontFamily:\"Urbanist, sans-serif\",fontSize:13,fontWeight:600,letterSpacing:\"0.16em\",textTransform:\"uppercase\",color:effAccent,borderLeft:`1px solid ${effHairline}`},children:rightLabel})]}),rows.map((row,i)=>isNarrow?/*#__PURE__*/_jsxs(\"div\",{style:{display:\"grid\",gridTemplateColumns:\"1fr\",borderTop:i>0?`1px solid ${effHairline}`:undefined},children:[/*#__PURE__*/_jsx(\"div\",{style:{padding:narrowCellPad,fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(19),fontWeight:700,color:effText,backgroundColor:`${effAccent}14`},children:row.feature}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:narrowCellPad,borderTop:`1px solid ${effHairline}`,backgroundColor:row.highlight===\"left\"?`${effAccent}1a`:\"transparent\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{...stackedLabelStyle,color:effSubtle},children:leftLabel}),/*#__PURE__*/_jsxs(\"div\",{style:{...cellWrap,fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(18),color:row.highlight===\"left\"?effText:effSubtle,fontWeight:row.highlight===\"left\"?600:400},children:[row.highlight===\"left\"&&/*#__PURE__*/_jsx(\"span\",{style:{flex:\"0 0 auto\",display:\"inline-flex\"},children:/*#__PURE__*/_jsx(CheckMark,{})}),/*#__PURE__*/_jsx(\"span\",{children:row.leftValue})]})]}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:narrowCellPad,borderTop:`1px solid ${effHairline}`,backgroundColor:row.highlight===\"right\"?`${effAccent}1a`:\"transparent\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{...stackedLabelStyle,color:effAccent},children:rightLabel}),/*#__PURE__*/_jsxs(\"div\",{style:{...cellWrap,alignItems:row.rightLink.length>0?\"flex-start\":\"center\",fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(18),color:effText,fontWeight:row.highlight===\"right\"?600:400},children:[row.highlight===\"right\"&&/*#__PURE__*/_jsx(\"span\",{style:{flex:\"0 0 auto\",display:\"inline-flex\",marginTop:row.rightLink.length>0?2:0},children:/*#__PURE__*/_jsx(CheckMark,{})}),/*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",flexDirection:\"column\",gap:5},children:[/*#__PURE__*/_jsx(\"span\",{children:row.rightValue}),row.rightLink.length>0&&/*#__PURE__*/_jsx(\"a\",{href:row.rightLink,style:{fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(16),fontWeight:600,color:effAccent,textDecoration:\"none\",letterSpacing:\"0.02em\",borderBottom:`1px solid ${effAccent}55`,alignSelf:\"flex-start\",paddingBottom:1},children:row.rightLinkLabel.length>0?row.rightLinkLabel:\"Learn more →\"})]})]})]})]},i):/*#__PURE__*/_jsxs(\"div\",{style:{display:\"grid\",gridTemplateColumns:\"1.4fr 1fr 1fr\",borderTop:i>0?`1px solid ${effHairline}`:undefined},children:[/*#__PURE__*/_jsx(\"div\",{style:{padding:\"16px 24px\",fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(18),fontWeight:600,color:effText},children:row.feature}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"16px 24px\",fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(18),color:row.highlight===\"left\"?effText:effSubtle,borderLeft:`1px solid ${effHairline}`,backgroundColor:row.highlight===\"left\"?`${effAccent}1a`:\"transparent\",fontWeight:row.highlight===\"left\"?600:400,...cellWrap},children:[row.highlight===\"left\"&&/*#__PURE__*/_jsx(\"span\",{style:{flex:\"0 0 auto\",display:\"inline-flex\"},children:/*#__PURE__*/_jsx(CheckMark,{})}),/*#__PURE__*/_jsx(\"span\",{children:row.leftValue})]}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:\"16px 24px\",fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(18),color:effText,borderLeft:`1px solid ${effHairline}`,backgroundColor:row.highlight===\"right\"?`${effAccent}1a`:\"transparent\",fontWeight:row.highlight===\"right\"?600:400,...cellWrap,alignItems:row.rightLink.length>0?\"flex-start\":\"center\"},children:[row.highlight===\"right\"&&/*#__PURE__*/_jsx(\"span\",{style:{flex:\"0 0 auto\",display:\"inline-flex\",marginTop:row.rightLink.length>0?2:0},children:/*#__PURE__*/_jsx(CheckMark,{})}),/*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",flexDirection:\"column\",gap:5},children:[/*#__PURE__*/_jsx(\"span\",{children:row.rightValue}),row.rightLink.length>0&&/*#__PURE__*/_jsx(\"a\",{href:row.rightLink,style:{fontFamily:\"Urbanist, sans-serif\",fontSize:bodyPx(16),fontWeight:600,color:effAccent,textDecoration:\"none\",letterSpacing:\"0.02em\",borderBottom:`1px solid ${effAccent}55`,alignSelf:\"flex-start\",paddingBottom:1},children:row.rightLinkLabel.length>0?row.rightLinkLabel:\"Learn more →\"})]})]})]},i))]}),hasFooter&&/*#__PURE__*/_jsxs(\"div\",{style:{maxWidth:1100,margin:\"20px auto 0\",display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",gap:24,flexWrap:\"wrap\"},children:[sourceCitation.trim().length>0&&/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Urbanist, sans-serif\",fontSize:13,color:effSubtle,fontStyle:\"italic\"},children:sourceCitation}),footerLinks]})]});}addPropertyControls(ComparisonTable,{variant:{type:ControlType.Enum,title:\"Variant\",options:[\"two-column\",\"feature-grid\"],defaultValue:\"two-column\"},bandMode:{type:ControlType.Enum,title:\"Band Mode\",options:[\"none\",\"dark\",\"soft\"],defaultValue:\"none\"},bandPaddingY:{type:ControlType.Number,title:\"Band Padding Y\",defaultValue:112,min:0,max:320,step:4,hidden:props=>props.bandMode===\"none\"},bandMarginTop:{type:ControlType.Number,title:\"Band Margin Top\",defaultValue:0,min:0,max:200,step:4,hidden:props=>props.bandMode===\"none\"},bandMarginBottom:{type:ControlType.Number,title:\"Band Margin Bottom\",defaultValue:0,min:0,max:200,step:4,hidden:props=>props.bandMode===\"none\"},headerEyebrow:{type:ControlType.String,title:\"Header: Eyebrow\",defaultValue:\"\",hidden:props=>props.bandMode===\"none\"},headerHeadline:{type:ControlType.String,title:\"Header: Headline\",displayTextArea:true,defaultValue:\"\",hidden:props=>props.bandMode===\"none\"},headerScriptLine:{type:ControlType.String,title:\"Header: Script Line\",defaultValue:\"\",hidden:props=>props.bandMode===\"none\"},headerSubline:{type:ControlType.String,title:\"Header: Subline\",displayTextArea:true,defaultValue:\"\",hidden:props=>props.bandMode===\"none\"},leftLabel:{type:ControlType.String,title:\"Left Label\",defaultValue:\"Their listed price\"},rightLabel:{type:ControlType.String,title:\"Right Label\",defaultValue:\"Our listed price\"},leftPriceHeader:{type:ControlType.String,title:\"Left: Price Header\",defaultValue:\"Cozymeal Signature tier\",hidden:props=>props.variant!==\"two-column\"},leftPriceValue:{type:ControlType.String,title:\"Left: Price Value\",defaultValue:\"$150\",hidden:props=>props.variant!==\"two-column\"},leftLineItems:{type:ControlType.String,title:\"Left: Line Items\",displayTextArea:true,defaultValue:\"Shipping ($25–40)\\nSales tax (varies)\\nInstructor fee ($15)\",hidden:props=>props.variant!==\"two-column\"},leftFinal:{type:ControlType.String,title:\"Left: Final Total\",defaultValue:\"Final per kit: $200–210\",hidden:props=>props.variant!==\"two-column\"},rightPriceHeader:{type:ControlType.String,title:\"Right: Price Header\",defaultValue:\"Sweet Moments Co. Signature\",hidden:props=>props.variant!==\"two-column\"},rightPriceValue:{type:ControlType.String,title:\"Right: Price Value\",defaultValue:\"$150\",hidden:props=>props.variant!==\"two-column\"},rightLineItems:{type:ControlType.String,title:\"Right: Line Items\",displayTextArea:true,defaultValue:\"Free overnight shipping\\nSales tax included\\nLive chef instruction\",hidden:props=>props.variant!==\"two-column\"},rightFinal:{type:ControlType.String,title:\"Right: Final Total\",defaultValue:\"Final per kit: $150\",hidden:props=>props.variant!==\"two-column\"},countFrom:{type:ControlType.Number,title:\"Count From\",defaultValue:0,min:0,step:50,hidden:props=>props.bandMode===\"none\"||props.variant!==\"two-column\"},deltaNote:{type:ControlType.String,title:\"Delta Note\",displayTextArea:true,defaultValue:\"\",hidden:props=>props.bandMode===\"none\"||props.variant!==\"two-column\"},featureRows:{type:ControlType.String,title:\"Feature Rows (feature | left | right | highlight | rightLink? | rightLinkLabel?)\",displayTextArea:true,defaultValue:\"Pricing model | Per-person | Per-kit all-in | right\\nIngredients | Dry pantry | Fresh pre-portioned | right\\nInstruction | Marketplace | Chef-led, in-house | right\\nShipping | Variable | Free overnight | right\\nBranded keepsakes | Add-on | Included (Signature+) | right\",hidden:props=>props.variant!==\"feature-grid\"},fontScale:{type:ControlType.Number,title:\"Font Scale\",defaultValue:1,min:.6,max:1.6,step:.05,description:\"Multiplies the table's body/row text (1 = the standard raised size).\"},sourceCitation:{type:ControlType.String,title:\"Source Citation\",defaultValue:\"Pricing data from competitor public site as of 2026-06-07\"},crossLinkLabel:{type:ControlType.String,title:\"Cross-Link Label\",defaultValue:\"Read the full comparison →\"},crossLinkHref:{type:ControlType.Link,title:\"Cross-Link\"},showCrossLink:{type:ControlType.Boolean,title:\"Show Cross-Link\",defaultValue:true},crossLink2Label:{type:ControlType.String,title:\"Cross-Link 2 Label\",defaultValue:\"\"},crossLink2Href:{type:ControlType.Link,title:\"Cross-Link 2\"},showCrossLink2:{type:ControlType.Boolean,title:\"Show Cross-Link 2\",defaultValue:false},accentColor:{type:ControlType.Color,title:\"Accent (Sage)\",defaultValue:\"#96c0a5\"},surfaceColor:{type:ControlType.Color,title:\"Surface\",defaultValue:\"#ffffff\"},surfaceDarkColor:{type:ControlType.Color,title:\"Surface Dark\",defaultValue:\"#25201b\"},textColor:{type:ControlType.Color,title:\"Text\",defaultValue:\"#0e0e0e\"},textDarkColor:{type:ControlType.Color,title:\"Text Dark\",defaultValue:\"#f4f4f4\"},subtleTextColor:{type:ControlType.Color,title:\"Text Subtle\",defaultValue:\"rgba(14, 14, 14, 0.62)\"},subtleTextDarkColor:{type:ControlType.Color,title:\"Text Subtle Dark\",defaultValue:\"rgba(244, 244, 244, 0.7)\"},hairlineColor:{type:ControlType.Color,title:\"Hairline\",defaultValue:\"rgba(14, 14, 14, 0.1)\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ComparisonTable\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\",\"framerIntrinsicHeight\":\"540\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ComparisonTable.map"],"mappings":"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"}