Skip to content

Website that sells · under construction

A website that cannot publish a number the client has not approved: Cessca's B2B site

Occupational health and safety consultancy in Cuautla, Mexico. A static ten-page site that captures leads on WhatsApp, with a custom verifier and an editorial lock that blocks unapproved text. Under construction.

Client
Cessca
Industry
B2B occupational health, safety and civil protection consultancy · Cuautla, Mexico
10
Pages built
7
Templates
4 of 7
Sub-projects integrated
126
Drafts blocked (Aug 18, 2026)

The problem

Cessca needed a site that brings qualified requests and routes them to WhatsApp, where the business closes. No online store: in this sector the product is a document and the sale is a conversation. The hard part was not the technology.

  • Each service line competes for different searches; a single-page site competes for none of them.
  • Almost everything it sells is regulatory: a misquoted standard or a self-written accreditation is a legal problem for the client.
  • The existing sales material came with the sector's clichés and with figures (years of experience, companies served) nobody had documented.
  • The client has to be able to maintain it: a catalogue and a standards centre with dozens of entries.

Before

  • Sales material: a corporate PDF presentation written in the sector's language.
  • Trust figures: no document backing them when the project started.

What we built

PhaseDelivered working
Shared baseHeader, footer and metadata from a single source. Company data in one file. Design system defined before the first page.
Six service pagesOne template, six pages: each contributes data, not markup. Fixed sections; the ones without material are not drawn; 'What you receive' is always drawn, even when it says 'pending confirmation'.
WhatsApp captureEvery button opens the chat with a prefilled message naming the service, product or standard it came from. Floating button on every page and a fixed mobile bar with Call and WhatsApp.
Custom verifierBuilds the site and checks the output: internal links, a single H1, image alt and dimensions, unique title and description, correct canonical, privacy notice inside every form, no orphan pages. It has its own tests.
Editorial lockText without an approved brief carries a draft mark, is visible on screen and is counted by the verifier. The publish command fails while any remain: 126 drafts as of August 18, 2026.
PendingProduct catalogue, standards centre and blog: three of seven sub-projects. Privacy notice linked and intentionally empty: the client's lawyer writes it; until then the form stays off.

Adjustments after delivery

  • Decided not to publish: the 'zero sanctions' promise from the sales material, the lab's accreditation number, client names or logos without written authorization, city pages without real presence, and any experience figure until the data exists.

How it was built

  1. 01

    Discovery and architecture

    Six service lines, six pages, six keyword groups. Fixed URL map before writing a page.

  2. 02

    Design system before the first screen

    Colors, sizes, spacing and components in one document; no hand-written values in the CSS.

  3. 03

    Sub-projects with a spec and a plan

    Seven sub-projects; each removes the pages it delivers from the pending list. That list can only shrink.

  4. 04

    Verifier before pages

    Quality rules written as automatic checks with tests, so no page is done without passing them.

  5. 05

    Content flow without shortcuts

    Page brief → approval → writing → SEO review → client validation → publication. Regulatory content is always validated by the client.

  6. 06

    A list of missing data, handed to the client

    Ordered by what it unblocks. 113 commits between August 14 and 18, 2026.

Technology

Eleventy 3 with Nunjucks templates; own CSS and JavaScript, no browser frameworks; static HTML served by Apache on Hostinger. Node verifier with its own tests. Catalogue and standards designed as data (JSON the client edits) plus one template per entry type.

Verified figures

Pages built
10
Templates
7
Sub-projects integrated
4 of 7
Drafts blocked (Aug 18, 2026)
126
Pace
113 commits in 5 days
Service lines with their own page
6
Standards with an in-house lab
7
Browser dependencies
0

Business metrics: none yet, because the site is not live. They will be published when the client measures them 30 and 90 days after launch.

What changed

Confirmed vs missing, separated

Unconfirmed data shows as 'pending confirmation' and the lock prevents publishing it by mistake.

One page per service

Same structure, data-driven, nothing redesigned when adding the next.

Cessca knows what each message is about

The WhatsApp arrives with the originating service, product or standard.

SEO mistakes caught before publishing

Wrong canonicals, duplicate descriptions, images without dimensions.

What is not published, in writing

Instead of arguing it every time.

One list of what is needed from the client

Ordered by what it unblocks.

Does your firm live on referrals?

With no site that brings requests, or one that promises things you never said. Tell us what should happen when someone lands on your site.