Commitments and Contingencies - Narrative (Details)
$ in Thousands
12 Months Ended
May 12, 2017
earn_out_payment
Dec. 31, 2021
USD ($)
$ / Person
Dec. 31, 2020
USD ($)
Commitments and Contingencies [Line Items]      
Number of earnout payments | earn_out_payment 2    
Amount of self-insured health Insurance, aggregate liability based on participants   $ 45  
Self-insured health insurance, liability   498 $ 345
Health insurance expenses, claims of self Insured plan   2,500 1,800
India      
Commitments and Contingencies [Line Items]      
Self-insured health insurance, liability   $ 3,800 $ 4,300
Maximum      
Commitments and Contingencies [Line Items]      
Self-insured health insurance limit, per person | $ / Person   150,000  
Self-insured health Insurance, aggregate liability based on participants and claims (percentage)   125.00%  
Self-insured health insurance, estimated cumulative liability for annual contract   $ 4,600  
Maximum | India      
Commitments and Contingencies [Line Items]      
Self-insured health insurance limit, per person | $ / Person   28,000