XML 126 R109.htm IDEA: XBRL DOCUMENT v3.22.0.1
Segment Information (Net Sales by Contract Type) (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2021
Dec. 31, 2020
Dec. 31, 2019
Disaggregation of Revenue [Line Items]      
Net sales: $ 1,339,783 $ 1,032,578 $ 898,233
Renewables      
Disaggregation of Revenue [Line Items]      
Net sales: 432,096 238,107 229,755
Residential      
Disaggregation of Revenue [Line Items]      
Net sales: 635,505 522,814 461,630
Agtech      
Disaggregation of Revenue [Line Items]      
Net sales: 199,161 209,460 143,268
Infrastructure      
Disaggregation of Revenue [Line Items]      
Net sales: 73,021 62,197 63,580
Point in Time      
Disaggregation of Revenue [Line Items]      
Net sales: 711,793 616,789 527,092
Point in Time | Renewables      
Disaggregation of Revenue [Line Items]      
Net sales: 28,630 22,833 2,677
Point in Time | Residential      
Disaggregation of Revenue [Line Items]      
Net sales: 630,494 518,281 458,006
Point in Time | Agtech      
Disaggregation of Revenue [Line Items]      
Net sales: 20,157 52,894 39,919
Point in Time | Infrastructure      
Disaggregation of Revenue [Line Items]      
Net sales: 32,512 22,781 26,490
Over Time      
Disaggregation of Revenue [Line Items]      
Net sales: 627,990 415,789 371,141
Over Time | Renewables      
Disaggregation of Revenue [Line Items]      
Net sales: 403,466 215,274 227,078
Over Time | Residential      
Disaggregation of Revenue [Line Items]      
Net sales: 5,011 4,533 3,624
Over Time | Agtech      
Disaggregation of Revenue [Line Items]      
Net sales: 179,004 156,566 103,349
Over Time | Infrastructure      
Disaggregation of Revenue [Line Items]      
Net sales: $ 40,509 $ 39,416 $ 37,090