Direction 03 · Security print
The visual grammar of documents built to be trusted and hard to forge. Engraved line-work, bone stock, ink navy, a stamp in oxblood. Every invoice carries a rosette drawn from its own transaction hash, so no two documents share a pattern.
A circle split by a perforation. Left half solid, right half outline. One payment, two records. In this direction the solid half fills with engraved line-work instead of flat ink.
Guilloché is the interlaced line-work on banknotes and share certificates. It was used because it is easy to verify by eye and difficult to reproduce. Here it is drawn procedurally from the transaction hash, so the ornament on a document is a function of the payment it records. Change one character of the hash and the pattern changes visibly.
Drawn as an epitrochoid family: two rotating radii whose ratio, phase count and line density are read out of the hash bytes. Roughly 3 kB of canvas code, no image assets, no network request. It renders identically on the invoice, the PDF and the favicon.
Ink dominates. Bone is the ground, never the star. Oxblood appears only on the stamp and on states that need attention. Foil is reserved for the seal ring and is never used for text.
Contrast: Ink on Bone 15.4:1. Ink 2 on Bone 9.1:1. Bone on Ink 15.4:1. Oxblood on Bone 3 7.2:1. Verdigris on Bone 3 6.4:1. All pass AA at body size, and Ink pairs pass AAA. Foil is decorative and never carries text below 24px.
Bodoni Moda for display, because high-stroke-contrast didone is the face of engraved certificates. Newsreader for reading, because it has a real optical-size axis and stays warm at small sizes. Courier Prime for every number, because invoices were typed, and because typewriter figures are unambiguously tabular.
The seal is applied by the system, never by the user. It carries the block number it was granted at, which means the stamp itself is a claim that can be checked.
Rotation is fixed at -8 degrees on documents. Opacity 0.92. It overlaps the perforation deliberately, the way a real stamp lands across a tear line.
Read the chain
Download PDF
Underline never used for buttons. Hover fills with oxblood at 180ms ease-out. No transform, no lift, no shadow. Documents do not float.
Everything above, assembled. The perforation separates the invoice from the stub. The stub is the part the chain wrote.
| Description | Qty | Rate | Amount |
|---|---|---|---|
| Brand system, phase 2 | 1 | 8,400.00 | 8,400.00 |
| Interface design, 6 surfaces | 6 | 640.00 | 3,840.00 |
| Motion direction | 1 | 1,200.00 | 1,200.00 |
Overpaid by 44.19 USDC against the invoice total. FOIL shows the delta rather than rounding it away.
Three moves, total. A document that animates is a document you distrust.
The rosette strokes itself on, 900ms, ease-out, once per document load. It is the only entrance animation in the product.
On verification the seal lands at 1.14 scale and settles to 1.0 over 140ms with a hard cubic-bezier(.2,1.6,.4,1). Paired with the 180ms stamp sound. Fires once.
Opening the stub separates it along the perforation by 6px and reveals downward, 220ms. No fade.
Everything else is instant. No scroll reveals, no parallax, no counters ticking up. All three respect prefers-reduced-motion by resolving immediately to the end state.