v3.26.1
Earnings/(loss) per share (Tables)
6 Months Ended
Jun. 30, 2026
Earnings Per Share [Abstract]  
Schedule of Computation of Basic and Diluted Earnings Per Share
The following table sets forth the computation of basic and diluted earnings per share as follows:
Three Months Ended
June 30,
Six Months Ended
June 30,
2026202520262025
(in thousands, except per share data)
Numerator for basic and diluted income per share
Net income
$2,852 $5,273 $1,379 $8,185 
Denominator:
Weighted-average shares outstanding – basic
82,28384,57883,47584,352
Net effect of dilutive stock options and restricted stock units741 1,869 978 2,814 
Weighted-average shares outstanding – diluted83,024 86,447 84,453 87,166 
 Income per share
Basic$0.03 $0.06 $0.02 $0.10 
Diluted$0.03 $0.06 $0.02 $0.09 
Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share
The following table represents the number of share equivalents outstanding during the period that were excluded from the calculation of diluted net income per share attributable to common stockholders because including them would have had an anti-dilutive effect.
Three Months Ended
June 30,
Six Months Ended
June 30,
2026202520262025
(in thousands)
Stock options to purchase common stock2,419 1,632 2,453 510 
Restricted stock units1,661 341 1,629 195 
Performance stock units872 604 867 586 
Total4,952 2,577 4,949 1,291