XML 33 R22.htm IDEA: XBRL DOCUMENT v3.23.3
Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Jun. 30, 2023
Revenue, Performance Obligation [Abstract]      
Revenue, Remaining Performance Obligation, Amount $ 376,500    
Performance obligations to be recognized as revenue within next twelve months 293,100    
Contract with Customer, Asset and Liability [Abstract]      
Costs and estimated earnings in excess of billings on uncompleted contracts 42,369   $ 44,888
Change in CIE (2,519)    
Billings on uncompleted contracts in excess of costs and estimated earnings (73,133)   (85,436)
Change in BIE 12,303    
Contract with customer, current liability, net (30,764)   (40,548)
Change in net contract balances 9,784    
Contract with Customer, Liability, Revenue Recognized 62,900    
Project Unapproved Change Orders and Claims [Line Items]      
Unapproved change orders and claims 10,100   9,700
Disclosure Customer Contracts Additional Information [Abstract]      
Construction Contractor, Receivable, Retainage, Year One 15,200   16,300
Construction Contractor, Receivable, Retainage, after Year One 13,400   $ 10,000
Disaggregation of Revenue [Line Items]      
Revenue from Contract with Customer 197,659 $ 208,431  
Fixed-price Contract      
Disaggregation of Revenue [Line Items]      
Revenue from Contract with Customer 116,757 109,473  
Time-and-materials Contract      
Disaggregation of Revenue [Line Items]      
Revenue from Contract with Customer 80,902 98,958  
United States      
Disaggregation of Revenue [Line Items]      
Revenue from Contract with Customer 177,550 176,180  
Canada      
Disaggregation of Revenue [Line Items]      
Revenue from Contract with Customer 16,873 24,925  
Other international      
Disaggregation of Revenue [Line Items]      
Revenue from Contract with Customer $ 3,236 $ 7,326