XML 64 R52.htm IDEA: XBRL DOCUMENT v3.26.1
Disaggregation of Revenue and Contract Balances - Summary of Disaggregated Revenues by Contract Type (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2026
Mar. 31, 2025
Disaggregation Of Revenue [Line Items]    
Gross Contract Revenue $ 126,479 $ 112,931
Gross contract revenue (in percent) 100.00% 100.00%
Fixed fee    
Disaggregation Of Revenue [Line Items]    
Gross Contract Revenue $ 116,142 $ 102,605
Gross contract revenue (in percent) 91.80% 90.90%
Time-and-materials    
Disaggregation Of Revenue [Line Items]    
Gross Contract Revenue $ 10,337 $ 10,326
Gross contract revenue (in percent) 8.20% 9.10%