// Reusable service-page template. Pass in service-specific content. const ServicePage = ({ eyebrow, title, lead, capabilities, process, deliverables, stats, faqs, related, }) => ( <> {/* Capabilities */} What's included Capabilities under this engagement. {capabilities.map((c, i) => ( {c.icon} {c.t} {c.d} ))} {/* Stats */} {stats && ( {stats.map((s, i) => ( {s.n} {s.l} ))} )} {/* Process */} The process How we'll actually run it. {process.map((p, i) => ( {String(i+1).padStart(2,"0")} {p.t} {p.d} ))} {/* Deliverables */} What you get Deliverables, itemised. Every engagement comes with a written scope. Here's what shows up in the shared folder. {deliverables.map((d, i) => ( {String(i+1).padStart(2,"0")} {d.t} {d.d} ))} What clients actually ask.>}/> {/* Related */} {related && ( Pairs well with {related.map((r, i) => ( { e.currentTarget.style.borderColor = "var(--brand-cobalt)"; e.currentTarget.style.transform = "translateY(-2px)"; }} onMouseLeave={e => { e.currentTarget.style.borderColor = "var(--border)"; e.currentTarget.style.transform = "translateY(0)"; }} > {r.t} {r.d} ))} )} > ); window.ServicePage = ServicePage;
{c.d}
{p.d}
Every engagement comes with a written scope. Here's what shows up in the shared folder.