| 1 | # Chicago Stepping Design System ("IN THE POCKET" / Chrome Noir) |
| 2 | |
| 3 | A bespoke visual system for the **Chicago Stepping** app. Built from first |
| 4 | principles, grounded in Chicago-stepping culture: the smooth, gliding, soulful |
| 5 | 6-/8-count partner dance that came out of Chicago's West and South sides in the |
| 6 | 1940s-60s, evolved from the jitterbug and the 1950s glide-and-stride "bop." It |
| 7 | deliberately does NOT use the `ui-ux-pro-max` skill or any generic |
| 8 | component-kit look. |
| 9 | |
| 10 | Updated 2026-07-04 to match Dad's July 2nd decisions (`JULY2ND_SPEC.md`, D1-D10) |
| 11 | and the shipped Chrome Noir code. This file describes what is actually in |
| 12 | `apps/web`, not an aspiration. |
| 13 | |
| 14 | ## Locked identity decisions (Dad, July 2nd) |
| 15 | |
| 16 | - **No disco ball.** The old chrome disco ball hero (WebGL) sent a conflicted |
| 17 | message (disco vs. stepping) and is deleted: components, canvas fallback, |
| 18 | PNG, everything. Do not bring it back. |
| 19 | - **Signature emblem: the stepping couple.** An abstract line-art couple |
| 20 | mid-turn; she glides under his raised arm, gown fanning into the sweep, a |
| 21 | cobalt dot marking the held hands. Lives in |
| 22 | `apps/web/src/components/stepping-couple.tsx`, mirrored in `public/icon.svg` |
| 23 | and the manifest. Pure SVG + CSS, no WebGL, gated on |
| 24 | `prefers-reduced-motion`. |
| 25 | - **Wordmark: CHICAGO STEPPING.** Serif italic "Chicago" over display |
| 26 | "STEPPING" (`apps/web/src/components/wordmark.tsx`). The name leads with |
| 27 | Chicago Stepping everywhere; final clever phrasing subject to a family vote. |
| 28 | - **Tagline LOCKED: "Chicago Stepping. Your City."** Appears in the hero and |
| 29 | footers verbatim. |
| 30 | - **Voice: grown-up, concise, straight to the point.** No fluff, no slang-cute |
| 31 | filler. Section names The Sets / The Floor / The Road are approved and stay. |
| 32 | - **Professional bar: Apple / BlackRock / Fidelity.** Color can pop but never |
| 33 | goes cheesy. |
| 34 | - **Readability is a requirement, not a preference.** The audience skews |
| 35 | older. Kickers stay at or above 0.8rem, body copy at or above 1rem, strong |
| 36 | contrast. Never shrink type to make a layout work. |
| 37 | |
| 38 | ## Sourcing (provenance, so this stays defensible and original) |
| 39 | |
| 40 | - **Design DNA** distilled from Zion's references: monolithstudio.com, |
| 41 | airborne.studio, donprod.uk, ning-h.com, tenbinlabs.xyz, wildyriftian.com, |
| 42 | oscarpecher.com. Common laws we adopt: two-tone discipline, near-black |
| 43 | ground / off-white ink (never pure #000/#fff), type-as-art, mono micro-type |
| 44 | for metadata, one signature object, negative space as luxury. |
| 45 | - **Technique** lifted only from MIT/CC0 repos (security-scanned): |
| 46 | `studio-freight/lenis` (MIT) for smooth scroll. No-license references are |
| 47 | reimplemented from scratch, never copied. |
| 48 | |
| 49 | ## Concept spine: IN THE POCKET |
| 50 | |
| 51 | The site runs like a set that never stops. Chicago stepping is a glide, not a |
| 52 | stomp: lead and follow on a 6-/8-count, locked into the music. The page is a |
| 53 | run of acts: |
| 54 | |
| 55 | 1. **THE SPOTLIGHT**: the hero. Type-as-art (STEP. GLIDE. spin.), the couple |
| 56 | emblem, the locked tagline. |
| 57 | 2. **THE SETS**: sets, weekenders, classes, workshops, competitions, socials. |
| 58 | 3. **THE FLOOR**: stepping groups, DJs, promoters/hosts, classes. |
| 59 | 4. **THE ROAD**: per-city travel guide for the traveling stepper. |
| 60 | |
| 61 | The old "THE NINE / Greek-letter" framing is gone entirely. This is Chicago |
| 62 | stepping, never Greek stepping. |
| 63 | |
| 64 | ## Color: Chrome Noir (two-tone + one cobalt accent) |
| 65 | |
| 66 | | Token | Hex | Role | |
| 67 | |---|---|---| |
| 68 | | `--stage` | `#0a0a0b` | ground (near-black, the floor after dark) | |
| 69 | | `--bone` | `#f4f1ea` | ink (warm off-white, never pure white) | |
| 70 | | `--gold` | `#3d5afe` | the ONE accent: electric cobalt (token keeps the legacy `--gold` name so every `text-gold`/`bg-gold` utility reskins from one place) | |
| 71 | | `--gold-bright` | `#6e86ff` | accent hover / active | |
| 72 | | `--ash` | `#9aa1b0` | cool grey for secondary mono metadata (lightened for contrast) | |
| 73 | | `--line` | `rgba(244,241,234,0.12)` | hairlines | |
| 74 | |
| 75 | Discipline: no other hues. Cobalt pops but stays professional; if a treatment |
| 76 | reads cheesy, cut it. |
| 77 | |
| 78 | ## Type: smooth + editorial duality (lead and follow) |
| 79 | |
| 80 | - **Display / impact:** `Bricolage Grotesque`, oversized, tight, declarative. |
| 81 | - **Editorial accent:** `Instrument Serif`, high-contrast serif for |
| 82 | storytelling lines and the "Chicago" half of the wordmark. |
| 83 | - **Metadata:** `Space Mono` kickers for labels, indices, set times, city |
| 84 | coordinates (`CHI · 41.878, -87.629`, `01 / 06`). |
| 85 | |
| 86 | Rules: |
| 87 | - On any screen, either the display type is loud or the imagery is. Never both. |
| 88 | - Floors (older-people-friendly): `.kicker` >= 0.8rem, letter-spacing 0.22em; |
| 89 | body/serif copy >= 1rem. Do not shrink anything below these. |
| 90 | |
| 91 | ## Motion: "in the pocket" (cheap on old phones) |
| 92 | |
| 93 | - **Reveals:** `beat-in` staggered ease-ins on the count (b1-b5 delays). |
| 94 | - **Emblem:** entrance stagger (figures fade-rise, arms draw in, the held-hands |
| 95 | dot pops), then a slow 9s float and 0.7deg sway. Transform/opacity only; no |
| 96 | WebGL anywhere (the disco ball lagged and is gone). |
| 97 | - **Smooth scroll:** Lenis (MIT) via `SmoothScroll`. |
| 98 | - **Marquee:** mono ticker of cities and count motifs. |
| 99 | - **Reduced motion:** every animation gates on `prefers-reduced-motion`. |
| 100 | |
| 101 | ## Layout |
| 102 | |
| 103 | Editorial and asymmetric. Generous negative space. Numbered mono indices |
| 104 | (`01 / Sets`). Hairline rules frame each act. Mobile-first; the set reflows to |
| 105 | a single column without losing the count. |
| 106 | |
| 107 | ## Components (current set) |
| 108 | |
| 109 | - `SteppingCouple`: the signature emblem (hero + site mark). |
| 110 | - `Wordmark`: CHICAGO STEPPING lockup (header, footers, mobile nav). |
| 111 | - `SmoothScroll`: Lenis provider. |
| 112 | - `Marquee`: running mono ticker. |
| 113 | - `MobileNav`, `SiteFooter`, skeletons. |
| 114 | - Act section shell: mono kicker + huge display title + content. |