XML 85 R75.htm IDEA: XBRL DOCUMENT v3.25.0.1
Revenue Recognition - Disaggregation of Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 12 Months Ended
Dec. 31, 2024
Sep. 30, 2024
Jun. 30, 2024
Mar. 31, 2024
Dec. 31, 2023
Sep. 30, 2023
Jun. 30, 2023
Mar. 31, 2023
Dec. 31, 2024
Dec. 31, 2023
Dec. 31, 2022
Disaggregation of Revenue [Line Items]                      
Revenues $ 205,182 $ 208,438 $ 216,658 $ 196,280 $ 182,440 $ 186,193 $ 175,858 $ 159,101 $ 826,558 $ 703,592 $ 565,568
Revenue, remaining performance obligation, percentage                 100.00% 100.00%  
Revenue recognized over time                      
Disaggregation of Revenue [Line Items]                      
Revenues                 $ 58,784 $ 44,317  
Revenue recognized over time | Service Concentration Risk | Revenue Benchmark                      
Disaggregation of Revenue [Line Items]                      
Revenue, remaining performance obligation, percentage                 7.10% 6.30%  
Revenue recognized at a point in time                      
Disaggregation of Revenue [Line Items]                      
Revenues                 $ 767,774 $ 659,275  
Revenue recognized at a point in time | Product Concentration Risk | Revenue Benchmark                      
Disaggregation of Revenue [Line Items]                      
Revenue, remaining performance obligation, percentage                 92.90% 93.70%