XML 51 R41.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue - Disaggregated Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2024
Sep. 30, 2023
Sep. 30, 2024
Sep. 30, 2023
Disaggregation of Revenue [Line Items]        
Revenue $ 182,694 $ 179,354 $ 556,909 $ 523,399
United States        
Disaggregation of Revenue [Line Items]        
Revenue 124,797 126,542 387,270 373,280
Other Americas        
Disaggregation of Revenue [Line Items]        
Revenue 26,646 24,000 70,411 65,339
Europe        
Disaggregation of Revenue [Line Items]        
Revenue 28,996 27,038 90,376 77,162
Asia-Pacific        
Disaggregation of Revenue [Line Items]        
Revenue 2,255 1,774 8,852 7,618
Oil & Gas        
Disaggregation of Revenue [Line Items]        
Revenue 99,503 103,252 321,924 308,041
Aerospace & Defense        
Disaggregation of Revenue [Line Items]        
Revenue 21,886 20,065 66,344 57,685
Industrials        
Disaggregation of Revenue [Line Items]        
Revenue 19,512 16,653 53,005 50,303
Power Generation & Transmission        
Disaggregation of Revenue [Line Items]        
Revenue 11,654 9,737 26,539 25,863
Other Process Industries        
Disaggregation of Revenue [Line Items]        
Revenue 11,815 9,792 38,624 35,546
Infrastructure, Research & Engineering        
Disaggregation of Revenue [Line Items]        
Revenue 8,730 9,495 23,949 22,002
Petrochemical        
Disaggregation of Revenue [Line Items]        
Revenue 4,004 3,899 12,367 10,914
Other        
Disaggregation of Revenue [Line Items]        
Revenue 5,590 6,461 14,157 13,045
Operating segments | North America        
Disaggregation of Revenue [Line Items]        
Revenue 149,845 148,814 456,588 431,295
Operating segments | North America | United States        
Disaggregation of Revenue [Line Items]        
Revenue 124,194 126,239 384,522 369,811
Operating segments | North America | Other Americas        
Disaggregation of Revenue [Line Items]        
Revenue 25,108 21,907 66,829 57,218
Operating segments | North America | Europe        
Disaggregation of Revenue [Line Items]        
Revenue 343 465 2,107 3,159
Operating segments | North America | Asia-Pacific        
Disaggregation of Revenue [Line Items]        
Revenue 200 203 3,130 1,107
Operating segments | North America | Oil & Gas        
Disaggregation of Revenue [Line Items]        
Revenue 90,460 94,390 289,843 281,663
Operating segments | North America | Aerospace & Defense        
Disaggregation of Revenue [Line Items]        
Revenue 16,181 14,240 48,152 41,516
Operating segments | North America | Industrials        
Disaggregation of Revenue [Line Items]        
Revenue 12,285 10,325 33,047 30,693
Operating segments | North America | Power Generation & Transmission        
Disaggregation of Revenue [Line Items]        
Revenue 8,029 7,388 18,953 17,834
Operating segments | North America | Other Process Industries        
Disaggregation of Revenue [Line Items]        
Revenue 7,836 6,933 26,132 24,906
Operating segments | North America | Infrastructure, Research & Engineering        
Disaggregation of Revenue [Line Items]        
Revenue 5,189 6,042 14,286 12,696
Operating segments | North America | Petrochemical        
Disaggregation of Revenue [Line Items]        
Revenue 3,806 3,313 11,467 10,027
Operating segments | North America | Other        
Disaggregation of Revenue [Line Items]        
Revenue 6,059 6,183 14,708 11,960
Operating segments | International        
Disaggregation of Revenue [Line Items]        
Revenue 33,662 30,980 100,972 90,664
Operating segments | International | United States        
Disaggregation of Revenue [Line Items]        
Revenue 402 120 1,129 709
Operating segments | International | Other Americas        
Disaggregation of Revenue [Line Items]        
Revenue 2,008 3,703 6,224 11,013
Operating segments | International | Europe        
Disaggregation of Revenue [Line Items]        
Revenue 29,458 26,764 89,304 75,421
Operating segments | International | Asia-Pacific        
Disaggregation of Revenue [Line Items]        
Revenue 1,794 393 4,315 3,521
Operating segments | International | Oil & Gas        
Disaggregation of Revenue [Line Items]        
Revenue 9,040 8,827 31,841 26,291
Operating segments | International | Aerospace & Defense        
Disaggregation of Revenue [Line Items]        
Revenue 5,663 5,778 18,092 15,894
Operating segments | International | Industrials        
Disaggregation of Revenue [Line Items]        
Revenue 6,749 6,018 18,480 18,274
Operating segments | International | Power Generation & Transmission        
Disaggregation of Revenue [Line Items]        
Revenue 3,081 1,653 6,017 4,840
Operating segments | International | Other Process Industries        
Disaggregation of Revenue [Line Items]        
Revenue 3,900 2,864 12,337 10,567
Operating segments | International | Infrastructure, Research & Engineering        
Disaggregation of Revenue [Line Items]        
Revenue 2,744 2,383 7,762 6,547
Operating segments | International | Petrochemical        
Disaggregation of Revenue [Line Items]        
Revenue 198 586 900 887
Operating segments | International | Other        
Disaggregation of Revenue [Line Items]        
Revenue 2,287 2,871 5,543 7,364
Operating segments | Products        
Disaggregation of Revenue [Line Items]        
Revenue 3,276 2,829 9,860 9,897
Operating segments | Products | United States        
Disaggregation of Revenue [Line Items]        
Revenue 1,658 1,032 4,800 4,478
Operating segments | Products | Other Americas        
Disaggregation of Revenue [Line Items]        
Revenue 107 49 960 673
Operating segments | Products | Europe        
Disaggregation of Revenue [Line Items]        
Revenue 850 510 2,081 1,275
Operating segments | Products | Asia-Pacific        
Disaggregation of Revenue [Line Items]        
Revenue 661 1,238 2,019 3,471
Operating segments | Products | Oil & Gas        
Disaggregation of Revenue [Line Items]        
Revenue 3 35 240 87
Operating segments | Products | Aerospace & Defense        
Disaggregation of Revenue [Line Items]        
Revenue 42 47 100 275
Operating segments | Products | Industrials        
Disaggregation of Revenue [Line Items]        
Revenue 478 310 1,478 1,336
Operating segments | Products | Power Generation & Transmission        
Disaggregation of Revenue [Line Items]        
Revenue 544 696 1,569 3,189
Operating segments | Products | Other Process Industries        
Disaggregation of Revenue [Line Items]        
Revenue 79 (5) 155 73
Operating segments | Products | Infrastructure, Research & Engineering        
Disaggregation of Revenue [Line Items]        
Revenue 797 1,070 1,901 2,759
Operating segments | Products | Petrochemical        
Disaggregation of Revenue [Line Items]        
Revenue 0 0 0 0
Operating segments | Products | Other        
Disaggregation of Revenue [Line Items]        
Revenue 1,333 676 4,417 2,178
Corp/Elim        
Disaggregation of Revenue [Line Items]        
Revenue (4,089) (3,269) (10,511) (8,457)
Corp/Elim | United States        
Disaggregation of Revenue [Line Items]        
Revenue (1,457) (849) (3,181) (1,718)
Corp/Elim | Other Americas        
Disaggregation of Revenue [Line Items]        
Revenue (577) (1,659) (3,602) (3,565)
Corp/Elim | Europe        
Disaggregation of Revenue [Line Items]        
Revenue (1,655) (701) (3,116) (2,693)
Corp/Elim | Asia-Pacific        
Disaggregation of Revenue [Line Items]        
Revenue (400) (60) (612) (481)
Corp/Elim | Oil & Gas        
Disaggregation of Revenue [Line Items]        
Revenue 0 0 0 0
Corp/Elim | Aerospace & Defense        
Disaggregation of Revenue [Line Items]        
Revenue 0 0 0 0
Corp/Elim | Industrials        
Disaggregation of Revenue [Line Items]        
Revenue 0 0 0 0
Corp/Elim | Power Generation & Transmission        
Disaggregation of Revenue [Line Items]        
Revenue 0 0 0 0
Corp/Elim | Other Process Industries        
Disaggregation of Revenue [Line Items]        
Revenue 0 0 0 0
Corp/Elim | Infrastructure, Research & Engineering        
Disaggregation of Revenue [Line Items]        
Revenue 0 0 0 0
Corp/Elim | Petrochemical        
Disaggregation of Revenue [Line Items]        
Revenue 0 0 0 0
Corp/Elim | Other        
Disaggregation of Revenue [Line Items]        
Revenue $ (4,089) $ (3,269) $ (10,511) $ (8,457)