diff --git a/scipost_django/scipost/static/scipost/assets/css/_navbar.scss b/scipost_django/scipost/static/scipost/assets/css/_navbar.scss
index 52ad00bec289bc71e9f9c55799bab536525c56cc..3d295189ea27d3b2522d6986c8a670b2406ee587 100644
--- a/scipost_django/scipost/static/scipost/assets/css/_navbar.scss
+++ b/scipost_django/scipost/static/scipost/assets/css/_navbar.scss
@@ -234,7 +234,8 @@ header .nav-item {
 
 #headerSearchInput {
     background-color: $scipost-darkblue;
-    border: 1px solid $scipost-orange;
+    // border: 1px solid $scipost-orange;
+    border: 0px;
     color: $white;
 }
 
@@ -249,6 +250,7 @@ header .nav-item {
 	    border: 2px solid $scipost-lightblue;
 	    border-radius: 2px;
 	    color: $white;
+	    min-width: 16em;
 	}
     }
 }
@@ -264,6 +266,7 @@ header .nav-item {
 	    border: 2px solid $scipost-lightblue;
 	    border-radius: 2px;
 	    color: $white;
+	    min-width: 30rem;
 	}
     }
 }
diff --git a/scipost_django/scipost/templates/scipost/_hx_publications.html b/scipost_django/scipost/templates/scipost/_hx_publications.html
index cb2e9dadbb5af56d457fc4fc4e3d1608f6df84ae..9533ed4f387657ebb85a9eb68b814034eb122a25 100644
--- a/scipost_django/scipost/templates/scipost/_hx_publications.html
+++ b/scipost_django/scipost/templates/scipost/_hx_publications.html
@@ -1,18 +1,6 @@
 {% load journals_extras %}
 
-<p class="mb-0 px-3 text-muted">{{ session_acad_field }}{% if session_specialty %}: {{ session_specialty }}{% endif %}</p>
-<hr>
-<ul class="list-group list-group-flush px-3 mb-3">
-  {% for publication in publications %}
-    <li class="list-group-item py-2">
-      {% include 'journals/_publication_li_content.html' with publication=publication %}
-    </li>
-  {% empty %}
-    <li class="list-group-item py-2">
-      No publications yet
-    </li>
-  {% endfor %}
-</ul>
+<h2 class="mb-0 px-3">Publications in {{ session_acad_field }}: {% if session_specialty %}{{ session_specialty }}{% else %}(all specialties){% endif %}</h2>
 
 {% if session_acad_field and not session_acad_field.journals.active|length > 0 %}
   <div class="card m-2 border-2">
@@ -27,7 +15,13 @@
       </p>
     </div>
   </div>
-{% else %}
-  <hr>
-  <p class="mb-3 px-3"><a href="{% url 'journals:publications' %}">View all Publications</a></p>
 {% endif %}
+
+<hr>
+<div hx-get="{% url 'scipost:_hx_publications_page' %}?page=1"
+     hx-trigger="load"
+     hx-target="#publications-list"
+>
+</div>
+<ul id="publications-list"
+    class="list-group list-group-flush list-unstyled px-3 mb-3"></ul>
diff --git a/scipost_django/scipost/templates/scipost/_hx_publications_page.html b/scipost_django/scipost/templates/scipost/_hx_publications_page.html
new file mode 100644
index 0000000000000000000000000000000000000000..a47b218b55469afbcf2c0f47975d76202d2515dd
--- /dev/null
+++ b/scipost_django/scipost/templates/scipost/_hx_publications_page.html
@@ -0,0 +1,26 @@
+{% for publication in page_obj %}
+  <li class="list-group-item py-2">
+    {% include 'journals/_publication_li_content.html' with publication=publication %}
+  </li>
+{% empty %}
+  <li class="list-group-item py-2">
+    No publications yet
+  </li>
+{% endfor %}
+{% if page_obj.has_next %}
+  <li id="next-publications-{{ page_obj.number }}">
+    <button class="btn btn-primary m-2" type="button"
+	    hx-get="{% url 'scipost:_hx_publications_page' %}?page={{ page_obj.next_page_number }}"
+	    hx-target="#next-publications-{{ page_obj.number }}"
+	    hx-indicator="#indicator-publications-page-{{ page_obj.number }}"
+    >
+      Load page {{ page_obj.next_page_number }} (out of {{ page_obj.paginator.num_pages }})
+    </button>
+    <span id="indicator-publications-page-{{ page_obj.number }}" class="htmx-indicator p-2">
+      <button class="btn btn-warning" type="button" disabled>
+	<strong>Loading page {{ page_obj.next_page_number }} out of {{ page_obj.paginator.num_pages }}</strong>
+	<div class="spinner-grow spinner-grow-sm ms-2" role="status" aria-hidden="true"></div>
+      </button>
+    </span>
+  </li>
+{% endif %}
diff --git a/scipost_django/scipost/templates/scipost/_hx_submissions.html b/scipost_django/scipost/templates/scipost/_hx_submissions.html
index 9ba0ef78b7a71029161d957b407082a32a59fdf3..701068c675b1c12232f0b1cbff28d4dee9ad00a0 100644
--- a/scipost_django/scipost/templates/scipost/_hx_submissions.html
+++ b/scipost_django/scipost/templates/scipost/_hx_submissions.html
@@ -1,20 +1,12 @@
 {% load journals_extras %}
 
-<p class="mb-0 px-3 text-muted">{{ session_acad_field }}{% if session_specialty %}: {{ session_specialty }}{% endif %}</p>
-<hr>
-<ul class="list-group list-group-flush px-3 mb-3">
-  {% for submission in submissions %}
-    <li class="list-group-item py-2">
-      {% include 'submissions/_submission_card_content_homepage.html' with submission=submission %}
-    </li>
-  {% empty %}
-    <li class="list-group-item py-2">
-      No submissions yet
-    </li>
-  {% endfor %}
-</ul>
+<h2 class="mb-0 px-3">Submissions in {{ session_acad_field }}: {% if session_specialty %}{{ session_specialty }}{% else %}(all specialties){% endif %}</h2>
 
-{% if not session_acad_field or session_acad_field.journals.active|length > 0 %}
-  <hr>
-  <p class="mb-3 px-3"><a href="{% url 'submissions:submissions' %}">View all Submissions</a></p>
-{% endif %}
+<hr>
+<div hx-get="{% url 'scipost:_hx_submissions_page' %}?page=1"
+     hx-trigger="load"
+     hx-target="#submissions-list"
+>
+</div>
+<ul id="submissions-list"
+    class="list-group list-group-flush list-unstyled px-3 mb-3"></ul>
diff --git a/scipost_django/scipost/templates/scipost/_hx_submissions_page.html b/scipost_django/scipost/templates/scipost/_hx_submissions_page.html
new file mode 100644
index 0000000000000000000000000000000000000000..386cc5b5b936e49158d3101b9627923c6076e2bf
--- /dev/null
+++ b/scipost_django/scipost/templates/scipost/_hx_submissions_page.html
@@ -0,0 +1,26 @@
+{% for submission in page_obj %}
+  <li class="list-group-item py-2">
+    {% include 'submissions/_submission_card_content_homepage.html' with submission=submission %}
+  </li>
+{% empty %}
+  <li class="list-group-item py-2">
+    No submissions yet
+  </li>
+{% endfor %}
+{% if page_obj.has_next %}
+  <li id="next-submissions-{{ page_obj.number }}">
+    <button class="btn btn-primary m-2" type="button"
+	    hx-get="{% url 'scipost:_hx_submissions_page' %}?page={{ page_obj.next_page_number }}"
+	    hx-target="#next-submissions-{{ page_obj.number }}"
+	    hx-indicator="#indicator-submissions-page-{{ page_obj.number }}"
+    >
+      Load page {{ page_obj.next_page_number }} (out of {{ page_obj.paginator.num_pages }})
+    </button>
+    <span id="indicator-submissions-page-{{ page_obj.number }}" class="htmx-indicator p-2">
+      <button class="btn btn-warning" type="button" disabled>
+	<strong>Loading page {{ page_obj.next_page_number }} out of {{ page_obj.paginator.num_pages }}</strong>
+	<div class="spinner-grow spinner-grow-sm ms-2" role="status" aria-hidden="true"></div>
+      </button>
+    </span>
+  </li>
+{% endif %}
diff --git a/scipost_django/scipost/templates/scipost/header_with_acad_field_and_spec.html b/scipost_django/scipost/templates/scipost/header_with_acad_field_and_spec.html
index bdf10ec28dd1ba782eb4425b969fae270abdba2e..9e55f41c2c7c68eaea722396cb07f795925edf7e 100644
--- a/scipost_django/scipost/templates/scipost/header_with_acad_field_and_spec.html
+++ b/scipost_django/scipost/templates/scipost/header_with_acad_field_and_spec.html
@@ -2,8 +2,8 @@
 {% load crispy_forms_tags %}
 
 {% block header_sup %}
-  <div class="d-lg-flex justify-content-between">
-    <div class="mx-auto my-4 my-lg-auto">
+  <div class="d-lg-flex justify-content-center mb-2">
+    <div class="my-4 my-lg-auto">
       <form id="session_acad_field_form"
 	    hx-get="{% url 'ontology:set_session_acad_field' %}"
 	    hx-trigger="change"
@@ -12,11 +12,12 @@
 	{% crispy session_acad_field_form %}
       </form>
     </div>
-    <div class="mx-auto my-4 my-lg-auto"
+    <div class="ms-2 my-4 my-lg-auto"
 	 hx-get="{% url 'ontology:_hx_session_specialty_form' %}"
 	 hx-trigger="load, session-acad-field-set from:body"
     >
     </div>
 
   </div>
+
 {% endblock header_sup %}
diff --git a/scipost_django/scipost/templates/scipost/index.html b/scipost_django/scipost/templates/scipost/index.html
index 934de2e8edbb98ddc034ca47bc0ad3672803eb09..fe4a349877a9870aa7e7c11b2f98c1bf63b1b4f0 100644
--- a/scipost_django/scipost/templates/scipost/index.html
+++ b/scipost_django/scipost/templates/scipost/index.html
@@ -28,27 +28,10 @@
 {% block content %}
 
   <div class="row gx-4">
-    <div class="col-md-4">
-      <h2 class="highlight text-center mt-0">Portals</h2>
-      <div class="d-flex justify-content-center">
-	<div class="btn-group-vertical w-100" role="group">
-	  {% for branch in branches %}
-	    {% if branch.name != 'Multidisciplinary' and branch.journals.all|length > 0 %}
-	      {% for acad_field in branch.academic_fields.all %}
-		{% if acad_field.journals.active.all|length > 0 %}
-		  <a type="button" class="btn-primary w-100 m-1 p-2 text-center" href={% url 'scipost:portal' %}?field={{ acad_field.slug }}><strong>{{ acad_field.name }}</strong></a>
-		{% endif %}
-	      {% endfor %}
-	    {% endif %}
-	  {% endfor %}
-	</div>
-      </div>
-    </div>
-
     <div class="col-md-8">
       <div class="card">
 	<div class="card-header">
-	  <h1>Genuinely Open Publishing</h1>
+	  <h1>The Home of Genuine Open Publishing</h1>
 	</div>
 	<div class="card-body">
 	  <p>SciPost is a complete publishing infrastructure serving professional scientists worldwide.</p>
@@ -59,16 +42,16 @@
 		  <h3>We implement<br><a href="{% url 'scipost:about' %}#GOA">Genuine Open Access</a></h3>
 		</div>
 		<div class="card-body">
-		  <ul>
-		    <li>Community Ownership</li>
-		    <li>Open Infrastructure</li>
-		    <li>Copyright to Authors</li>
-		    <li>Open Access</li>
-		    <li>Open Citations</li>
-		    <li>Fee Free</li>
-		    <li>Non Profit</li>
-		    <li>Open Finances</li>
-		    <li>Academic Editing</li>
+		  <ul class="list list-unstyled">
+		    <li>{% include 'bi/check-square.html' %}&nbsp;Community Ownership</li>
+		    <li>{% include 'bi/check-square.html' %}&nbsp;Open Infrastructure</li>
+		    <li>{% include 'bi/check-square.html' %}&nbsp;Copyright to Authors</li>
+		    <li>{% include 'bi/check-square.html' %}&nbsp;Open Access</li>
+		    <li>{% include 'bi/check-square.html' %}&nbsp;Open Citations</li>
+		    <li>{% include 'bi/check-square.html' %}&nbsp;Fee Free</li>
+		    <li>{% include 'bi/check-square.html' %}&nbsp;Non Profit</li>
+		    <li>{% include 'bi/check-square.html' %}&nbsp;Open Finances</li>
+		    <li>{% include 'bi/check-square.html' %}&nbsp;Academic Editing</li>
 		  </ul>
 		</div>
 	      </div>
@@ -79,12 +62,21 @@
 		  <h3>Info</h3>
 		</div>
 		<div class="card-body">
-		  <ul>
-		    <li><a href="{% url 'scipost:contact' %}">Contact us</a></li>
-		    <li><a href="{% url 'scipost:about' %}">About SciPost</a></li>
-		    <li><a href="{% url 'scipost:foundation' %}">The Foundation</a></li>
-		    <li><a href="{% url 'careers:jobopenings' %}">Careers&#64;SciPost</a></li>
-		    <li><a href="{% url 'scipost:FAQ' %}">FAQ</a></li>
+		  <ul class="list list-unstyled">
+		    <li>{% include 'bi/arrow-right.html' %}&nbsp;
+		      <a href="{% url 'scipost:about' %}">About SciPost</a></li>
+		    <li>{% include 'bi/arrow-right.html' %}&nbsp;
+		      <a href="{% url 'scipost:foundation' %}">The Foundation</a></li>
+		    <li>{% include 'bi/arrow-right.html' %}&nbsp;
+		      <a href="{% url 'scipost:FAQ' %}">FAQ</a></li>
+		    <li>{% include 'bi/arrow-right.html' %}&nbsp;
+		      <a href="{% url 'scipost:contact' %}">Contact us</a></li>
+		    <li>{% include 'bi/arrow-right.html' %}&nbsp;
+		      <a href="{% url 'careers:jobopenings' %}">Careers&#64;SciPost</a></li>
+		    <li>{% include 'bi/arrow-right.html' %}&nbsp;
+		      <a href="https://disc.{{ request.get_host }}" target="_blank" rel="noopener">{% include 'bi/chat-right-text.html' %} Community</a></li>
+		    <li>{% include 'bi/arrow-right.html' %}&nbsp;
+		      <a href="https://git.{{ request.get_host }}" target="_blank" rel="noopener">{% include 'bi/code-square.html' %} git.{{ request.get_host }}</a></li>
 		  </ul>
 		</div>
 	      </div>
@@ -105,6 +97,23 @@
 	</div>
       </div>
     </div>
+    <div class="col-md-4">
+      <h2 class="highlight text-center mt-0">Portals</h2>
+      <div class="d-flex justify-content-center">
+	<div class="btn-group-vertical w-100" role="group">
+	  {% for branch in branches %}
+	    {% if branch.name != 'Multidisciplinary' and branch.journals.all|length > 0 %}
+	      {% for acad_field in branch.academic_fields.all %}
+		{% if acad_field.journals.active.all|length > 0 %}
+		  <a type="button" class="btn-primary w-100 m-1 p-2 text-center" href={% url 'scipost:portal' %}?field={{ acad_field.slug }}><strong>{{ acad_field.name }}</strong></a>
+		{% endif %}
+	      {% endfor %}
+	    {% endif %}
+	  {% endfor %}
+	</div>
+      </div>
+    </div>
+
   </div>
 
 {% endblock %}
diff --git a/scipost_django/scipost/templates/scipost/portal.html b/scipost_django/scipost/templates/scipost/portal.html
index 1bb714e54ff72127268e1c1eb812e8379061fc36..2bced74c3f44fdf2306d617e1bec3f273480dc86 100644
--- a/scipost_django/scipost/templates/scipost/portal.html
+++ b/scipost_django/scipost/templates/scipost/portal.html
@@ -16,37 +16,43 @@
 
 {% block content %}
 
-  <div class="row">
-    <div class="col-md-4">
-      <!-- Latest publications -->
-      <div class="card card-publications bg-light px-1 mb-2 scipost-bar">
-        <div class="card-body pb-0">
-          <h2 class="title mb-3">Latest Publications</h2>
-          <hr class="sm mb-0 mt-2">
-        </div>
-	<div hx-get="{% url 'scipost:_hx_publications' %}"
-	     hx-trigger="load, session-acad-field-set from:body, session-specialty-set from:body"
-	>
-	</div>
-      </div><!-- End latest publications -->
+  <ul class="nav nav-pills"
+      role="tablist">
+    <li class="nav-item" role="presentation">
+      <button class="nav-link active" id="publications-tab"
+	      data-bs-toggle="tab" data-bs-target="#publications"
+	      type="button" role="tab"
+	      aria-controls="publications" aria-selected="true">
+	Publications
+      </button>
+    </li>
+    <li class="nav-item" role="presentation">
+      <button class="nav-link" id="submissions-tab"
+	      data-bs-toggle="tab" data-bs-target="#submissions"
+	      type="button" role="tab"
+	      aria-controls="submissions" aria-selected="true">
+	Submissions
+      </button>
+    </li>
+  </ul>
+
+  <hr>
+
+  <div class="tab-content mt-4" id="portalTabContent">
+    <div class="tab-pane fade show active" id="publications"
+	 role="tabpanel" aria-labelledby="publications-tab">
+      <div hx-get="{% url 'scipost:_hx_publications' %}"
+	   hx-trigger="load, clicked from:#publications-tab, session-acad-field-set from:body, session-specialty-set from:body"
+      >
+      </div>
     </div>
-
-    <div class="col-md-4">
-      <!-- Latest submissions -->
-      <div class="card card-submissions bg-light px-1 mb-2 scipost-bar">
-        <div class="card-body pb-0">
-          <h2 class="title mb-3">Latest Submissions</h2>
-          <hr class="sm mb-0 mt-2">
-        </div>
-	<div hx-get="{% url 'scipost:_hx_submissions' %}"
-	     hx-trigger="load, session-acad-field-set from:body, session-specialty-set from:body"
-	>
-	</div>
-      </div><!-- End latest submissions -->
-    </div>
-
-    <div class="col-md-4">
+    <div class="tab-pane fade" id="submissions"
+	 role="tabpanel" aria-labelledby="submissions-tab">
+      <div hx-get="{% url 'scipost:_hx_submissions' %}"
+	   hx-trigger="load, session-acad-field-set from:body, session-specialty-set from:body"
+      >
+      </div>
     </div>
-
   </div>
+
 {% endblock %}
diff --git a/scipost_django/scipost/urls.py b/scipost_django/scipost/urls.py
index 88c8564f94604d89466dbb4ae178a176fec3eaba..63f22f58b83662370e7756ce80d4c6f2719570c2 100644
--- a/scipost_django/scipost/urls.py
+++ b/scipost_django/scipost/urls.py
@@ -84,14 +84,24 @@ urlpatterns = [
     # HTMX-delivered fragments
     path(
         '_hx_publications',
-        views._hx_publications,
+        TemplateView.as_view(template_name='scipost/_hx_publications.html'),
         name='_hx_publications'
     ),
+    path(
+        '_hx_publications_page',
+        views._hx_publications_page,
+        name='_hx_publications_page'
+    ),
     path(
         '_hx_submissions',
-        views._hx_submissions,
+        TemplateView.as_view(template_name='scipost/_hx_submissions.html'),
         name='_hx_submissions'
     ),
+    path(
+        '_hx_submissions_page',
+        views._hx_submissions_page,
+        name='_hx_submissions_page'
+    ),
     path(
         '_hx_news.html',
         views._hx_news,
diff --git a/scipost_django/scipost/views.py b/scipost_django/scipost/views.py
index 9c5e969c158d06e5f1926876d2d7658a45f48975..ae3be955e573bb25c5d4d4dfe53cef50cab55840 100644
--- a/scipost_django/scipost/views.py
+++ b/scipost_django/scipost/views.py
@@ -178,32 +178,34 @@ def portal(request):
     return render(request, 'scipost/portal.html')
 
 
-def _hx_submissions(request):
-    submissions = Submission.objects.public()
+def _hx_publications_page(request):
+    publications = Publication.objects.published()
     session_acad_field_slug = request.session.get('session_acad_field_slug', None)
     if session_acad_field_slug and session_acad_field_slug != 'all':
-        submissions = submissions.filter(acad_field__slug=session_acad_field_slug)
+        publications = publications.filter(acad_field__slug=session_acad_field_slug)
     session_specialty_slug = request.session.get('session_specialty_slug', None)
     if session_specialty_slug:
-        submissions = submissions.filter(specialties__slug=session_specialty_slug)
-    context = {
-        'submissions': submissions.order_by('-submission_date')[:3],
-    }
-    return render(request, 'scipost/_hx_submissions.html', context)
+        publications = publications.filter(specialties__slug=session_specialty_slug)
+    paginator = Paginator(publications, 10)
+    page_nr = request.GET.get('page')
+    page_obj = paginator.get_page(page_nr)
+    context = { 'page_obj': page_obj }
+    return render(request, 'scipost/_hx_publications_page.html', context)
 
 
-def _hx_publications(request):
-    publications = Publication.objects.published()
+def _hx_submissions_page(request):
+    submissions = Submission.objects.public()
     session_acad_field_slug = request.session.get('session_acad_field_slug', None)
     if session_acad_field_slug and session_acad_field_slug != 'all':
-        publications = publications.filter(acad_field__slug=session_acad_field_slug)
+        submissions = submissions.filter(acad_field__slug=session_acad_field_slug)
     session_specialty_slug = request.session.get('session_specialty_slug', None)
     if session_specialty_slug:
-        publications = publications.filter(specialties__slug=session_specialty_slug)
-    context = {
-        'publications': publications.order_by('-publication_date', '-paper_nr')[:3],
-    }
-    return render(request, 'scipost/_hx_publications.html', context)
+        submissions = submissions.filter(specialties__slug=session_specialty_slug)
+    paginator = Paginator(submissions, 10)
+    page_nr = request.GET.get('page')
+    page_obj = paginator.get_page(page_nr)
+    context = { 'page_obj': page_obj }
+    return render(request, 'scipost/_hx_submissions_page.html', context)
 
 
 def _hx_news(request):
diff --git a/scipost_django/submissions/views.py b/scipost_django/submissions/views.py
index 0d5a3a1c3129b442e6ffa0721a5310eff3aaf275..95a41604b38be3a20c0e968b26088ee14a522e58 100644
--- a/scipost_django/submissions/views.py
+++ b/scipost_django/submissions/views.py
@@ -801,7 +801,6 @@ def pool_hx_submissions_list(request):
     paginator = Paginator(submissions, 16)
     page_nr = request.GET.get('page')
     page_obj = paginator.get_page(page_nr)
-    context = { 'submissions': submissions }
     context = { 'page_obj': page_obj }
     return render(request, 'submissions/pool/hx_submissions_list.html', context)
 
diff --git a/scipost_django/templates/bi/chat-right-text.html b/scipost_django/templates/bi/chat-right-text.html
new file mode 100644
index 0000000000000000000000000000000000000000..49ff14754b81fb4c3104d7c06dcc44cd499bb651
--- /dev/null
+++ b/scipost_django/templates/bi/chat-right-text.html
@@ -0,0 +1,4 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-chat-right-text" viewBox="0 0 16 16">
+  <path d="M2 1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h9.586a2 2 0 0 1 1.414.586l2 2V2a1 1 0 0 0-1-1H2zm12-1a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h12z"/>
+  <path d="M3 3.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5zM3 6a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9A.5.5 0 0 1 3 6zm0 2.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5z"/>
+</svg>