Index: src/routes/admin-settings.js
===================================================================
--- src/routes/admin-settings.js	(revision 8f6225cbfb7a439454829f7dec26b0891f4163f0)
+++ src/routes/admin-settings.js	(revision 5e61b173e0211ca213200be10da0a4230dcc31cf)
@@ -22,4 +22,5 @@
 import { requireGod } from '../middleware/auth.js';
 import { getTenancy, setTenancy, getSetting, setSetting } from '../services/SettingsService.js';
+import { SUPPORTED } from '../services/i18n.js';
 import { mailerStatus, sendMail } from '../config/mailer.js';
 import { entitlementStatus, premiumUnlocked } from '../services/PatreonService.js';
@@ -78,4 +79,5 @@
     hubHeroImage: getSetting('hub_hero_image') || '',
     hubHeroOverlay: clampOverlay(getSetting('hub_hero_overlay')),
+    defaultLang: getSetting('default_lang') || '',
     premium: entitlementStatus(),
     google: {
@@ -108,4 +110,9 @@
       }
       setTenancy(req.body.tenancy); // valideert naar solo | hub | circle
+    }
+    if (typeof req.body.default_lang !== 'undefined') {
+      // Standaardtaal voor bezoekers (leeg = volg env/browser). Valideert tegen NL/EN/DE.
+      const dl = (req.body.default_lang || '').toString().toLowerCase();
+      setSetting('default_lang', SUPPORTED.includes(dl) ? dl : '');
     }
     if (typeof req.body.hub_title !== 'undefined') {
