XML 71 R57.htm IDEA: XBRL DOCUMENT v3.22.0.1
Revenue Recognition - Retainages (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2021
Dec. 31, 2020
Dec. 31, 2024
Dec. 31, 2023
Revenue from External Customer [Line Items]        
Contract with customer asset $ 546,595 $ 449,176    
Contract with customer, liability 111,619 83,581    
Advanced billings revenue recognized 67,500 51,500    
Contracts in Progress        
Revenue from External Customer [Line Items]        
Contract with customer asset 528,644 436,279    
Accounts Receivable        
Revenue from External Customer [Line Items]        
Contract with customer asset 51,507 55,172    
Other Assets        
Revenue from External Customer [Line Items]        
Contract with customer asset $ 1,271 $ 1,488    
Other Assets | Forecast        
Revenue from External Customer [Line Items]        
Contract with customer asset     $ 1,000 $ 300