| 06/10/26 | 07:00:01 | 6 Oct 2026 | | Transaction in Own Shares | RNS |
| 01/10/26 | 10:33:00 | 1 Oct 2026 | | Total Voting Rights | PRN |
| 29/09/26 | 07:00:03 | 29 Sept 2026 | | Transaction in Own Shares | RNS |
| 28/09/26 | 07:00:09 | 28 Sept 2026 | | Contract variation for I-40 | RNS |
| 23/09/26 | 08:30:00 | 23 Sept 2026 | | Holding(s) in Company | PRN |
| 22/09/26 | 07:00:03 | 22 Sept 2026 | | Transaction in Own Shares | RNS |
| 15/09/26 | 14:12:00 | 15 Sept 2026 | | Director/PDMR Shareholding | PRN |
| 15/09/26 | 07:00:01 | 15 Sept 2026 | | Transaction in Own Shares | RNS |
| 11/09/26 | 16:03:00 | 11 Sept 2026 | | Director/PDMR Shareholding | PRN |
| 08/09/26 | 07:00:01 | 8 Sept 2026 | | Transaction in Own Shares | RNS |
| 02/09/26 | 07:00:01 | 2 Sept 2026 | | Transaction in Own Shares | RNS |
| 01/09/26 | 09:56:00 | 1 Sept 2026 | | Total Voting Rights | PRN |
| 27/08/26 | 08:30:00 | 27 Aug 2026 | | Director/PDMR Shareholding | PRN |
| 25/08/26 | 07:00:01 | 25 Aug 2026 | | Transaction in Own Shares | RNS |
| 18/08/26 | 07:00:01 | 18 Aug 2026 | | Transaction in Own Shares | RNS |
| 11/08/26 | 07:00:02 | 11 Aug 2026 | | Transaction in Own Shares | RNS |
| 06/08/26 | 16:07:00 | 6 Aug 2026 | | Director/PDMR Shareholding | PRN |
| 04/08/26 | 07:00:04 | 4 Aug 2026 | | Interim Results for the half year ended 30 June 26 | RNS |
| 04/08/26 | 07:00:02 | 4 Aug 2026 | | Transaction in Own Shares | RNS |
| 03/08/26 | 08:30:00 | 3 Aug 2026 | | Total Voting Rights | PRN |
| 14/07/26 | 07:00:02 | 14 Jul 2026 | | Transaction in Own Shares | RNS |
| 07/07/26 | 07:00:02 | 7 Jul 2026 | | Trading Update | RNS |
| 07/07/26 | 07:00:01 | 7 Jul 2026 | | Transaction in Own Shares | RNS |
| 01/07/26 | 09:00:00 | 1 Jul 2026 | | Director/PDMR Shareholding | PRN |
| 01/07/26 | 08:30:00 | 1 Jul 2026 | | Total Voting Rights | PRN |
| 30/06/26 | 07:00:02 | 30 Jun 2026 | | Transaction in Own Shares | RNS |
| 25/06/26 | 09:00:00 | 25 Jun 2026 | | Holding(s) in Company | PRN |
| 23/06/26 | 11:43:00 | 23 Jun 2026 | | Holding(s) in Company | PRN |
| 23/06/26 | 07:00:02 | 23 Jun 2026 | | Transaction in Own Shares | RNS |
| 19/06/26 | 07:00:00 | 19 Jun 2026 | | Appointment of Joint Corporate Brokers | PRN |
| 18/06/26 | 15:09:00 | 18 Jun 2026 | | Holding(s) in Company | PRN |
| 16/06/26 | 07:00:02 | 16 Jun 2026 | | Transaction in Own Shares | RNS |
| 09/06/26 | 07:00:03 | 9 Jun 2026 | | Multi-year US highway contract variation award | RNS |
| 09/06/26 | 07:00:01 | 9 Jun 2026 | | Transaction in Own Shares | RNS |
| 02/06/26 | 07:00:02 | 2 Jun 2026 | | Transaction in Own Shares | RNS |
| 01/06/26 | 08:30:00 | 1 Jun 2026 | | Total Voting Rights | PRN |
| 27/05/26 | 07:00:01 | 27 May 2026 | | Transaction in Own Shares | RNS |
| 22/05/26 | 16:16:00 | 22 May 2026 | | Holding(s) in Company | PRN |
| 20/05/26 | 11:06:00 | 20 May 2026 | | Result of AGM | PRN |
| 20/05/26 | 07:00:04 | 20 May 2026 | | AGM Trading Update | RNS |
| 19/05/26 | 07:00:02 | 19 May 2026 | | Transaction in Own Shares | RNS |
| 12/05/26 | 09:09:00 | 12 May 2026 | | Holding(s) in Company | PRN |
| 12/05/26 | 07:00:03 | 12 May 2026 | | Transaction in Own Shares | RNS |
| 07/05/26 | 10:32:00 | 7 May 2026 | | Holding(s) in Company | PRN |
| 06/05/26 | 12:00:00 | 6 May 2026 | | Holding(s) in Company | PRN |
| 06/05/26 | 11:13:00 | 6 May 2026 | | Director Declaration | PRN |
| 06/05/26 | 07:00:01 | 6 May 2026 | | Transaction in Own Shares | RNS |
| 05/05/26 | 16:30:00 | 5 May 2026 | | Holding(s) in Company | PRN |
| 01/05/26 | 08:30:00 | 1 May 2026 | | Total Voting Rights | PRN |
| 28/04/26 | 07:00:02 | 28 Apr 2026 | | Transaction in Own Shares | RNS |