v3.26.1
Revenue Recognition - Performance Obligation (Details)
$ in Thousands
Jun. 30, 2026
USD ($)
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligations $ 1,179,946
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2026-07-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligations $ 380,504
Remaining performance obligation, expected timing of satisfaction, period 6 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligations $ 474,291
Remaining performance obligation, expected timing of satisfaction, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2028-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligations $ 216,417
Remaining performance obligation, expected timing of satisfaction, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2029-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligations $ 65,854
Remaining performance obligation, expected timing of satisfaction, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2030-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligations $ 42,880
Remaining performance obligation, expected timing of satisfaction, period