Index: src/routes/artists.js
===================================================================
--- src/routes/artists.js	(revision a3169f5e702f9a97c0b79d0d05f86b37f0c7dde4)
+++ src/routes/artists.js	(revision ce8c8c298d5ac9eae09ab3f1c522a1710ba832f8)
@@ -26,12 +26,17 @@
   if (!Number.isFinite(page) || page < 1) page = 1;
 
+  // De hoofd-/labelsite (oudste) is geen artiest -> uit de directory weren,
+  // consistent met de hub-home die 'm apart toont.
+  const mainRow = db.prepare('SELECT id FROM sites ORDER BY created_at ASC LIMIT 1').get();
+  const mainId = mainRow ? mainRow.id : '';
+
   // Zoekterm tegen titel/slug/tagline (case-insensitive via LIKE; SQLite LIKE is
   // standaard ongevoelig voor ASCII-hoofdletters). De ESCAPE '\' maakt %, _ en \
   // in de zoekterm letterlijk (anders zouden ze als wildcards werken).
-  const where = q
-    ? "WHERE (s.title LIKE @like ESCAPE '\\' OR s.slug LIKE @like ESCAPE '\\' OR s.tagline LIKE @like ESCAPE '\\')"
-    : '';
   const like = '%' + q.replace(/[\\%_]/g, (m) => '\\' + m) + '%';
-  const params = q ? { like } : {};
+  const conds = ['s.id != @mainId'];
+  if (q) conds.push("(s.title LIKE @like ESCAPE '\\' OR s.slug LIKE @like ESCAPE '\\' OR s.tagline LIKE @like ESCAPE '\\')");
+  const where = 'WHERE ' + conds.join(' AND ');
+  const params = q ? { mainId, like } : { mainId };
 
   const total = db.prepare(`SELECT COUNT(*) AS c FROM sites s ${where}`)
Index: src/routes/hub.js
===================================================================
--- src/routes/hub.js	(revision a3169f5e702f9a97c0b79d0d05f86b37f0c7dde4)
+++ src/routes/hub.js	(revision ce8c8c298d5ac9eae09ab3f1c522a1710ba832f8)
@@ -35,7 +35,20 @@
   `).all();
 
+  // De hoofd-/labelsite (oudste = de bedrijfs-/hoofdaccount) is GEEN artiest;
+  // die tonen we apart bovenaan, niet in de Artiesten-roster.
+  const mainSite = db.prepare(`
+    SELECT s.id, s.slug, s.title, s.tagline, s.profile_photo, s.accent,
+           u.avatar_url AS owner_avatar,
+           (SELECT COUNT(*) FROM posts WHERE site_id = s.id AND status = 'published') AS post_count
+    FROM sites s
+    LEFT JOIN users u ON u.id = s.owner_id
+    ORDER BY s.created_at ASC
+    LIMIT 1
+  `).get() || null;
+  const mainId = mainSite ? mainSite.id : '';
+
   // Uitgelichte PrutFolio's voor de home-roster: meest-actief eerst (aantal
-  // gepubliceerde posts), dan nieuwste. Beperkt tot HOME_ROSTER_LIMIT zodat de
-  // home schaalt — de volledige, doorzoekbare lijst staat op /artiesten.
+  // gepubliceerde posts), dan nieuwste. Excl. de hoofdsite. Beperkt tot
+  // HOME_ROSTER_LIMIT zodat de home schaalt — volledige lijst staat op /artiesten.
   const HOME_ROSTER_LIMIT = 24;
   const artists = db.prepare(`
@@ -45,8 +58,9 @@
     FROM sites s
     LEFT JOIN users u ON u.id = s.owner_id
+    WHERE s.id != @mainId
     ORDER BY post_count DESC, s.created_at DESC
-    LIMIT ?
-  `).all(HOME_ROSTER_LIMIT);
-  const totalArtists = db.prepare('SELECT COUNT(*) AS c FROM sites').get().c;
+    LIMIT @limit
+  `).all({ mainId, limit: HOME_ROSTER_LIMIT });
+  const totalArtists = db.prepare('SELECT COUNT(*) AS c FROM sites WHERE id != ?').get(mainId).c;
 
   // De hub-pagina is GENERIEK (van geen enkele user) — branding komt uit globale
@@ -64,4 +78,5 @@
     bodyClass: 'on-home on-hub',
     hub,
+    mainSite,
     artists,
     totalArtists,
Index: src/views/pages/hub-home.ejs
===================================================================
--- src/views/pages/hub-home.ejs	(revision a3169f5e702f9a97c0b79d0d05f86b37f0c7dde4)
+++ src/views/pages/hub-home.ejs	(revision ce8c8c298d5ac9eae09ab3f1c522a1710ba832f8)
@@ -30,4 +30,22 @@
 
   <div class="container hub-body">
+
+    <%# ── HOOFDPAGINA (label-/hoofdaccount — geen artiest) ──────────── %>
+    <% if (mainSite) { %>
+    <section class="hub-sec hub-sec-main">
+      <a class="hub-main-card" href="/user/<%= mainSite.slug %>">
+        <% var _mAva = mainSite.profile_photo || mainSite.owner_avatar; %>
+        <span class="hub-main-avatar"<% if (_mAva) { %> style="background-image:url('<%= _mAva %>')"<% } else { %> style="background:<%= mainSite.accent || 'var(--accent)' %>;color:#fff"<% } %>>
+          <% if (!_mAva) { %><%= (mainSite.title || mainSite.slug).charAt(0).toUpperCase() %><% } %>
+        </span>
+        <span class="hub-main-info">
+          <span class="hub-main-badge">Hoofdpagina</span>
+          <span class="hub-main-name"><%= mainSite.title %></span>
+          <% if (mainSite.tagline) { %><span class="hub-main-tag"><%= mainSite.tagline %></span><% } %>
+        </span>
+        <span class="hub-main-cta">Bekijk de pagina <span aria-hidden="true">→</span></span>
+      </a>
+    </section>
+    <% } %>
 
     <%# ── ARTIESTEN-ROSTER ─────────────────────────────────────────── %>
@@ -155,4 +173,43 @@
 .hub-more-link:hover { border-color: var(--accent); background: color-mix(in srgb, var(--accent) 7%, var(--paper-2)); }
 
+/* ── Hoofdpagina-kaart (label-/hoofdaccount, apart van de artiesten) ── */
+.hub-sec-main { margin-top: 2.25rem; }
+.hub-main-card {
+  display: flex; align-items: center; gap: 1.25rem;
+  padding: 1.2rem 1.5rem;
+  border: 1px solid color-mix(in srgb, var(--accent) 40%, var(--rule));
+  border-radius: 18px;
+  background: linear-gradient(120deg, color-mix(in srgb, var(--accent) 11%, var(--paper-2)) 0%, var(--paper-2) 72%);
+  color: var(--ink); text-decoration: none;
+  transition: border-color 140ms, transform 140ms, box-shadow 140ms;
+}
+.hub-main-card:hover {
+  border-color: var(--accent); transform: translateY(-2px);
+  box-shadow: 0 12px 30px -16px color-mix(in srgb, var(--accent) 60%, transparent);
+}
+.hub-main-avatar {
+  width: 72px; height: 72px; border-radius: 50%; flex-shrink: 0;
+  background-size: cover; background-position: center;
+  display: inline-flex; align-items: center; justify-content: center;
+  font-family: var(--font-display, serif); font-size: 1.8rem; font-weight: 700; color: #fff;
+  box-shadow: inset 0 0 0 2px rgba(255,255,255,.18);
+}
+.hub-main-info { display: flex; flex-direction: column; gap: 0.25rem; min-width: 0; flex: 1; }
+.hub-main-badge {
+  align-self: flex-start; font-size: 0.65rem; font-weight: 700;
+  text-transform: uppercase; letter-spacing: 0.08em;
+  color: var(--accent); background: color-mix(in srgb, var(--accent) 14%, transparent);
+  padding: 0.12rem 0.55rem; border-radius: 99px;
+}
+.hub-main-name { font-family: var(--font-display, serif); font-size: 1.5rem; font-weight: 700; line-height: 1.1; }
+.hub-main-tag { color: var(--ink-muted); font-size: 0.9rem; }
+.hub-main-cta { color: var(--accent); font-weight: 600; font-size: 0.9rem; white-space: nowrap; flex-shrink: 0; }
+@media (max-width: 560px) {
+  .hub-main-card { flex-direction: column; text-align: center; }
+  .hub-main-info { align-items: center; }
+  .hub-main-badge { align-self: center; }
+  .hub-main-cta { display: none; }
+}
+
 /* ── Roster (artiesten) ───────────────────────────────────────────── */
 .roster {
