Quarterly report [Sections 13 or 15(d)]

Revenue - Narrative (Details)

v3.25.1
Revenue - Narrative (Details)
shares in Thousands, $ in Millions
Mar. 31, 2025
USD ($)
shares
Disaggregation of Revenue [Line Items]  
Remaining performance obligation $ 366.1
Number of shares (in shares) | shares 2,050
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-04-01  
Disaggregation of Revenue [Line Items]  
Remaining performance obligation $ 61.1
Expected remaining time 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2026-01-01  
Disaggregation of Revenue [Line Items]  
Remaining performance obligation $ 63.9
Expected remaining time 2 years
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-01-01  
Disaggregation of Revenue [Line Items]  
Remaining performance obligation $ 241.1
Expected remaining time