XML 84 R54.htm IDEA: XBRL DOCUMENT v3.24.0.1
Revenue Recognition - Remaining Performance Obligation (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Performance obligations $ 11,454 $ 13,584 $ 20,046
Government      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Performance obligations $ 325,986 $ 333,900  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-01-01      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Performance obligations, period 60 months    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-01-01 | Government      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Performance obligations $ 179,568    
Performance obligations, period 1 year    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-01-01 | Government      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Performance obligations $ 105,609    
Performance obligations, period 1 year    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2026-01-01 | Government      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Performance obligations $ 19,508    
Performance obligations, period 1 year    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-01-01 | Government      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Performance obligations $ 21,301    
Performance obligations, period