XML 59 R45.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Revenue Recognition - Schedule of revenue by contract type (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Disaggregation of Revenue [Line Items]    
Contract revenues $ 815,562 $ 811,616
Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 100.00% 100.00%
Fixed price    
Disaggregation of Revenue [Line Items]    
Contract revenues $ 507,800 $ 534,855
Fixed price | Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 62.30% 65.90%
Unit price    
Disaggregation of Revenue [Line Items]    
Contract revenues $ 152,461 $ 131,351
Unit price | Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 18.70% 16.20%
T&E    
Disaggregation of Revenue [Line Items]    
Contract revenues $ 155,301 $ 145,410
T&E | Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 19.00% 17.90%
T&D    
Disaggregation of Revenue [Line Items]    
Contract revenues $ 490,395 $ 445,324
T&D | Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 100.00% 100.00%
T&D | Fixed price    
Disaggregation of Revenue [Line Items]    
Contract revenues $ 243,000 $ 229,234
T&D | Fixed price | Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 49.50% 51.50%
T&D | Unit price    
Disaggregation of Revenue [Line Items]    
Contract revenues $ 136,125 $ 113,709
T&D | Unit price | Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 27.80% 25.50%
T&D | T&E    
Disaggregation of Revenue [Line Items]    
Contract revenues $ 111,270 $ 102,381
T&D | T&E | Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 22.70% 23.00%
C&I    
Disaggregation of Revenue [Line Items]    
Contract revenues $ 325,167 $ 366,292
C&I | Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 100.00% 100.00%
C&I | Fixed price    
Disaggregation of Revenue [Line Items]    
Contract revenues $ 264,800 $ 305,621
C&I | Fixed price | Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 81.50% 83.40%
C&I | Unit price    
Disaggregation of Revenue [Line Items]    
Contract revenues $ 16,336 $ 17,642
C&I | Unit price | Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 5.00% 4.80%
C&I | T&E    
Disaggregation of Revenue [Line Items]    
Contract revenues $ 44,031 $ 43,029
C&I | T&E | Product concentration risk | Revenue benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk, Percent 13.50% 11.80%