v3.26.1
Revenue Recognition - Schedule of Disaggregation of Revenues (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2026
Mar. 31, 2025
Disaggregation of Revenue [Line Items]    
Revenues $ 209,530 $ 192,350
United States    
Disaggregation of Revenue [Line Items]    
Revenues 207,403 189,617
International    
Disaggregation of Revenue [Line Items]    
Revenues 2,127 2,733
Goods transferred at a point in time    
Disaggregation of Revenue [Line Items]    
Revenues 87,657 95,054
Services transferred over time    
Disaggregation of Revenue [Line Items]    
Revenues 121,873 97,296
Surface Equipment    
Disaggregation of Revenue [Line Items]    
Revenues [1] 70,027 54,598
Downhole Components    
Disaggregation of Revenue [Line Items]    
Revenues 70,136 61,394
Vapor Recovery    
Disaggregation of Revenue [Line Items]    
Revenues [1] 62,068 56,571
Natural Gas Systems    
Disaggregation of Revenue [Line Items]    
Revenues 7,299 19,787
Operating Segments    
Disaggregation of Revenue [Line Items]    
Revenues 220,793 201,489
Operating Segments | Production Solutions    
Disaggregation of Revenue [Line Items]    
Revenues 140,163 115,992
Operating Segments | Production Solutions | United States    
Disaggregation of Revenue [Line Items]    
Revenues 138,341 113,458
Operating Segments | Production Solutions | International    
Disaggregation of Revenue [Line Items]    
Revenues 1,822 2,534
Operating Segments | Production Solutions | Goods transferred at a point in time    
Disaggregation of Revenue [Line Items]    
Revenues 65,446 61,394
Operating Segments | Production Solutions | Services transferred over time    
Disaggregation of Revenue [Line Items]    
Revenues 74,717 54,598
Operating Segments | Production Solutions | Surface Equipment    
Disaggregation of Revenue [Line Items]    
Revenues 70,027 [1] 54,598 [2]
Operating Segments | Production Solutions | Downhole Components    
Disaggregation of Revenue [Line Items]    
Revenues 70,136 61,394
Operating Segments | Production Solutions | Vapor Recovery    
Disaggregation of Revenue [Line Items]    
Revenues [1] 0 0
Operating Segments | Production Solutions | Natural Gas Systems    
Disaggregation of Revenue [Line Items]    
Revenues 0 0
Operating Segments | Natural Gas Technologies    
Disaggregation of Revenue [Line Items]    
Revenues 80,630 85,497
Operating Segments | Natural Gas Technologies | United States    
Disaggregation of Revenue [Line Items]    
Revenues 80,325 85,298
Operating Segments | Natural Gas Technologies | International    
Disaggregation of Revenue [Line Items]    
Revenues 305 199
Operating Segments | Natural Gas Technologies | Goods transferred at a point in time    
Disaggregation of Revenue [Line Items]    
Revenues 33,474 42,799
Operating Segments | Natural Gas Technologies | Services transferred over time    
Disaggregation of Revenue [Line Items]    
Revenues 47,156 42,698
Operating Segments | Natural Gas Technologies | Surface Equipment    
Disaggregation of Revenue [Line Items]    
Revenues 0 [1] 0 [2]
Operating Segments | Natural Gas Technologies | Downhole Components    
Disaggregation of Revenue [Line Items]    
Revenues 0 0
Operating Segments | Natural Gas Technologies | Vapor Recovery    
Disaggregation of Revenue [Line Items]    
Revenues [1] 62,111 56,616
Operating Segments | Natural Gas Technologies | Natural Gas Systems    
Disaggregation of Revenue [Line Items]    
Revenues 18,519 28,881
Other and Eliminations    
Disaggregation of Revenue [Line Items]    
Revenues (11,263) (9,139)
Other and Eliminations | United States    
Disaggregation of Revenue [Line Items]    
Revenues (11,263) (9,139)
Other and Eliminations | International    
Disaggregation of Revenue [Line Items]    
Revenues 0 0
Other and Eliminations | Goods transferred at a point in time    
Disaggregation of Revenue [Line Items]    
Revenues (11,263) (9,139)
Other and Eliminations | Services transferred over time    
Disaggregation of Revenue [Line Items]    
Revenues 0 0
Other and Eliminations | Surface Equipment    
Disaggregation of Revenue [Line Items]    
Revenues [2] 0 0
Other and Eliminations | Downhole Components    
Disaggregation of Revenue [Line Items]    
Revenues 0 0
Other and Eliminations | Vapor Recovery    
Disaggregation of Revenue [Line Items]    
Revenues [2] (43) (45)
Other and Eliminations | Natural Gas Systems    
Disaggregation of Revenue [Line Items]    
Revenues $ (11,220) $ (9,094)
[1] All of revenue for these service lines are recognized in accordance with ASC 842 as described within the Revenue Recognition section above.
[2] All of revenue for these service lines are recognized in accordance with ASC 842 as described within the Revenue Recognition section above.