---
version: alpha
name: Studiodumbar
description: Dark design system extracted from studiodumbar.com (DOM-true values, Emblematic extractor 0.2.0, 2026-11-12).
colors:
  background: "#000000"
  on-surface: "#FFFFFF"
typography:
  display-lg:
    fontFamily: Haas
    fontSize: 20px
    fontWeight: 400
    lineHeight: 1
rounded: {}
spacing:
  xxs: 5px
  xs: 10px
  sm: 15px
  base: 5px
omitted:
  - section: rounded
    reason: no rounded corners on painted elements
---

# Studiodumbar

> Extracted from [https://studiodumbar.com/](https://studiodumbar.com/) on 2026-11-12 by Emblematic. Every value below was read from the rendered DOM (computed styles, `document.fonts`, and the fonts Chrome actually used to paint text), not estimated from pixels. When the YAML front matter and this prose disagree, the YAML wins. Copy values from this file exactly; don't transcribe them from memory. Don't copy logos, imagery, illustrations or marketing copy.

## Overview

Studiodumbar uses a dark canvas (#000000) with a monochrome palette. Type is set in **Haas**, with ?px body text. Layout: fluid container, top-fixed+transparent navigation, 2 sections. Built with gsap, lenis, google-tag-manager.

## Colors

Area-weighted from painted backgrounds, text and borders on the 1440px light capture. Roles are inferred from usage (largest background, most text, interactive fills). Every hex is an exact computed value; a role marked *unverified* is a best guess that has not passed review, so its canonical token (e.g. `primary`) is left out of the front matter.

| Token | Hex | OKLCH | Role | Share of paint | CSS variable |
|---|---|---|---|---|---|
| `background` | `#000000` | 0 0 0 | bg | 99.9% | — |
| `on-surface` | `#FFFFFF` | 1 0 0 | text | 0.06% | `--cc-btn-primary-text` |

Contrast: text on background 21:1.

The site does not change under `prefers-color-scheme: dark`.

## Typography

| Family | Role | Weights | Share of text | Source |
|---|---|---|---|---|
| **Haas** | body | 400 | 100.0% | webfont |

Declared in `@font-face` but not used to paint text on this page: Graphik, Haas Display. Don't treat these as the page's fonts.

Scale (px): 20.  Body ?px at line-height normal; display 20px with tracking 0em. Headings are mixed case. On a 390px viewport the body is ?px and display 15px.

## Layout

Spacing follows a 5px base unit; the most used steps are 5, 10, 15px. Content sits in a fluid container. Text density 0 (text area / page area).

Section order (desktop). Kinds below the review threshold are shown as *section*:

1. **nav** (67px, bg #000000)
2. **hero** (900px, bg #000000)

## Shapes

Dominant corner radius 0px; radii in use: none. Borders: none.

## Do's and Don'ts

- Do keep the palette monochrome; there is no chromatic brand accent on the page.
- Do set body copy in Haas at ?px.
- Don't introduce font weights beyond 400.
- Don't add drop shadows; depth comes from tone and borders.
- Do snap spacing to multiples of 5px.
- Don't copy this site's logos, illustrations, photography or copy; use the system, not the brand assets.

## Provenance

Spec v2, extractor 0.2.0. Render quality: **ok**. Vision pass: not run. Fields below confidence 0.7 are hedged or left out above: `components`, `layout.columns`, `layout.hero`, `layout.section_count`, `space.section_padding_px`, `type.ratio`. Full per-field provenance is in `spec.json`.
