diff --git a/stacks/homepage/conf/custom.css b/stacks/homepage/conf/custom.css
index 5422f8c..7606e02 100644
--- a/stacks/homepage/conf/custom.css
+++ b/stacks/homepage/conf/custom.css
@@ -130,11 +130,22 @@
html,
body,
#page_wrapper,
+#background,
body > div {
background-color: var(--bg-0) !important;
background-image: none !important;
}
+/* `#background` above is load-bearing, not defensive tidiness. Homepage
+ server-renders the wallpaper as an INLINE style on `
`,
+ and Next.js caches that rendered page — so removing the `background:` block
+ from settings.yaml is not enough on its own. A restart does not clear it;
+ only a full recreate does, and recreating this container has its own cost
+ (the tab bar and i18n go missing for up to an hour and then heal on their
+ own). Enforcing it in the stylesheet is deterministic, immediate, and also
+ means the canvas stays correct if the setting is ever re-added by accident.
+ The deliberate absence of the config block is documented in settings.yaml. */
+
body {
font-family: var(--font-sans) !important;
color: var(--fg-1);
diff --git a/stacks/homepage/theme/australis.css.in b/stacks/homepage/theme/australis.css.in
index 795224d..13b3a99 100644
--- a/stacks/homepage/theme/australis.css.in
+++ b/stacks/homepage/theme/australis.css.in
@@ -110,11 +110,22 @@
html,
body,
#page_wrapper,
+#background,
body > div {
background-color: var(--bg-0) !important;
background-image: none !important;
}
+/* `#background` above is load-bearing, not defensive tidiness. Homepage
+ server-renders the wallpaper as an INLINE style on `
`,
+ and Next.js caches that rendered page — so removing the `background:` block
+ from settings.yaml is not enough on its own. A restart does not clear it;
+ only a full recreate does, and recreating this container has its own cost
+ (the tab bar and i18n go missing for up to an hour and then heal on their
+ own). Enforcing it in the stylesheet is deterministic, immediate, and also
+ means the canvas stays correct if the setting is ever re-added by accident.
+ The deliberate absence of the config block is documented in settings.yaml. */
+
body {
font-family: var(--font-sans) !important;
color: var(--fg-1);