v3.25.2
Revenues - Narrative (Details)
6 Months Ended
Jun. 30, 2025
USD ($)
segment
Jun. 30, 2024
USD ($)
Dec. 31, 2024
USD ($)
Disaggregation of Revenue [Line Items]      
Number of operating segments | segment 1    
Amounts due in advance of satisfying the Company's performance obligations $ 426,600,000    
Decrease from revenue recognized from current year invoices (277,800,000)    
Revenue recognized that was included in the deferred revenue balance in prior year 107,100,000    
Increase from netting of contract assets and liabilities on contract by contract basis (2,000,000.0)    
Revenue from remaining performance obligations 2,360,000,000    
Provision for expected credit losses, contract balances 0 $ 0  
Writeoffs, contract balances 0 0  
Allowance for credit loss, contract balances 40,000.00   $ 20,000.00
Provision for expected credit losses, accounts receivable 0 0  
Writeoffs, accounts receivable 0 $ 0  
Allowance reserve $ 400,000   $ 300,000
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-07-01      
Disaggregation of Revenue [Line Items]      
Remaining performance obligation, percentage 54.00%    
Performance obligations expected to be satisfied, expected timing 24 months    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-07-01      
Disaggregation of Revenue [Line Items]      
Remaining performance obligation, percentage 34.00%    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-07-01 | Minimum      
Disaggregation of Revenue [Line Items]      
Performance obligations expected to be satisfied, expected timing 25 months    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-07-01 | Maximum      
Disaggregation of Revenue [Line Items]      
Performance obligations expected to be satisfied, expected timing 48 months