Nature of Business and Significant Accounting Policies - Contract Liabilities and Deferred Revenue (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2021
Dec. 31, 2020
Dec. 31, 2019
Disaggregation of Revenue [Line Items]      
Amortization of contract liabilities $ 5,616 $ 5,678 $ 5,749
Deferred revenue 11,655 9,907  
Cost of revenues      
Disaggregation of Revenue [Line Items]      
Amortization of contract liabilities 1,700    
General and administrative      
Disaggregation of Revenue [Line Items]      
Amortization of contract liabilities 3,900   4,100
Contract liabilities      
Disaggregation of Revenue [Line Items]      
Amortization of contract liabilities 5,600 5,700  
Deferred revenue $ 15,500 $ 6,800 $ 6,800