v3.25.2
Fair Value Measurement - Summary of Carrying Amounts and Fair Values of Long-Term Debt Obligations (Details) - USD ($)
$ in Thousands
Jun. 30, 2025
Dec. 31, 2024
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Carrying Amount $ 118,150 $ 135,500
Current portion of long-term debt 946 8,438
Long-term debt 117,204 127,062
Carrying Amount | Line of Credit | Revolving credit facility    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Carrying Amount 30,300 50,500
Fair Value | Line of Credit | Revolving credit facility    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 30,300 50,500
Term Loan due 2030 | Carrying Amount | Line of Credit    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Carrying Amount 87,850 0
Term Loan due 2030 | Fair Value | Line of Credit    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 87,850 0
Prior Term Loan due 2027 | Carrying Amount | Line of Credit    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Carrying Amount 0 85,000
Prior Term Loan due 2027 | Fair Value | Line of Credit    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 0 84,363
Term Loan Facility | Line of Credit    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Current portion of long-term debt   8,400
Long-term debt $ 86,900 $ 76,600