XML 48 R30.htm IDEA: XBRL DOCUMENT v3.20.2
Revenue - Narrative (Details) - USD ($)
3 Months Ended 9 Months Ended
Sep. 30, 2020
Sep. 30, 2019
Sep. 30, 2020
Sep. 30, 2019
Revenue from Contract with Customer [Abstract]        
Percentage of revenues derived from services provided     90.00%  
Percentage of revenues derived from other sources     10.00%  
Net increase to revenue for adjustments to fixed price contracts $ 400,000 $ 400,000 $ 900,000 $ 1,300,000
Remaining performance obligations 286,400,000   286,400,000  
Remaining performance obligation expected to be recognized in next 12 months, percentage 0.85   0.85  
Disaggregation of Revenue [Line Items]        
Remaining performance obligations 286,400,000   286,400,000  
Contract with Customer, Asset, Cumulative Catch-up Adjustment to Revenue, Change in Estimate of Transaction Price 400,000 400,000 900,000 1,300,000
Revenue recognized related to contract liabilities $ 1,900,000 $ 1,500,000 $ 13,300,000 $ 17,200,000
Minimum        
Disaggregation of Revenue [Line Items]        
Bill and collection period     60 days  
Maximum        
Disaggregation of Revenue [Line Items]        
Bill and collection period     120 days