Brand

The visual identity of opensight.ch. Every value on this page was measured against the live site — not designed. Where the site is inconsistent, this page says so.

v0.2 · measured 2026-08-22 · source of truth: gitlab.com/butschinet/opensight-brandkit

The mark

An aperture ring in ink grey cut by a magenta bolt — a lens opened by a signal. It carries the observability positioning without spelling it out.

White lockup on ink
White lockup · on dark1287×263
Colour icon
Colour icon512×512
Does not exist
logo_black.png → 404
Dark lockup · on lightmissing
Does not exist
no mono variants
Monochrome setmissing

We ship two assets, raster only. No SVG of anything, no light-background lockup, no monochrome variants. The white lockup works on the live site today only because every template carries has-cover, so the header sits over a cover image rather than its default white bar. Not broken — but a single point of failure.

Clear space & minimum size

Clear space equals the height of the icon mark on every side. Minimum size: lockup 140 px wide, icon 16 px.

Never

Recolour · stretch · rotate · add shadows, glows or outlines · place the white lockup on a light or mid-tone background · re-typeset the wordmark · crop the ring or detach the bolt.

Colour · Tier A — theme tokens

Canonical and shipping site-wide.

Magenta 500
#ff1a75
3.71 · AA large
Ink 900
#15171a
17.96 · AAA
Ink 950
#151719
17.97 · AAA
Slate 500
#738a94
3.63 · AA large
Wash
#e5eff5
surface
Fill
#f1f1f1
surface
Border
#e1e1e1
surface
White
#ffffff
surface

Colour · Tier B — editorial illustration set

Already shipping in the inline SVGs on published posts; documented here for the first time.

Magenta 50
#fff5f9
fill only
Magenta 200
#ffc2da
1.50 · fill
Magenta 700
#d1005e
5.42 · AA
Slate 600
#5b6b73
5.53 · AA
Slate 550
#6f8089
4.10 · AA large
Slate 400
#8b979d
3.00 · fill
Slate 200
#c9d3d8
fill
Canvas
#f6f8f9
surface

The contrast rule

Magenta 500 is a surface colour, not a text colour — on light backgrounds.

Use it for fills, bars, buttons and large display type. For normal-size text on white, use #d1005e. On ink it measures 4.84:1 — AA, so it is safe as text on dark surfaces. The restriction is background-dependent, not absolute.

PairRatioVerdict
#ff1a75 on #ffffff3.71AA large only — current link colour, below the 4.5 floor
#d1005e on #ffffff5.42AA — the compliant partner
#ff1a75 on #15171a4.84AA — safe as text on dark
#738a94 on #ffffff3.63AA large only — current metadata colour
#5b6b73 on #ffffff5.53AA — the drop-in
#15171a on #ffffff17.96AAA

Two open findings on the live site. Inline article links render at 3.71:1 and metadata at 3.63:1 — both below the AA floor for normal text. Each is a one-line change in the Ghost theme. #d1005e and #5b6b73 are already in use in our illustrations, so both are reconciliations rather than new colours.

Off-palette — do not reuse

#b3164f appears as a "dark magenta" in one draft post's diagrams but exists nowhere on the live site. The shipping dark magenta is #d1005e.

Buttons

Primary action Secondary action

Typography

The brand typeface is Montserrat. It is self-hosted by the theme as a variable font (weights 100–900, woff2, latin + latin-ext, font-display: swap) and shipped site-wide on 2026-08-21. It replaced Ghost Casper's stock system stacks, which are now fallbacks only.

Sans — body and headings

Cut your observability bill at the source
"Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, … · headings 700–800 · tracking -0.015em to -0.02em · body line-height 1.5+

Serif — defined, not applied

Cut your observability bill at the source
Georgia, Times, serif · still defined as --font-serif, but no element resolves to it while the theme runs has-sans-body without has-serif-title

Mono — code

--query.lookback-delta
Menlo, Courier, monospace

Resolved 2026-08-21. The cover .site-title previously fell back to the serif stack, so it rendered as Georgia while everything below it was Segoe UI or Roboto. Measured today, <body> carries has-sans-body and not has-serif-title, and --gh-font-heading is unset — so headings and body both resolve to Montserrat. The mixture is gone.

Decided 2026-08-21: Montserrat. Inter had been proposed on the grounds that it was already in use in our SVG illustrations. Measured, that argument did not hold: three inline SVGs on published posts declare font-family="Inter, …", but Inter is loaded nowhere on opensight.ch — no font file, no Google Fonts link, no @font-face — so those illustrations have always rendered in the system fallback, never in Inter. Montserrat also matches the wordmark, which is set in Montserrat Light.

Open finding. Those three SVGs still name a font that is not loaded. They should be reset to Montserrat, which the site now serves. Until then they render in whatever sans the reader’s OS supplies.

Voice & tone

Voice & tone is the messaging half of the brand and lives in the agile tool's brand record, not here — one source of truth, not two that have to agree. In one line:

Conversational, grounded, unhyped. Confident about what works, equally candid about what doesn't. First person singular for hands-on deep-dives, plural for company positioning. No superlatives about our own work. Precise versioning over vague recency — "Strimzi 0.48", never "recent".

Usage rules

  • No recolouring. The palette is fixed — use the tokens.
  • No effects on the mark: no shadows, glows, outlines, gradients or 3-D treatments.
  • No typeface substitution in the wordmark.
  • Respect the contrast floors. A colour marked AA-large is not a body-text colour.
  • Do not invent variants. A missing asset is a gap to fill deliberately in the kit, not something to improvise per use.

Brand usage questions: info@opensight.ch
Assets © OpenSight, Roman Hüsler. Third parties may use the unmodified logo to refer to OpenSight; anything else needs a word first.