XML 39 R29.htm IDEA: XBRL DOCUMENT v3.21.1
Revenue Recognition - Disaggregation of Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2021
Mar. 31, 2020
Disaggregation of Revenue [Line Items]    
Revenues $ 117,842 $ 108,508
Revenue, remaining performance obligation, percentage 100.00% 100.00%
Revenue recognized over time    
Disaggregation of Revenue [Line Items]    
Revenues $ 6,461 $ 4,804
Revenue, remaining performance obligation, percentage 5.50% 4.40%
Revenue recognized at a point in time    
Disaggregation of Revenue [Line Items]    
Revenues $ 111,381 $ 103,704
Revenue, remaining performance obligation, percentage 94.50% 95.60%
United States    
Disaggregation of Revenue [Line Items]    
Revenues $ 94,266 $ 94,492
Asia    
Disaggregation of Revenue [Line Items]    
Revenues 4,789 1,548
Canada    
Disaggregation of Revenue [Line Items]    
Revenues 2,613 3,136
Europe    
Disaggregation of Revenue [Line Items]    
Revenues 11,747 4,775
Mexico    
Disaggregation of Revenue [Line Items]    
Revenues 1,885 1,970
Middle East    
Disaggregation of Revenue [Line Items]    
Revenues 2,176 1,537
Other    
Disaggregation of Revenue [Line Items]    
Revenues $ 366 $ 1,050