The Marble Shrine: DS

The marks, tokens, and type that everything on the site is built from. For the components, see the style guide.

Sigil

The upside-down heptagram, a seven-pointed star woven through a masonry ring, is the logomark. It traces back to Jared Connor (Mexican Chocolate), the artist behind more than half of The Mars Volta's posters and a friend of The Marble Shrine, and three specific posters he created for 2008 shows.

We pulled the heptagram out of those posters and, over the next eighteen years, carried it through three versions of the site's logo. Jared even animated a gif for us when we were first launching the site (see below), and we've used elements of it throughout the years.

The source posters

Three Mexican Chocolate posters for The Mars Volta, April 2008 (two collaborations with Alan Forbes). Click to open full-size.

Animated Marble Shrine logo Jared Connor made, c. 2011
An animated mark Jared made us, c. 2011.

Three logos, eighteen years

  1. The Marble Shrine logo, 2008–2018 2008–2018The first mark: heptagram, monogram, and serpents, lifted from the posters.
  2. The Marble Shrine logo, 2018–2026 2018–2026A cleaner, more intricate heptagram, but still a fixed raster image.
  3. 2026 →Rebuilt from scratch as a single vector, drawn entirely in code.

The 2026 sigil, in code

The current mark is generated. The ring, the {7/2} star, the over-under weave, and the seven tipped crosses are all computed from a handful of constants. One file does the whole job: it scales cleanly from a 16px favicon up to a billboard with no raster exports and no pixelation, re-inks itself for light or dark mode from a single color value, and can animate its own strokes. Everything below is rendered from that same component.

Getting there

Rebuilding it in code took a while to feel right. A few stages along the way:

Just the geometry: the {7/2} star inside the heptagon ring.
Adding weight: the star as a solid woven ribbon.
Masonry band added, close to final.

Animation studies

A computed mark can draw its own strokes on. Some entrances we tried, each rendered live from the component (hover to replay):

Draw-on
Stairstep
Draw + spin (the keeper)

Scale: sigil

One vector, every size. Same file:

16 32 64 128 256

Scale: logomark

The full lockup, composed from the same vector sigil + wordmark, stacked at increasing sizes. Inks with the theme, like everything else:

The Marble Shrine 24 The Marble Shrine 40 The Marble Shrine 64

Color

Warm near-black and warm off-white make up the marble palette. Never pure black or white; no decorative accent (the accent is a neutral marble grey). Every token has a mirrored value in the other theme. to see the other set.

Surfaces

--bg Page #1a1c1f
--bg-elev Card #23262a
--bg-elev-2 Raised / hover #2c3035
--rule Hairline #33363b

Ink

--fg-strong Headings #ecebe7
--fg Body #d8d6d1
--muted Secondary #8a8d92
--accent Emphasis / interactive #a8a39a

Recording sources. Fixed archival hues, the one exception to theme tokens.

--src-aud Audience #c9a227
--src-sbd Soundboard #2e9595
--src-mtx Matrix #ad74cd
--src-fm FM / broadcast #d4703a

Typography

Three typefaces, no fourth. There is deliberately no sans-serif; where you'd reach for one, we use Spectral.

The Marble Shrine

Marcellus SC · --font-logo · wordmark only

The Bedlam in Goliath

Cormorant Garamond · --font-display · headings & display

Documenting the live history, show by show.

Spectral · --font-serif · body, UI, everything else

All three are open-source (SIL Open Font License) via Google Fonts, self-hosted from our own server (no third-party font requests at runtime).

Headings

Hero heading--font-display · --fs-3xl · 600
Page heading (h1)--font-display · --fs-2xl · 600
Section heading (h2)--font-display italic · --fs-xl · 500
Subheading (h3)--font-display · --fs-lg · 600
Eyebrow label.eyebrow · --fs-2xs · --track-label

Body

Lead paragraph. A larger measure for the first line of a section; it sets the reading rhythm before the body proper.

--font-serif · --fs-lg · 1.7

Body. The default reading size for prose across the site: setlist notes, liner notes, descriptions. Spectral at 1rem with generous line-height keeps long passages legible.

--font-serif · --fs-md · 1.7

Secondary. Captions, meta, and sub-text: muted and a step down.

--fs-sm · --muted

The scale

TokenSizeRole
--fs-3xlclamp(2rem, 4vw, 2.6rem)Hero heading
--fs-2xl2remPage heading (h1)
--fs-xl1.4remSection heading (h2)
--fs-lg1.15remSubheading / lead
--fs-md1remBody
--fs-sm0.88remSecondary body
--fs-xs0.78remMeta / captions
--fs-2xs0.68remEyebrows / labels

Leading

Four line-height steps. Headings ride tight; reading text rides relaxed.

The Bedlam in Goliath was recorded on a ouija board's logic, and the leading you set decides whether a passage breathes or crowds.

--leading-tight · 1.15 · headings

The Bedlam in Goliath was recorded on a ouija board's logic, and the leading you set decides whether a passage breathes or crowds.

--leading-snug · 1.3 · subheads, UI

The Bedlam in Goliath was recorded on a ouija board's logic, and the leading you set decides whether a passage breathes or crowds.

--leading-normal · 1.5 · dense body, captions

The Bedlam in Goliath was recorded on a ouija board's logic, and the leading you set decides whether a passage breathes or crowds.

--leading-relaxed · 1.7 · reading body

Tracking

Letter-spacing. Uppercase labels open up; large display type pulls in; running text stays neutral.

TokenValueSample
--track-label 0.14em Eyebrow label
--track-chip 0.06em Chip
--track-tight -0.02em The Marble Shrine
--track-normal 0 Running text stays neutral

Weight

Four weights across the three faces. Display type stays 400–600; 700 is for names and strong emphasis only.

Ag --fw-normal · 400
Ag --fw-medium · 500
Ag --fw-semibold · 600
Ag --fw-bold · 700

Show pages add a per-era display face, a self-hosted type system that shifts each page's character to the record it documents. It's the one place the type leaves the scale, on purpose.

Space & structure

A 4 / 8px rhythm. Section spacing uses full steps; component interiors use half-steps (--sp-1h--sp-4h).

--sp-10.25rem
--sp-20.5rem
--sp-30.75rem
--sp-41rem
--sp-51.5rem
--sp-62rem
--sp-72.5rem
--sp-83rem

Radius

--radius-btn2px
--radius-card6px
--radius-pill999px

Border width

--bd-hair1px · Rules, card borders, table lines
--bd-12px · Emphasis borders, focus
--bd-23px · Accent left-rails

Layering

Named z-index layers, so stacking order is legible instead of magic numbers.

Sticky bars --z-sticky · 20
Header --z-header · 50
Admin bar --z-adminbar · 60
Audio player --z-player · 80
Drawers --z-drawer · 90
Lightbox --z-overlay · 95
Toasts --z-toast · 100

Assets

The sigil and the full logomark lockup, as vectors and white-on-transparent PNGs, plus the motion kit (4K ProRes with a real alpha channel, and the lossless frame sequence).

The style guide

Every element built from these tokens (buttons, chips, cards, inputs), live-rendered from the real code.

Style guide