XML 70 R55.htm IDEA: XBRL DOCUMENT v3.20.4
Revenue - Summary of Revenue Disaggregated by Service Type, and Contract Type (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2020
Dec. 31, 2019
Dec. 31, 2018
Disaggregation of Revenue [Line Items]      
Revenue from contracts with customers $ 1,339,151 $ 1,385,294 $ 1,305,974
Centuri      
Disaggregation of Revenue [Line Items]      
Revenue from contracts with customers 1,948,288 1,750,978 1,522,285
Master services agreement | Centuri      
Disaggregation of Revenue [Line Items]      
Revenue from contracts with customers 1,490,009 1,383,377 1,102,412
Bid contract | Centuri      
Disaggregation of Revenue [Line Items]      
Revenue from contracts with customers 458,279 367,601 419,873
Unit price contracts | Centuri      
Disaggregation of Revenue [Line Items]      
Revenue from contracts with customers 1,356,640 1,380,256 1,258,419
Fixed price contracts | Centuri      
Disaggregation of Revenue [Line Items]      
Revenue from contracts with customers 157,701 112,924 117,298
Time and materials contracts | Centuri      
Disaggregation of Revenue [Line Items]      
Revenue from contracts with customers 433,947 257,798 146,568
Gas infrastructure services | Centuri      
Disaggregation of Revenue [Line Items]      
Revenue from contracts with customers 1,261,160 1,238,974 1,123,682
Electric power infrastructure services | Centuri      
Disaggregation of Revenue [Line Items]      
Revenue from contracts with customers 411,826 247,717 32,629
Other | Centuri      
Disaggregation of Revenue [Line Items]      
Revenue from contracts with customers $ 275,302 $ 264,287 $ 365,974