v3.26.1
Revenue (Tables)
6 Months Ended
Jun. 30, 2026
Revenue from Contract with Customer [Abstract]  
Schedule of Disaggregation of Revenue
The following tables represent a disaggregation of revenue from contracts with customers for the periods presented (in thousands):
    
Sales by End Market
Three Months Ended June 30,Six Months Ended
June 30,
2026202520262025
Aerospace and Defense57,298 40,695 112,425 73,401 
Industrial12,042 9,746 24,067 18,602 
Microfabrication13,251 11,294 26,280 21,400 
$82,591 $61,735 $162,772 $113,403 
Sales by Geography

Three Months Ended June 30,Six Months Ended
June 30,
2026202520262025
North America$59,498 $45,171 $118,753 $81,256 
Asia Pacific9,186 8,662 21,058 17,790 
EMEA(1)
13,907 7,902 22,961 14,357 
$82,591 $61,735 $162,772 $113,403 
(1) EMEA consists of Europe, the Middle East, and Africa.

Sales by Timing of Revenue

Three Months Ended June 30,Six Months Ended
June 30,
2026202520262025
Point in time$57,969 $40,774 $114,977 $76,454 
Over time24,622 20,961 47,795 36,949 
$82,591 $61,735 $162,772 $113,403 
Schedule of Contract Assets and Liabilities
Our contract assets and liabilities were as follows (in thousands):
Balance Sheet ClassificationAs of
June 30, 2026December 31, 2025
Contract assetsPrepaid expenses and
other current assets
$15,804 $6,188 
Contract liabilitiesDeferred revenues and other long-term liabilities16,254 5,566