v3.26.1
Revenue Recognition (Tables)
6 Months Ended
Jun. 30, 2026
Revenue from Contract with Customer [Abstract]  
Schedule of Revenue Disaggregated by Product
The following table presents the Company’s revenue disaggregated by product type (in thousands):
Three Months Ended June 30,Six Months Ended June 30,
2026202520262025
System solutions$114,175 $84,412 $224,992 $141,806 
Components49,197 26,429 78,937 49,396 
Total revenue$163,372 $110,841 $303,929 $191,202 
Schedule of Contract Balances
The Company’s contract balances consist of the following (in thousands):
Location on the Condensed Consolidated Balance SheetsJune 30,
2026
December 31, 2025
Billed accounts receivableAccounts receivable, net$119,876 $119,521 
RetainageAccounts receivable, net$14,946 $9,272 
Contract liabilitiesAccrued expenses and other$6,361 $1,811 
Unbilled receivablesUnbilled receivables$22,526 $22,133 
Deferred revenueDeferred revenue$55,245 $37,031 
Accrued rebatesAccrued expenses and other$7,701 $4,851