Revenue from Contracts with Customers - Schedule of Contracts In Progress (Details) - USD ($) $ in Thousands |
Jun. 30, 2026 |
Dec. 31, 2025 |
|---|---|---|
| Revenue from Contract with Customer [Abstract] | ||
| Revenue earned on uncompleted contracts | $ 677,744 | $ 614,448 |
| Less: Billings to date | (685,240) | (606,083) |
| Net (overbilling) underbilling | (7,496) | 8,365 |
| Costs and estimated earnings in excess of billings on uncompleted contracts | 27,399 | 29,254 |
| Billings in excess of costs and estimated earnings on uncompleted contracts, net | $ (34,895) | $ (20,889) |