XML 53 R42.htm IDEA: XBRL DOCUMENT v3.23.2
Revenue - Timing of Transfer (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Disaggregation of Revenue        
Total net sales $ 148,034 $ 131,515 $ 263,522 $ 230,309
Point in time        
Disaggregation of Revenue        
Total net sales 110,870 95,413 193,832 163,904
Over time        
Disaggregation of Revenue        
Total net sales 37,164 36,102 69,690 66,405
Rail, Technologies, and Services        
Disaggregation of Revenue        
Total net sales 91,616 81,797 156,000 145,507
Rail, Technologies, and Services | Point in time        
Disaggregation of Revenue        
Total net sales 75,923 65,872 129,757 115,038
Rail, Technologies, and Services | Over time        
Disaggregation of Revenue        
Total net sales 15,693 15,925 26,243 30,469
Precast Concrete Products        
Disaggregation of Revenue        
Total net sales 33,865 23,611 58,153 38,621
Precast Concrete Products | Point in time        
Disaggregation of Revenue        
Total net sales 14,540 8,577 27,942 12,840
Precast Concrete Products | Over time        
Disaggregation of Revenue        
Total net sales 19,325 15,034 30,211 25,781
Steel Products and Measurement        
Disaggregation of Revenue        
Total net sales 22,553 26,107 49,369 46,181
Steel Products and Measurement | Point in time        
Disaggregation of Revenue        
Total net sales 20,407 20,964 36,133 36,026
Steel Products and Measurement | Over time        
Disaggregation of Revenue        
Total net sales $ 2,146 $ 5,143 $ 13,236 $ 10,155