v3.26.3
Revenue - Summary of Disaggregation of Total Net Sales by End Market and Geographic Location (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2026
Sep. 30, 2025
Sep. 30, 2026
Sep. 30, 2025
Disaggregation of Revenue [Line Items]        
Net sales $ 193,254 $ 172,825 $ 555,912 $ 515,818
United States [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 145,948 133,082 420,633 390,624
Non-US [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 47,306 39,743 135,279 125,194
Industrial [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 34,380 30,974 99,523 90,910
Fire Market [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 35,753 31,955 92,876 96,660
Agriculture [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 27,721 22,985 82,168 68,861
Construction [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 26,871 23,363 82,908 68,224
Municipal [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 28,305 26,339 82,036 78,170
Petroleum [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 5,715 4,716 15,932 15,736
OEM [Member]        
Disaggregation of Revenue [Line Items]        
Net sales 14,261 12,804 40,185 36,148
Repair Parts [Member]        
Disaggregation of Revenue [Line Items]        
Net sales $ 20,248 $ 19,689 $ 60,284 $ 61,109