XML 106 R91.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock-Based Compensation - Schedule of Stock Options (Details) - USD ($)
$ / shares in Units, $ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Share-Based Payment Arrangement [Abstract]      
Contractual term 10 years    
Total Stock Options      
Options outstanding, beginning balance (in shares) 874,749    
Options granted (in shares) 332,368    
Options exercised (in shares) (214,619) (397,822) (318,662)
Options cancelled and forfeited (in shares) (35,326)    
Options outstanding, ending balance (in shares) 957,172 874,749  
Exercisable (in shares) 466,039    
Weighted- Average Exercise Price      
Options outstanding, beginning balance (in dollars per share) $ 30.37    
Options granted (in dollars per share) 76.41    
Options exercised (in dollars per share) 19.02    
Options cancelled and forfeited (in dollars per share) 51.30    
Options outstanding, ending balance (in dollars per share) 48.13 $ 30.37  
Exercisable (in dollars per share) $ 26.99    
Weighted- Average Remaining Contractual Term (Years)      
Options outstanding, weighted average remaining contractual term (in years) 6 years 8 months 12 days 5 years 9 months 18 days  
Exercisable, weighted average remaining contractual term (in years) 4 years 4 months 24 days    
Options outstanding, aggregate intrinsic value $ 18,283,464 $ 19,058,224  
Exercisable, aggregate intrinsic value $ 16,462,767