Index: src/assets/css/style.css
===================================================================
--- src/assets/css/style.css	(revision 5eff581526226c194f4dddb1c3967373c76ab553)
+++ src/assets/css/style.css	(revision dd7e2a2f53fe67830807d1ca62819491ee3effda)
@@ -107,4 +107,23 @@
     --ink: #f4ede0; --ink-soft: #d4ccb8; --ink-muted: #a8a29e; --ink-faint: #6b6560;
     --rule: #3d3833; --rule-2: #4d4740;
+}
+
+/* ── KLONKT ── merk-standaard: off-white → donkerblauw (klonkt.com) ── */
+[data-palette="klonkt"] {
+    --paper: #f3f1ea; --paper-2: #e7e4d9;
+    --ink: #11141c; --ink-soft: #2b3040; --ink-muted: #5b6473; --ink-faint: #9aa3b2;
+    --rule: #d8d4c6; --rule-2: #c5c0af;
+}
+@media (prefers-color-scheme: dark) {
+    [data-palette="klonkt"]:not([data-theme="light"]) {
+        --paper: #0b0d12; --paper-2: #11141c;
+        --ink: #f3f1ea; --ink-soft: #c8cdd6; --ink-muted: #9aa3b2; --ink-faint: #6b7280;
+        --rule: #232a38; --rule-2: #2b3040;
+    }
+}
+[data-theme="dark"][data-palette="klonkt"] {
+    --paper: #0b0d12; --paper-2: #11141c;
+    --ink: #f3f1ea; --ink-soft: #c8cdd6; --ink-muted: #9aa3b2; --ink-faint: #6b7280;
+    --rule: #232a38; --rule-2: #2b3040;
 }
 
Index: src/middleware/render.js
===================================================================
--- src/middleware/render.js	(revision 5eff581526226c194f4dddb1c3967373c76ab553)
+++ src/middleware/render.js	(revision dd7e2a2f53fe67830807d1ca62819491ee3effda)
@@ -143,5 +143,5 @@
       const _navAccent = (_site && _site.accent && /^#[0-9a-fA-F]{6}$/.test(_site.accent))
         ? _site.accent : '#c2410c';
-      const _navPalette = (_site && _site.palette) ? _site.palette : 'sage';
+      const _navPalette = (_site && _site.palette) ? _site.palette : 'klonkt';
       const triggerJson = JSON.stringify({
         pcmsNav: { bodyClass: locals.bodyClass, accent: _navAccent, palette: _navPalette },
Index: src/middleware/site.js
===================================================================
--- src/middleware/site.js	(revision 5eff581526226c194f4dddb1c3967373c76ab553)
+++ src/middleware/site.js	(revision dd7e2a2f53fe67830807d1ca62819491ee3effda)
@@ -103,5 +103,5 @@
  */
 export function loadTheme(req, res, next) {
-  const PALETTES = ['sage','paper','ocean','forest','stone','midnight','sunset','cream'];
+  const PALETTES = ['klonkt','sage','paper','ocean','forest','stone','midnight','sunset','cream','rose','slate','mint','lilac'];
   
   const user = req.session?.user;
@@ -111,5 +111,5 @@
   const palette = (user && PALETTES.includes(user.palette) ? user.palette : null)
                 || (site && PALETTES.includes(site.palette) ? site.palette : null)
-                || 'sage';
+                || 'klonkt';
   
   res.locals.palette = palette;
Index: src/routes/admin-sites.js
===================================================================
--- src/routes/admin-sites.js	(revision 5eff581526226c194f4dddb1c3967373c76ab553)
+++ src/routes/admin-sites.js	(revision dd7e2a2f53fe67830807d1ca62819491ee3effda)
@@ -109,6 +109,6 @@
     tagline: '',
     language: 'nl',
-    palette: 'sage',
-    accent: '#c2410c',
+    palette: 'klonkt',
+    accent: '#e8b04b',
     profile_photo: '',
     profile_enabled: 1,
@@ -232,6 +232,6 @@
     ownerId,
     f.language || 'nl',
-    f.palette || 'sage',
-    ThemeService.validateAccent(f.accent) || '#c2410c',
+    f.palette || 'klonkt',
+    ThemeService.validateAccent(f.accent) || '#e8b04b',
     f.profile_photo || null,
     f.is_public ? 1 : 0,
@@ -291,5 +291,5 @@
   // accent: only accept colors from the curated ACCENTS list. Falls back to
   // the orange default if the submitted value isn't recognised.
-  const accent = ThemeService.validateAccent(f.accent) || '#c2410c';
+  const accent = ThemeService.validateAccent(f.accent) || '#e8b04b';
 
   db.prepare(`
@@ -312,5 +312,5 @@
     (f.tagline || '').slice(0, 200),
     f.language || 'nl',
-    f.palette || 'sage',
+    f.palette || 'klonkt',
     accent,
     themeOverride,
Index: src/routes/auth.js
===================================================================
--- src/routes/auth.js	(revision 5eff581526226c194f4dddb1c3967373c76ab553)
+++ src/routes/auth.js	(revision dd7e2a2f53fe67830807d1ca62819491ee3effda)
@@ -164,5 +164,5 @@
   }
 
-  req.session.user = { id: userId, username, email, role: 'god', palette: 'sage', theme: 'dark' };
+  req.session.user = { id: userId, username, email, role: 'god', palette: 'klonkt', theme: 'dark' };
   res.redirect(next || '/');
 });
Index: src/server.js
===================================================================
--- src/server.js	(revision 5eff581526226c194f4dddb1c3967373c76ab553)
+++ src/server.js	(revision dd7e2a2f53fe67830807d1ca62819491ee3effda)
@@ -329,5 +329,5 @@
     orientation: 'any',
     background_color: '#1a1a17',
-    theme_color: site?.accent || '#c2410c',
+    theme_color: site?.accent || '#e8b04b',
     lang: site?.language || 'nl',
     icons: [
Index: src/services/ThemeService.js
===================================================================
--- src/services/ThemeService.js	(revision 5eff581526226c194f4dddb1c3967373c76ab553)
+++ src/services/ThemeService.js	(revision dd7e2a2f53fe67830807d1ca62819491ee3effda)
@@ -19,4 +19,10 @@
   // wordt toegepast); de accent-stip is een representatieve kleur per palet.
   static PALETTES = {
+    // Merk-standaard — komt overeen met klonkt.com (donkerblauw + geel).
+    klonkt: {
+      name: 'Klonkt',
+      light: { paper: '#f3f1ea', ink: '#11141c', accent: '#c98a2a' },
+      dark: { paper: '#0b0d12', ink: '#f3f1ea', accent: '#e8b04b' }
+    },
     sage: {
       name: 'Sage',
@@ -91,4 +97,5 @@
   // meer warme + paars/roze variatie. Allemaal leesbaar op licht én donker.
   static ACCENTS = [
+    { key: 'klonkt',  name: 'Klonkt-geel', color: '#e8b04b' },
     { key: 'red',     name: 'Rood',      color: '#dc2626' },
     { key: 'orange',  name: 'Oranje',    color: '#ea580c' },
@@ -125,5 +132,5 @@
    */
   static getPalette(paletteKey) {
-    return this.PALETTES[paletteKey] || this.PALETTES.sage;
+    return this.PALETTES[paletteKey] || this.PALETTES.klonkt;
   }
 
@@ -197,6 +204,6 @@
   static generateThemeMeta(userTheme, userPalette, siteTheme, siteAccent) {
     const theme = userTheme || siteTheme || 'dark';
-    const palette = userPalette || 'sage';
-    const accent = siteAccent || '#c2410c';
+    const palette = userPalette || 'klonkt';
+    const accent = siteAccent || '#e8b04b';
     const paletteData = this.getPalette(palette);
     const colors = theme === 'dark' ? paletteData.dark : paletteData.light;
Index: src/views/shell.ejs
===================================================================
--- src/views/shell.ejs	(revision 5eff581526226c194f4dddb1c3967373c76ab553)
+++ src/views/shell.ejs	(revision dd7e2a2f53fe67830807d1ca62819491ee3effda)
@@ -163,5 +163,5 @@
 
 <!-- v9 stylesheet (full palette system) -->
-<link rel="stylesheet" href="/assets/css/style.css?v=30">
+<link rel="stylesheet" href="/assets/css/style.css?v=31">
 
 <!-- Audio player styles: loaded on every page so the mini-player works
