Quarterly report pursuant to Section 13 or 15(d)

Revenue and Cost of Revenues - Obligation (Details)

v3.21.1
Revenue and Cost of Revenues - Obligation (Details)
$ in Thousands
Mar. 31, 2021
USD ($)
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 598,068
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-04-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 193,004
Remaining Performance Obligations  
Revenue recognition period 9 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-01-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 187,479
Remaining Performance Obligations  
Revenue recognition period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-01-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 113,545
Remaining Performance Obligations  
Revenue recognition period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-01-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 58,523
Remaining Performance Obligations  
Revenue recognition period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-01-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 31,985
Remaining Performance Obligations  
Revenue recognition period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2026-01-01  
Revenue from Contract with Customer [Abstract]  
Remaining performance obligations $ 13,532
Remaining Performance Obligations  
Revenue recognition period