XML 59 R45.htm IDEA: XBRL DOCUMENT v3.20.4
Revenue from Contracts with Customers - Revenue Recognition (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2020
Dec. 31, 2019
Dec. 31, 2018
Contracts in progress      
Costs incurred on contracts in progress $ 3,103,580 $ 2,518,581  
Estimated earnings, net of losses 548,435 405,891  
Less-Billings to date (3,813,171) (3,033,112)  
Less-Unbilled accounts receivable (45,596) (55,542)  
Less-Unbilled accounts receivable credit allowance (784) 0  
Contracts in progress (207,536) (164,182)  
Costs and estimated earnings in excess of billings 18,622 2,736 $ 10,213
Plus-Costs and estimated earnings in excess of billings credit allowance 79 0  
Billings in excess of costs and estimated earnings $ (226,237) (166,918) $ (130,986)
Period during which progress billings or contract price can be withheld until completion of work 6 months    
Retention receivable $ 124,100 111,700  
Retention payable $ 22,200 $ 15,800  
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