Skip to content
Greenville Triumph Design Systems Documents

Documents

For anything read on paper: multi-page proposals, reports, guides, registers, and pricing plans that end as a PDF. Pages are US Letter on flat white paper, with a full-colour crest header bar over a navy rule, a running head, and page numbers. There is no weave. Content is text and tables, and the only colours are ink, one navy rule weight, a Fog row tint, and a Mist table head.

Routing

Print and Documents are the two systems most often confused. For a piece that could be either, answer the routing test below before you start.

More than one page, a running head, or page numbers means Documents. One sheet built from type, colour blocks, and the weave means Print.

The routing test

Answer in order and stop at the first yes. There are two answers, Print and Documents.

1Is the reader looking at a picture or a graphic composition, with the words as labels on it?Print
2Does it want a weave band, a navy masthead, or a full bleed colour field?Print
3Is there a Fabiola hero on more than the first sheet?Print
4Is it a dense lookup table that fits one sheet by design, where spilling to a second sheet would make it wrong?Documents
5Does it run to two or more sheets of continuous reading, with sections, tables, and cross references?Documents

Question 4 lands on the .sheet one sheet variant, which is a Documents component. A promotional one-sheeter has already answered yes at question 1, 2, or 3 and gone to Print.

Cover and interior page

Both sheets below are real .page elements from document.css, laid out at 8.5 by 11 inches and scaled onto the screen. Every size in them is a print size.

Greenville Triumph SC
Greenville Triumph SC • Sample subject

Sample Report

One sentence naming the venue, the season, and the single fact a reader needs before page 2.

The lede runs two or three sentences and is capped at 6.6 inches so the cover reads as a page rather than a wall. Everything under the rule is ordinary body copy at 10.5pt.

Sample section one2
Sample section two4
Sample section three6
Sample section four8
Sample section five10
Sample section six12
Sample section seven14
Sample section eight16

Cover. Full-colour crest at 96pt, kicker, Fabiola hero sized by its own character count, standfirst, one 2pt navy rule under the whole bar. No running head and no footer. Fabiola appears here and nowhere else in a document.

Greenville Triumph Sample Report How an interior sheet is built
Section 2

How an interior sheet is built

Every sheet after the cover opens with the running head and closes with the footer. Nothing on the paper touches either one: every block clears both by real space.

A subhead is a heading, not a label

Body copy runs the full content column, 7.4 inches. Two column body text is banned in this class, because at roughly 25 characters a line the copy breaks into short ragged lines while space pools at the foot of the sheet.

Sample callout

A flat Fog panel with a 3pt navy rule down its left edge and nothing else. Emphasis is a rule and a lead-in, never a filled box.

Tables carry the arithmetic

Sample rowCountBasis
First item000Sample
Second item000Sample
Total000

A note carries a caveat, the arithmetic behind a figure, or the thing a reader has to confirm. It never carries new facts.

Sample source • as of a sample date • sample basis2

Interior page. Running head with the simplified sTc mark at 22pt over a 1.5pt navy rule, the document title at the left and the section name at the right, then the eyebrow carrying the section number, the h2, body, and the footer pinned 0.18in off the bottom with a mono page number.

Point scale

The rem and clamp() scale in tokens.css is the screen scale; it is sized against a viewport and does not apply to a fixed sheet. Documents declares its own point scale of eleven sizes, and every font-size in the class resolves to one of them. The Floor column lists minimums; do not size to them by default.

document.css, section 1
TokenValueWhere it goesFloor
--text-doc-heroclamp(32pt, 300cqi / --mast-chars, 120pt)Cover h1, Fabiola, once per document, optional32pt
--text-doc-hero-inter34ptCover h1 on a document that carries no Fabiolaflat, takes no count
--text-doc-h222ptSection opener, Inter 90020pt to 24pt
--text-doc-step19ptStep numeral, tabular, navy
--text-doc-part15ptRun-in part bar, not a section opener
--text-doc-h313ptSubhead, and the step body subhead12pt to 14pt
--text-doc-lede11.5ptCover standfirst and page lede
--text-doc-h411ptThe closing block org line, and nothing else
--text-doc-body10.5ptBody, table cells, notes, captions10.5pt
--text-doc-label10ptEyebrows, table heads, callout labels, and h410pt
--text-doc-chrome9ptRunning head tag, footer, page number9pt, absolute

The one sheet variant adds five more, --text-sheet-title, --text-sheet-head, --text-sheet-body, --text-sheet-note, and --text-sheet-chrome. Nothing outside .sheet may use them. Body holds at 10pt there. Chrome type and table heads run at 8pt and a note at 8.5pt, because a lookup table is not continuous reading. The section title is the one piece of that chrome which does not drop: it holds at 10pt on --text-sheet-head, so a reader scanning the sheet can find the block boundaries. An 8pt body was rejected.

h4 is a label: the label size, 10pt, weight 700, uppercase and tracked, set over a tight list or a short block. Three heading steps plus an eyebrow on one sheet read as four competing ranks, so there is no heading level below h3; use h3. --text-doc-h4 stays at 11pt for the closing block org line only.

Emphasis

Emphasis is a left rule plus a label, never a filled box. A navy patterned block on the paper is banned in every variation, size, and opacity. When a shape keeps failing on rework, delete it instead of reworking it again.

Standard callout

Flat Fog panel, 3pt navy rule on the left edge, uppercase label. No border on the other three sides, no shadow, no radius.

Accent callout

Green rides the rule, never the lead-in text. Triumph Green does not carry small type on white paper, so the label stays navy. One per page at most.

The compact form, for a one line aside inside a step or beside a table.
"A quote block holds language lifted from a source verbatim, in quotation marks. Its rule is Mist, not navy, so it reads as quieter than a callout."

Callout, accent, hint, and quote. The four emphasis shapes in the class; there are no others. Labels 10pt uppercase, panel padding 8pt by 11pt, the rule 3pt navy or 3pt green.

Not allowed

  • A navy ground behind body copy.
  • A weave fill at any opacity.
  • A border on the other three sides of a callout.
  • A shadow.
  • A radius, here or anywhere; the system radius is 0.
  • A block touching the running head or the footer. Set flush to a rule, it reads as one broken shape.
  • Green on the label text. Green goes on the rule only, because Triumph Green does not carry small type on white paper.
  • More than one accent callout per page.

Tables

One value per cell, and every total shows arithmetic a reader can follow line by line. Each table has:

  • A Mist head with a navy 0.75pt underrule.
  • Hairline rows, with Fog on even rows.
  • Mono, right-aligned figures.
  • A quiet trailing column for classification.
  • A total row bounded by two 1pt navy rules.
Sample table, placeholder figures
Line itemUnitsEachSample totalBasis
First sample line000000000Placeholder
Second sample line000000000Placeholder
Third sample line000000000Placeholder
Sample total000000

Basis. Every figure on this sample is a placeholder. Table headers wrap; a nowrap header widens the widest table past the page and Chromium then shrink-to-fit scales the whole PDF, which drops every size below the print floor at once.

Table. Head, rows, and the total row bounded by two navy rules. Cells 10.5pt, heads and captions 10pt, mono figures right aligned and tabular.

Two worked examples side by side

Sample build A
StepValue
Opening figure000
Adjustment000
Result000
Sample build B
StepValue
Opening figure000
Adjustment000
Result000

The register is three columns

Sample register
ItemWhat is openNext step
First open itemA one line statement of the gap, with no new facts in it.A named person does a named thing by a named date.
Second open itemA one line statement of the gap.A named person does a named thing by a named date.

A next step that names nobody is not a next step.

Worked pair and register. Two tables in .cols2 when a reader has to compare one build against another, and the three-column register for what is still open. Two columns, never three: three gives about 25 characters a line.

Figures

Figures sit straight on the page, with no frame, rule, or shadow; the system defines none of those. Four widths ship, 5.2in, 5.6in, 6.3in, and 7.0in. Pick the one that keeps the source above roughly 190dpi at print scale, and never upscale past native pixels or re-encode the source.

Sample seat map figure
Default, 6.3in. The width to reach for first.

The one figure that carries a hairline

Sample screenshot

Screenshots only. A UI screenshot is white to its own edge, so it takes a 0.5pt hairline. An illustration, a render, a map, or a chart does not.

Figure and screenshot. The map runs at the default 6.3in with a centred caption at body size in the quiet ink. The screenshot below it is the one exception that takes an edge.

Sizing a figure

A landscape source is the safe stand-in when you are choosing a width, because a portrait source sizes by width and grows tall, so four widths read as four heights instead.

.figure.shot is the one component sized off the element. Set --w and --h inline, both measured from the source image, and set both or neither. Unset, they fall back to 5.2in by 3.2in, so an unmeasured shot still draws at a usable size.

Three images that make one point share a .figure-row and one caption, each 1.62in tall.

Part bars and step rows

A procedural guide runs on .part dividers and .steps rows. A part bar is a run-in divider with its own 15pt size, separate from the h2 scale, and a document uses part bars or h2 sections at a given level, never both. The step number is navy, because green does not carry small type on white paper.

Part 1

Sample part bar

Steps 1 to 3
1

Sample step heading

The copy centres against the screenshot. A two line instruction beside a 3in portrait shot leaves a dead white block under every step, which is why the row is centred rather than top aligned.

2

Rows sit at their natural height

A hairline separates them. Nothing stretches to fill the sheet, because an evenly stretched step list reads as a table with the rules taken out.

3

An aside rides inside the step

A one line hint sits in the step body, not beside it.
4

The stacked row, for a shot under the copy

The stack modifier drops the third column and returns the row to top alignment, so the screenshot sits under the instruction rather than beside it.

Part bar and steps. The part bar at 15pt, the step numeral at 19pt navy, and the step subhead at 13pt. Row 4 is the stacked row, top aligned with the shot under the copy instead of beside it.

One sheet variant

For a dense staff or client lookup table that fits one sheet by design, where spilling to a second sheet would make it wrong. It keeps the class grammar (white paper, a crest header bar, tokenised colour, and no weave) and changes two things only: the crest drops to 40pt with a 1.5pt rule under the bar, and chrome type may run to 8pt. Body stays at 10pt; an 8pt body was rejected.

Greenville Triumph SC

Sample Reference Sheet

Greenville Triumph SC • sample subject • placeholder figures
Sample section one
Sample categoryColumn AColumn BColumn CNote
First sample row000000000Placeholder
Second sample row000000000Placeholder
Third sample row000000000Placeholder
Fourth sample row000000000Placeholder
Fifth sample row000000000Placeholder
Sixth sample row000000000Placeholder
Sample section two
Sample categoryColumn AColumn BColumn CNote
Seventh sample row000000000Placeholder
Eighth sample row000000000Placeholder
Ninth sample row000000000Placeholder
Tenth sample row000000000Placeholder
Eleventh sample row000000000Placeholder
Twelfth sample row000000000Placeholder
Sample section three
Sample categoryColumn AColumn BColumn CNote
Thirteenth sample row000000000Placeholder
Fourteenth sample row000000000Placeholder
Fifteenth sample row000000000Placeholder
Sixteenth sample row000000000Placeholder
Seventeenth sample row000000000Placeholder
Sample total000000000

Every value on this sheet is a placeholder. The variant gets no colour literals of its own, no fallback font stacks, and no green that is not in the seven.

One sheet, crest 40pt. Title 16pt Inter 800, body 10pt, chrome 8pt, and a 1.5pt navy rule under the bar. It carries a header bar and one centred footer line instead of a running head and a page footer.

Section titles stay at 10pt

Chrome type on this variant runs at 8pt because a lookup table is not continuous reading. The section title is the exception: it stays at 10pt on --text-sheet-head, so a reader scanning the sheet can find the block boundaries.

Overflow spills to a second page

The variant keeps the 11in page box for the same reason .page does. If the content overflows, it spills to a second page, where the build's page-count assert catches it, instead of clipping the last row and passing every check.

Pin one set of column positions down the whole sheet with a fixed table layout and the same colgroup on every table. Auto layout sizes each table from its own longest cell and steps the columns sideways between sections.

Install

Link the three sheets in this order. This folder has no pattern.css and no components.css: the Print components are for screens and flyers, and a document uses the classes in document.css.

tokens.cssByte copy of print/tokens.css. The seven brand colours, the ink ramp, and the Fabiola and Inter metric overrides. Never edited here.
logos.cssByte copy of print/logos.css. The lockups. Its GE Vernova Park rules are retired.
document.cssThe grammar this system owns: page box, cover bar, running chrome, the point scale, headings, tables, callouts, figures, contents, step rows, and the one sheet variant.
agents.mdThe build contract: fifteen rules, each added after a piece was corrected. Read it before the first draft.
README.mdThe short system readme: link order, how to start a document, and how to re-vendor a project's _ds.
templates/proposal-document/The working project to copy: the document.html skeleton, the config, and the build, verify, and completeness checks in archive\.

Preview cards