XML 80 R59.htm IDEA: XBRL DOCUMENT v3.25.0.1
Revenue - Narrative (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2024
Dec. 31, 2023
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]    
Future performance obligation $ 186,829  
Revenue recognized during the period $ 182,846 $ 224,355
Recognized at a point in time    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]    
Remaining performance obligation (in percent) 95.00%  
Recognized over time    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]    
Remaining performance obligation (in percent) 5.00%  
Minimum    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]    
General range of payment terms 30 days  
Maximum    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]    
General range of payment terms 90 days  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-01-01    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]    
Remaining performance obligation (in percent) 53.60%  
Expected timing of performance obligation satisfaction 12 months  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2026-01-01    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]    
Remaining performance obligation (in percent) 22.00%  
Expected timing of performance obligation satisfaction