v3.26.1
Segment Information - Summary of Operating Income (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2026
Mar. 31, 2025
Segment Reporting Information [Line Items]    
Operating revenues $ 1,036,953 $ 826,629
Cost of sales 906,224 734,136
Gross profit 130,729 92,493
Selling, general and administrative expenses 53,045 41,509
Operating income 77,684 50,984
Interest income 2,324 937
Interest expense 4,620 5,631
Other income, net 552 567
Income before income taxes and income from equity method investments 75,940 46,857
Pro forma    
Segment Reporting Information [Line Items]    
Operating revenues 1,036,953  
Cost of sales 906,224  
Gross profit 130,729  
Selling, general and administrative expenses 53,045  
Operating income 77,684  
Interest income 2,324  
Interest expense 4,620  
Other income, net 552  
Income before income taxes and income from equity method investments 75,940  
Operating segments    
Segment Reporting Information [Line Items]    
Operating revenues 1,039,587 833,242
Operating segments | Pro forma    
Segment Reporting Information [Line Items]    
Operating revenues 1,043,586  
Corporate and Other    
Segment Reporting Information [Line Items]    
Operating revenues 1,694  
Cost of sales 1,161 (166)
Gross profit 533 166
Selling, general and administrative expenses 13,770 7,922
Operating income (13,237) (7,756)
Corporate and Other | Pro forma    
Segment Reporting Information [Line Items]    
Cost of sales (534)  
Gross profit 534  
Selling, general and administrative expenses 13,770  
Operating income (13,236)  
Eliminations    
Segment Reporting Information [Line Items]    
Operating revenues (4,328)  
Cost of sales (4,328)  
Eliminations    
Segment Reporting Information [Line Items]    
Operating revenues (2,634) (6,613)
Eliminations | Pro forma    
Segment Reporting Information [Line Items]    
Operating revenues (6,633)  
E&M    
Segment Reporting Information [Line Items]    
Operating revenues 835,091 643,991
E&M | Pro forma    
Segment Reporting Information [Line Items]    
Operating revenues 835,091  
E&M | Operating segments    
Segment Reporting Information [Line Items]    
Operating revenues 835,124 648,227
Cost of sales 735,069 575,106
Gross profit 100,055 68,885
Selling, general and administrative expenses 29,482 24,616
Operating income 70,573 44,269
Interest expense (2,058) (1,823)
E&M | Operating segments | Pro forma    
Segment Reporting Information [Line Items]    
Operating revenues 837,662  
Cost of sales 735,036  
Gross profit 100,055  
Selling, general and administrative expenses 29,482  
Operating income 70,573  
E&M | Eliminations    
Segment Reporting Information [Line Items]    
Operating revenues (33) (4,236)
E&M | Eliminations | Pro forma    
Segment Reporting Information [Line Items]    
Operating revenues (2,571)  
T&D    
Segment Reporting Information [Line Items]    
Operating revenues 201,862 182,638
T&D | Pro forma    
Segment Reporting Information [Line Items]    
Operating revenues 201,862  
T&D | Operating segments    
Segment Reporting Information [Line Items]    
Operating revenues 204,463 185,015
Cost of sales 174,322 159,196
Gross profit 30,141 23,442
Selling, general and administrative expenses 9,793 8,971
Operating income 20,348 14,471
Interest expense 568 700
T&D | Operating segments | Pro forma    
Segment Reporting Information [Line Items]    
Operating revenues 205,924  
Cost of sales 171,722  
Gross profit 30,140  
Selling, general and administrative expenses 9,793  
Operating income 20,347  
T&D | Eliminations    
Segment Reporting Information [Line Items]    
Operating revenues (2,601) $ (2,377)
T&D | Eliminations | Pro forma    
Segment Reporting Information [Line Items]    
Operating revenues $ (4,062)