const { Annotate, Eyebrow, Button, Card, Tag, Stat, SectionHeader } = window.SoftVerxDesignSystem_6fd95b; const H = window.SX_DATA; const TICKER = ["AI agents", "Document intelligence", "Data platforms at scale", "Web & mobile apps", "Cloud & DevOps", "Model training and deployment", "Visual inspection", "Load forecasting", "Meter-to-cash", "Edge software", "Production traceability", "Industrial telemetry", "Smart metering"]; function HomeHero({ mobile }) { return (
{/* Three sources: one drifting centre, two fixed at the corners. The pair is what gives the hero its grade — the centre alone reads flat. */}

Software that{mobile ?
: " "}sees, thinks and endures.

AI agents, document intelligence, computer vision and data systems at national scale. Built end to end, not a slice of it.

Or start with a two-week discovery sprint. You keep the plan either way.

{/* Three figures, not five, and one of them moves. A row of simultaneous count-ups reads as a widget; a single one reads as a measurement. Every value comes from the data file, none is typed here. */}
{[ { v: H.company.years, s: " yrs", l: "Engineering since 1999", count: true }, { v: H.company.served, s: "", l: "End customers on platforms we run" }, { v: H.company.programmes, s: "", l: "Programmes delivered since 1999" }, ].map((s) => (
{s.count ? : (<>
{s.v}{s.s}
{s.l}
)}
))}
{[...TICKER, ...TICKER].map((t, i) => {t})}
); } Object.assign(window, { HomeHero });