diff --git a/apps/web/app/components/ui/Navigation/Brand.tsx b/apps/web/app/components/ui/Navigation/Brand.tsx index ce49ed8..c87fc3c 100644 --- a/apps/web/app/components/ui/Navigation/Brand.tsx +++ b/apps/web/app/components/ui/Navigation/Brand.tsx @@ -42,11 +42,17 @@ export interface BrandProps { /** Accessible name of the link; the images are decorative. */ label: string; surface: NavSurface; + /** + * Run the "-ER" reveal and its breathing loop. Off on the home page, whose + * hero plays the same reveal once - a second, looping copy beside it is + * jarring. Anywhere else the two animations run as designed. + */ + animate?: boolean; className?: string; } /** The SHARP-ER wordmark, linking home. Sits at the inline start of the bar. */ -export function Brand({ href, label, surface, className }: BrandProps) { +export function Brand({ href, label, surface, animate = true, className }: BrandProps) { const { base, suffix } = BRAND_LOCKUP[surface]; return ( @@ -75,10 +81,12 @@ export function Brand({ href, label, surface, className }: BrandProps) { /> {/* The clipping box starts at the P's right edge, so the mark inside - it can slide out from behind the P (Navigation.css). */} + it can slide out from behind the P (Navigation.css). Without + `animate` the box and the reveal classes are dropped and the full + lockup simply sits there. */} diff --git a/apps/web/app/components/ui/Navigation/MobileNav.tsx b/apps/web/app/components/ui/Navigation/MobileNav.tsx index 941c1f7..6e4d969 100644 --- a/apps/web/app/components/ui/Navigation/MobileNav.tsx +++ b/apps/web/app/components/ui/Navigation/MobileNav.tsx @@ -268,7 +268,12 @@ export function MobileNav({ {/* Mirrors the compact bar it replaces (20:220): the same 64px row and the same gutter, so the wordmark does not shift when it opens. */}
- +