v3.25.2
Revenue - Summary of Disaggregation of Total Net Sales by End Market and Geographic Location (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2025
Jun. 30, 2024
Jun. 30, 2025
Jun. 30, 2024
Disaggregation of Revenue [Line Items]        
Net sales $ 179,045 $ 169,513 $ 342,994 $ 328,781
United States [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 136,393 127,021 258,388 241,596
Non-US [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 42,652 42,492 84,606 87,185
Industrial [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 36,131 34,570 68,747 68,130
Fire Market [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 31,753 28,959 64,730 61,249
Agriculture [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 20,158 21,381 39,621 41,787
Construction [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 21,967 21,907 40,748 43,389
Municipal [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 29,795 26,206 51,845 46,419
Petroleum [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 6,973 5,451 13,900 11,353
OEM [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 11,386 11,684 22,019 19,842
Repair Parts [Member]        
Disaggregation of Revenue [Line Items]        
Net sales $ 20,882 $ 19,355 $ 41,384 $ 36,612