Phase 1 · Skeleton

Design tokens

Every value below is copied from the compiled Webflow bundle incapture/css/ or the FAN Site 2026 palette, not chosen. This page renders them at real size so parity can be judged by eye rather than by diff.

Colour

--fan-ink#1a1a1aBody text, headings
--fan-red#98252bPrimary CTA, eyebrows, Q labels, timeline dot
--fan-red-dark#7a232ePrimary CTA hover
--fan-red-deep#5e1a1fDeep accent
--fan-red-light#e98b8fHero stat accent, on dark only
--fan-teal#018080Section headings, waveforms, quote titles
--fan-teal-dark#016060Teal hover
--fan-teal-light#6fd0d0Bright accent, legible ON DARK
--fan-teal-tint#e6f5f5Pale SECTION BACKGROUND wash
--fan-warm#f7f6f3Warm section background
--fan-border#e7e3dcCard borders, timeline rule
--fan-mid#5a5a5aLead / body copy
--fan-muted#8a8a8aMeta, captions

The two outlined swatches are the pair that has already been swapped once.teal-light #6fd0d0 is the bright accent for dark backgrounds;teal-tint #e6f5f5 is the pale section wash. They are named by function so it cannot happen again.

Weight

Roboto, self-hosted as a variable font. Webflow also loads Inter, which is referenced zero times in 123KB of CSS, so it is not carried over.

300We support your choice of independence.Light. The editorial weight. This is the site character.
400We support your choice of independence.Regular
500We support your choice of independence.Medium
600We support your choice of independence.Semibold. Buttons, eyebrows. Absent from the handoff list.
700We support your choice of independence.Bold. Headings. Most-used weight in the bundle.

Type scale

Only the steps that genuinely repeat are tokens. Resize the window: all four are fluid. Sections with bespoke sizes keep them; they are listed at the foot of tokens.css so a later pass does not tidy them away.

display · clamp(36,5.4vw,60)

A boutique RIA platform

h1 · clamp(34,5vw,54)

You can vote with your feet.

h2 · clamp(27,3.5vw,36)

Independence, without the isolation

h3 · clamp(20,2.1vw,27)

Keep your clients

lead · 17 / 300 / 1.65

Breaking away from a wirehouse or broker-dealer? See how First Advisors National helps advisors go independent and keep their clients, economics, and brand.

body · 15.5 / 300 / 1.55

The 300 weight is what gives the site its thin editorial feel. Losing it changes the character of the whole thing.

eyebrow · 12 / 600 / .16em

We never forget

Rhythm

This section is the rhythm. Vertical padding isclamp(64px, 8vw, 104px), the wrap is 1180px max withclamp(24px, 4vw, 46px) gutters. The tinted band behind this text is --fan-surface-teal; the one above is--fan-surface-warm.

wrap · max 1180

Buttons and motion

Hover both. The lift uses --fan-ease-lift; the pill and its shadow are the signature teal elevation, not a neutral grey drop.

Tile lift

34ms cubic-bezier(.2,.7,.3,1) with the teal panel shadow.

Card radius

16px is the dominant card radius, 8 uses in the bundle.

Hero gradients

One per page, all verbatim. They sit close enough to each other that eyeballing a replacement looks right and is not, so they are pinned as tokens.

/ (Welcome)--fan-hero-home
/advisor-independence--fan-hero-indep
/how-it-works--fan-hero-how
/our-story--fan-hero-story
/advisors--fan-hero-advisors
/faq--fan-hero-faq
/contact--fan-hero-contact
.hero default (charcoal)--fan-hero-base

Base layer

Reset, element defaults and the two layout primitives now live inbase.css. Two Webflow scripts are absorbed into it and stop existing: fantype2026 (the wrap guards below) andfanlinkfix (the iOS tel: and mailto: colour override).

h1, h2, h3text-wrap: balanceapplied
ptext-wrap: prettyapplied
.wrapmax-width 1180pxapplied
.sectionpadding-block 104px at 1440applied

Confirmed by reading computed style in the browser, not by inspecting the source. Worth knowing: I could not make balance change a single line break in Chromium 151, headed or headless, even on trivially balanceable text, although it resolves correctly to text-wrap-style: balance. It is carried anyway because it is exactly what the live site ships today, so it is parity either way, and it costs nothing.

fantype2026 enumerated ten class names because Webflow could not rely on the markup. We own the markup, and all ten render as a paragraph, so a single element selector covers the list and the script disappears. Press Tab to see the focus ring, which is new: the live site only ever styled focus on form fields, in an off-palette blue.