/* Why ZaviFx — spotlight rows: cursor-tracked glow, wipe fill, expanding copy. */ const WHY = [ ['One brief, one team', 'Design, development and marketing sit together, so nothing is lost between vendors.'], ['Written deliverables', 'Audits, roadmaps and reports arrive in writing — you can act on them without us in the room.'], ['Build quality', 'Speed budgets, semantic markup and accessibility are part of the build, not an afterthought.'], ['You own everything', 'Accounts, code, design files and data stay yours from day one.'], ['One metric per engagement', 'Every retainer reports against a single primary number, agreed before work starts.'], ]; function WhyZavi({ go }) { const ref = React.useRef(null); const [open, setOpen] = React.useState(0); const move = (e) => { const el = ref.current; if (!el) return; const r = el.getBoundingClientRect(); el.style.setProperty('--gx', (e.clientX - r.left) + 'px'); el.style.setProperty('--gy', (e.clientY - r.top) + 'px'); el.dataset.live = ''; }; return (
{ delete e.currentTarget.dataset.live; }}>
); } Object.assign(window, { WhyZavi, WHY });