From 81802b6a3fae82f903191b5566e8bf5e37408742 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 20 Feb 2026 01:16:20 +0000 Subject: [PATCH] audit: WCAG, SEO, responsiveness, and optimization pass MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit WCAG: - Add canvas to JSX with aria-hidden (was never rendered; grid highlight effect now works) - GuideModal: add role=dialog, aria-modal, aria-labelledby, focus trap, focus close button on open - Add .sr-only utility class to globals.scss - AsciiFooter: add sr-only "Thanks for stopping by!" for screen readers - BracketLink: inject sr-only "(opens in new tab)" when target=_blank - ExperienceList/EducationList: sr-only text on company links - All sections (Intro/Projects/Experience/Education): add aria-labelledby + ids on headings - Increase --text-muted from #71717a → #8a8a94 (WCAG AA 4.5:1 contrast on dark bg) - Remove !important from p/li color rule so detail-panel colors apply correctly - section-list__trigger: add :focus-visible outline - guide-trigger: split hover/focus, add :focus-visible outline - guide-modal__close: add :focus-visible outline SEO: - Canonical URL via metadata.alternates - Richer page title and description mentioning Carson's role and schools - Add authors and keywords metadata fields - JSON-LD Person schema (name, jobTitle, sameAs, alumniOf, knowsAbout) - Move