XML 50 R40.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Revenue - Narrative (Details) - USD ($)
$ in Millions
6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]    
Revenue recognized that was included in contract liability balance at the beginning of the year $ 4.8 $ 4.6
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-07-01    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]    
Revenue, remaining performance obligation, expected timing of satisfaction period 1 year