v3.26.1
Net Income Per Share - Reconciliation of Numerators and Denominators Used in Basic and Diluted Per Share Computations (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2026
Jun. 30, 2025
Jun. 30, 2026
Jun. 30, 2025
Common Class A [Member]        
Numerator:        
Allocation of net income (in Dollars) $ 19,211 $ 14,476 $ 29,123 $ 36,066
Denominator:        
Weighted-average shares outstanding (in Shares) 31,473 30,678 31,451 30,401
Basic net income per share (in Dollars per share) $ 0.61 $ 0.47 $ 0.93 $ 1.19
Numerator:        
Allocation of net income (in Dollars) $ 19,211 $ 14,476 $ 29,123 $ 36,066
Denominator:        
Number of shares used in basic computation (in Shares) 31,473 30,678 31,451 30,401
Weighted-average shares effect of dilutive securities:        
Director and employee stock options (in Shares) 305 659 346 484
Unvested restricted stock units (in Shares) 113 0 113 0
Number of shares used in diluted computation (in Shares) 31,891 31,337 31,910 30,885
Diluted net income per share (in Dollars per share) $ 0.6 $ 0.46 $ 0.91 $ 1.17
Common Class B [Member]        
Numerator:        
Allocation of net income (in Dollars) $ 3,095 $ 2,390 $ 4,693 $ 6,005
Denominator:        
Weighted-average shares outstanding (in Shares) 5,577 5,577 5,577 5,577
Basic net income per share (in Dollars per share) $ 0.55 $ 0.43 $ 0.84 $ 1.08
Numerator:        
Allocation of net income (in Dollars) $ 3,095 $ 2,390 $ 4,693 $ 6,005
Denominator:        
Number of shares used in basic computation (in Shares) 5,577 5,577 5,577 5,577
Weighted-average shares effect of dilutive securities:        
Director and employee stock options (in Shares) 0 0 0 0
Unvested restricted stock units (in Shares) 0 0 0 0
Number of shares used in diluted computation (in Shares) 5,577 5,577 5,577 5,577
Diluted net income per share (in Dollars per share) $ 0.55 $ 0.43 $ 0.84 $ 1.08