v3.24.1.u1
Revenue Recognition - Additional Details (Details)
$ in Millions
3 Months Ended
Mar. 31, 2024
USD ($)
segment
Mar. 31, 2023
USD ($)
Disaggregation of Revenue [Line Items]    
Number of reportable segments | segment 2  
Revenue recognized from advance billings on contracts $ 42.8 $ 39.5
Revenue, remaining performance obligation, amount $ 3,635.5  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-04-01    
Disaggregation of Revenue [Line Items]    
Revenue, remaining performance obligation, percentage 80.00%  
Remaining performance obligation, expected timing of satisfaction, period 9 months