function WhyUs() {
const stats = STATS;
const [visible, setVisible] = React.useState(false);
const sectionRef = React.useRef(null);
React.useEffect(() => {
const el = sectionRef.current;
if (!el) return;
const io = new IntersectionObserver(([entry]) => {
if (entry.isIntersecting) { setVisible(true); io.disconnect(); }
}, { threshold: 0.15 });
io.observe(el);
return () => io.disconnect();
}, []);
return (
{/* Header */}
§ 04 · Why choose SSE
Five reasons procurement teams keep coming back.
{/* Stats row */}
{stats.map((s, i) => (
))}
{/* USP list */}
{USPS.map((usp, i) => (
))}
);
}
function USPRow({ usp, idx }) {
const [hover, setHover] = React.useState(false);
return (
setHover(true)}
onMouseLeave={() => setHover(false)}
style={{
display: 'grid',
gridTemplateColumns: '80px 1fr 2fr 60px',
gap: 40,
alignItems: 'center',
padding: '32px 0',
borderBottom: '1px solid rgba(255,255,255,0.12)',
transition: 'all 0.3s',
cursor: 'default',
}} className="sse-usp-row">
{usp.num}
{usp.title}
{usp.body}
);
}
Object.assign(window, { WhyUs });