diff --git a/docs/architecture/index.html b/docs/architecture/index.html
index 0de54b7..c23f45c 100644
--- a/docs/architecture/index.html
+++ b/docs/architecture/index.html
@@ -194,7 +194,12 @@
/* ---------- nav ---------- */
nav{position:sticky;top:0;z-index:40;background:color-mix(in srgb, var(--bg) 86%, transparent);
backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft)}
-nav .wrap{display:flex;align-items:baseline;gap:22px;padding-top:11px;padding-bottom:11px;overflow-x:auto}
+nav .wrap{display:flex;align-items:baseline;gap:22px;padding-top:11px;padding-bottom:11px}
+/* the section links scroll horizontally on narrow widths; the theme switcher sits outside
+ this box on purpose so its open dropdown is never clipped by an overflow:auto ancestor
+ (overflow-x:auto forces overflow-y to auto too -- that clipped the whole menu, not just
+ the links) */
+nav .nav-links{display:flex;align-items:baseline;gap:22px;overflow-x:auto;min-width:0}
nav .brand{font-family:var(--serif);font-weight:700;font-size:16px;white-space:nowrap;color:var(--ink);text-decoration:none}
nav .brand .kn{color:var(--accent)}
nav a.sec{font-family:var(--sans);font-size:12.5px;letter-spacing:.04em;text-decoration:none;
@@ -509,12 +514,14 @@