Revenue (Tables)
|
6 Months Ended |
Jun. 30, 2026 |
| Revenue |
|
| Schedule of revenue by segment |
| | | | | | | | | | | | | | | | | | | | | | | Three Months Ended | | | Six Months Ended | | (Amounts in thousands) | June 30, 2026 | | June 30, 2025 | | | June 30, 2026 | | June 30, 2025 | | | | | | % of Total | | | | | % of Total | | | | | | % of Total | | | | | % of Total | | Segment | Revenue | | Revenue | | Revenue | | Revenue | | | Revenue | | Revenue | | Revenue | | Revenue | | Civil | $ | 40,987 | | 36.2 | % | $ | 81,530 | | 37.9 | % | | $ | 144,779 | | 50.7 | % | $ | 184,446 | | 40.5 | % | Transportation | | 72,319 | | 63.8 | % | | 133,852 | | 62.1 | % | | | 140,932 | | 49.3 | % | | 270,422 | | 59.5 | % | Total revenue | $ | 113,306 | | 100.0 | % | $ | 215,382 | | 100.0 | % | | $ | 285,711 | | 100.0 | % | $ | 454,868 | | 100.0 | % |
|
| Schedule of cost of construction by segment |
| | | | | | | | | | | | | | | | | | | | | | | Three Months Ended | | | Six Months Ended | | (Amounts in thousands) | June 30, 2026 | | June 30, 2025 | | | June 30, 2026 | | June 30, 2025 | | | | | % of Total | | | | % of Total | | | | | % of Total | | | | % of Total | | | Cost of | | Cost of | | Cost of | | Cost of | | | Cost of | | Cost of | | Cost of | | Cost of | | Segment | Construction | | Construction | | Construction | | Construction | | | Construction | | Construction | | Construction | | Construction | | Civil | $ | 68,061 | | 36.9 | % | $ | 67,273 | | 33.2 | % | | $ | 157,201 | | 43.5 | % | $ | 147,680 | | 35.0 | % | Transportation | | 116,478 | | 63.1 | % | | 135,141 | | 66.8 | % | | | 204,499 | | 56.5 | % | | 273,741 | | 65.0 | % | Total cost of construction | $ | 184,539 | | 100.0 | % | $ | 202,414 | | 100.0 | % | | $ | 361,700 | | 100.0 | % | $ | 421,421 | | 100.0 | % |
|
| Schedule of gross profit (loss) by segment |
| | | | | | | | | | | | | | | | | | | | | | | Three Months Ended | | | Six Months Ended | | (Amounts in thousands) | June 30, 2026 | | June 30, 2025 | | | June 30, 2026 | | June 30, 2025 | | | | | % of Segment | | | | % of Segment | | | | | % of Segment | | | | | % of Segment | | Segment | Gross Loss | | Revenue | | Gross Profit | | Revenue | | | Gross Loss | | Revenue | | Gross Profit | | Revenue | | Civil | $ | (27,074) | | (66.1) | % | $ | 14,257 | | 17.5 | % | | $ | (12,422) | | (8.6) | % | $ | 36,766 | | 19.9 | % | Transportation | | (44,159) | | (61.1) | % | | (1,289) | | (1.0) | % | | | (63,567) | | (45.1) | % | | (3,319) | | (1.2) | % | Gross profit (loss) | $ | (71,233) | | (62.9) | % | $ | 12,968 | | 6.0 | % | | $ | (75,989) | | (26.6) | % | $ | 33,447 | | 7.4 | % |
|
| Schedule of reconciliation of segment gross profit (loss) |
| | | | | | | | | | | | | Three Months Ended | | Six Months Ended | (Amounts in thousands) | June 30, 2026 | | June 30, 2025 | | June 30, 2026 | | June 30, 2025 | Gross profit (loss) from segments | | (71,233) | | | 12,968 | | | (75,989) | | | 33,447 | Selling, general, and administrative expenses | | 16,705 | | | 13,572 | | | 31,648 | | | 30,037 | Total operating income (loss) | | (87,938) | | | (604) | | | (107,637) | | | 3,410 | Gain on investments, net | | 67 | | | 59 | | | 214 | | | 76 | Other income, net | | 6,447 | | | 577 | | | 6,521 | | | 2,321 | Interest expense | | (7,336) | | | (9,983) | | | (16,017) | | | (18,857) | Losses before income taxes | $ | (88,760) | | $ | (9,951) | | $ | (116,919) | | $ | (13,050) |
|