XML 57 R43.htm IDEA: XBRL DOCUMENT v3.22.0.1
Revenue from Contracts with Customers - Revenue Recognition (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2021
Dec. 31, 2020
Dec. 31, 2019
Contracts in progress      
Costs incurred on contracts in progress $ 3,723,715 $ 3,103,580  
Estimated earnings, net of losses 589,286 548,435  
Less-Billings to date (4,527,801) (3,813,171)  
Less-Unbilled accounts receivable (61,881) (45,596)  
Less-Unbilled accounts receivable credit allowance (715) (784)  
Contracts in progress (277,396) (207,536)  
Costs and estimated earnings in excess of billings 29,900 18,622 $ 2,736
Plus-Costs and estimated earnings in excess of billings credit allowance 84 79  
Billings in excess of costs and estimated earnings $ (307,380) (226,237) $ (166,918)
Period during which progress billings or contract price can be withheld until completion of work 6 months    
Retention receivable $ 139,500 124,100  
Retention payable $ 24,000 $ 22,200  
Revenue, Performance Obligation, Description of Payment Terms We typically invoice our customers with payment terms of net due in 30 days    
Receivable payment terms (in days) 30 days    
Minimum      
Contracts in progress      
Receivable payment terms (in days) 45 days    
Payments received term (in days) 30 days    
Maximum      
Contracts in progress      
Receivable payment terms (in days) 60 days    
Payments received term (in days) 90 days