From 590bb3283c8b4bd023c30227124acae094b99130 Mon Sep 17 00:00:00 2001 From: Luiz Gustavo Date: Fri, 29 May 2026 01:47:27 -0300 Subject: [PATCH] =?UTF-8?q?ux(brand):=20logomark=20=E2=80=94=20three=20off?= =?UTF-8?q?set=20gold=20bars=20+=20bolder=20wordmark?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The lone "▍ The Disclosure Bureau" glyph read as a stray vertical bar next to small mono text — easy to lose against the navbar links. The brand needed visible weight without inventing a logotype from scratch. - BrandMark (new) — small inline SVG-free mark: three rounded gold bars at decreasing heights (100% / 70% / 45%), suggesting a redaction edge or a stack of classified-page tabs. Each bar lifts 1px on hover, so the mark gets a subtle physical response without animation libraries. - Wordmark switched to font-display font-semibold (was display regular) and bumped to 19/20px so it carries the row. - On desktop a tiny "CLASSIFIED · PUBLIC RECORD" microline in #5a6678 monospace sits beneath the wordmark; it disappears on mobile to keep the row tight inside the drawer. - Used in SiteHeader (every page) and inside the MobileNav drawer header — replaces the previous bare-text label there too. Verified at desktop 1440 and mobile 600 widths. Co-Authored-By: Claude Opus 4.7 (1M context) --- web/components/brand-mark.tsx | 57 ++++++++++++++++++++++++++++++++++ web/components/mobile-nav.tsx | 6 ++-- web/components/site-header.tsx | 8 ++--- 3 files changed, 62 insertions(+), 9 deletions(-) create mode 100644 web/components/brand-mark.tsx diff --git a/web/components/brand-mark.tsx b/web/components/brand-mark.tsx new file mode 100644 index 0000000..e46fba6 --- /dev/null +++ b/web/components/brand-mark.tsx @@ -0,0 +1,57 @@ +/** + * BrandMark — The Disclosure Bureau wordmark + mark. + * + * Small inline SVG (three offset gold bars suggesting a redaction edge / a + * classification stamp) paired with the serif wordmark and a tiny + * monospace "CLASSIFIED · PUBLIC RECORD" microline beneath. Used in + * SiteHeader on every page and inside the mobile drawer header. Keeps the + * brand presence consistent without depending on an external asset. + * + * Two sizes: `default` (header) and `compact` (mobile drawer). + */ +interface BrandMarkProps { + size?: "default" | "compact"; + className?: string; +} + +export function BrandMark({ size = "default", className = "" }: BrandMarkProps) { + const isCompact = size === "compact"; + return ( + +