XML 37 R30.htm IDEA: XBRL DOCUMENT v3.25.3
Revenue from Contracts with Customers - Summary of Disaggregation of Our Revenues by Contract Type and Operating Segment (Detail) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2025
Sep. 30, 2024
Sep. 30, 2025
Sep. 30, 2024
Disaggregation of Revenue [Line Items]        
Revenues by contract type and operating segment $ 48,496 $ 51,839 $ 145,910 $ 148,196
Data and Analytics Services [Member]        
Disaggregation of Revenue [Line Items]        
Revenues by contract type and operating segment 7,910 9,398 25,459 26,341
Data and Analytics Services [Member] | Time-and-Material Contract [Member]        
Disaggregation of Revenue [Line Items]        
Revenues by contract type and operating segment 7,715 6,123 21,190 18,417
Data and Analytics Services [Member] | Fixed-Price Contract [Member]        
Disaggregation of Revenue [Line Items]        
Revenues by contract type and operating segment 195 3,275 4,269 7,924
IT Staffing Services [Member]        
Disaggregation of Revenue [Line Items]        
Revenues by contract type and operating segment 40,586 42,441 120,451 121,855
IT Staffing Services [Member] | Time-and-Material Contract [Member]        
Disaggregation of Revenue [Line Items]        
Revenues by contract type and operating segment 40,586 42,374 120,451 121,788
IT Staffing Services [Member] | Fixed-Price Contract [Member]        
Disaggregation of Revenue [Line Items]        
Revenues by contract type and operating segment $ 0 $ 67 $ 0 $ 67