Index: src/views/partials/bottom-tab.ejs
===================================================================
--- src/views/partials/bottom-tab.ejs	(revision 1f640ff1441ede5e292fef99352589aa59918bbd)
+++ src/views/partials/bottom-tab.ejs	(revision 17546afbe88ae2f5e44da391ca5d632030be956e)
@@ -13,8 +13,5 @@
                         && permissions && permissions.canCreatePost && permissions.canCreatePost(user, site));
 const _ownProfile  = user ? ('/users/' + user.username) : null;
-const _isHub       = (typeof tenancy !== 'undefined' && tenancy === 'hub');
-// Home in hub mode ALWAYS goes to the hub root (/), not to an artist's sub-home.
-// In solo/circle _siteUrlBase is empty, so it stays '/'.
-const _homeHref    = (_isHub ? '' : _siteUrlBase) + '/';
+const _homeHref    = _siteUrlBase + '/';
 
 // Strip site prefix for cleaner matching
@@ -26,6 +23,5 @@
 
 let _active = null;
-// In hub, Home is only active on the real hub root, not on an artist sub-home.
-if (_isHub ? (_path === '/') : (_p === '/' || _p === '')) _active = 'home';
+if (_p === '/' || _p === '') _active = 'home';
 else if (_p.indexOf('/search') === 0 || _p.indexOf('/tag/') === 0 || _p.indexOf('/type/') === 0) _active = 'search';
 else if (_p === '/posts/new' || /^\/posts\/[^/]+\/edit$/.test(_p)) _active = 'create';
Index: src/views/partials/chrome.ejs
===================================================================
--- src/views/partials/chrome.ejs	(revision 1f640ff1441ede5e292fef99352589aa59918bbd)
+++ src/views/partials/chrome.ejs	(revision 17546afbe88ae2f5e44da391ca5d632030be956e)
@@ -17,6 +17,5 @@
 var _isAuth    = typeof bodyClass === 'string' && bodyClass.indexOf('on-auth') >= 0;
 var _isChat    = typeof bodyClass === 'string' && bodyClass.indexOf('on-chat') >= 0;
-var hubLanding = (typeof bodyClass === 'string' && bodyClass.indexOf('on-hub') >= 0)
-   || ((typeof tenancy !== 'undefined' && tenancy === 'hub') && !siteUrlBase && !_isAdmin);
+var hubLanding = (typeof bodyClass === 'string' && bodyClass.indexOf('on-hub') >= 0);
 // Zelfstandige premium-feature-pagina's hebben hun eigen kop → geen profielkop/
 // switcher, wél de topnav (Robin 2026-06-18: "bovenste weg, behoud de nav").
Index: src/views/partials/topnav.ejs
===================================================================
--- src/views/partials/topnav.ejs	(revision 1f640ff1441ede5e292fef99352589aa59918bbd)
+++ src/views/partials/topnav.ejs	(revision 17546afbe88ae2f5e44da391ca5d632030be956e)
@@ -28,16 +28,4 @@
       <% if (_isAdmin || _isSpecial) { %>
         <a href="<%= _siteUrlBase %>/" class="nav-link nav-link-admin"><%= t('nav.back_to_site') %></a>
-      <% } else if (typeof tenancy !== 'undefined' && tenancy === 'hub') { %>
-        <%# Hub: the brand navigates to the hub home via HTMX. The chrome is always
-            rendered in hub mode and hidden on the landing via body.on-hub (CSS), so htmx
-            can switch without a full reload → the audio player stays alive. %>
-        <a class="nav-hub-home" href="/" aria-label="Home" title="Home"
-           hx-get="/?partial=1" hx-target="#pcms-main" hx-swap="innerHTML" hx-push-url="/" hx-indicator="#pcms-loading">
-          <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/><polyline points="9 22 9 12 15 12 15 22"/></svg>
-        </a>
-      <% } else if (site) { %>
-        <a class="site-title" href="<%= _siteUrlBase %>/"
-           hx-get="<%= _siteUrlBase %>/?partial=1" hx-target="#pcms-main" hx-swap="innerHTML"
-           hx-push-url="<%= _siteUrlBase %>/" hx-indicator="#pcms-loading"><%= site.title %></a>
       <% } else { %>
         <a class="site-title" href="/">Klonkt</a>
