From 807022a62a8e8c08fb79f4017fc3db69b34ae175 Mon Sep 17 00:00:00 2001
From: Pascal Scholz
Date: Thu, 24 Sep 2026 23:10:23 +0200
Subject: [PATCH] Improve accessibility: keyboard-operable mobile nav, skip
link, focus styles
- Replace the checkbox-hack mobile menu (display:none checkbox was
unreachable by keyboard/screen readers) with a real button using
aria-expanded/aria-controls
- Add a skip-to-content link
- Add a consistent :focus-visible outline across interactive elements
- Underline prose links by default instead of only on hover (WCAG 1.4.1
use-of-color), keep nav/button links unstyled since they're already
visually distinct
- Respect prefers-reduced-motion for smooth scrolling
Co-Authored-By: Claude Sonnet 5
---
src/components/Footer.astro | 1 +
src/components/Nav.astro | 54 +++++++++++++++++++++++++++---------
src/layouts/Layout.astro | 3 +-
src/styles/global.css | 55 +++++++++++++++++++++++++++++++++++--
4 files changed, 97 insertions(+), 16 deletions(-)
diff --git a/src/components/Footer.astro b/src/components/Footer.astro
index b1cd450..194cf29 100644
--- a/src/components/Footer.astro
+++ b/src/components/Footer.astro
@@ -51,6 +51,7 @@ const footer = site.footer;
.footer-nav a {
color: var(--color-text-muted);
font-size: var(--font-size-sm);
+ text-decoration: none;
}
.footer-nav a:hover {
diff --git a/src/components/Nav.astro b/src/components/Nav.astro
index f2e0614..21677c5 100644
--- a/src/components/Nav.astro
+++ b/src/components/Nav.astro
@@ -10,14 +10,20 @@ const nav = site.nav;
-
-
+
-