diff --git a/src/app/+display/display.component.html b/src/app/+display/display.component.html
index 73b9ae3a..a0ae94a3 100644
--- a/src/app/+display/display.component.html
+++ b/src/app/+display/display.component.html
@@ -16,7 +16,7 @@
diff --git a/src/app/+display/display.component.ts b/src/app/+display/display.component.ts
index 4d9246e7..9c479452 100644
--- a/src/app/+display/display.component.ts
+++ b/src/app/+display/display.component.ts
@@ -1,4 +1,4 @@
-import { ChangeDetectionStrategy, Component, Inject, OnDestroy, OnInit, PLATFORM_ID } from '@angular/core';
+import { ChangeDetectionStrategy, Component, HostListener, Inject, OnDestroy, OnInit, PLATFORM_ID } from '@angular/core';
import { MetaDefinition } from '@angular/platform-browser';
import { ActivatedRoute, Params, Router } from '@angular/router';
import { Store, select } from '@ngrx/store';
@@ -334,4 +334,28 @@ export class DisplayComponent implements OnDestroy, OnInit {
return metaTags;
}
+ @HostListener('click', ['$event'])
+ public onMainContentClick(event: MouseEvent): void {
+ const target = event.target as HTMLElement;
+
+ if (!target) return;
+
+ const toggleBtn = target.closest('.toggle-btn');
+
+ if (!toggleBtn) return;
+
+ const container = toggleBtn.closest('.research-areas') as HTMLElement;
+
+ if (!container) return;
+
+ event.preventDefault();
+ event.stopPropagation();
+
+ const nextState = !(container.getAttribute('data-expanded') === 'true');
+
+ container.setAttribute('data-expanded', String(nextState));
+ toggleBtn.textContent = nextState ? 'Show less' : 'Show more';
+ toggleBtn.setAttribute('aria-expanded', String(nextState));
+ }
+
}