XML 162 R86.htm IDEA: XBRL DOCUMENT v3.24.0.1
Employee Stock Purchase Plan, Stock Options and Warrants - Stock Option Activity (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Share-based Payment Arrangement [Abstract]      
Total intrinsic value of stock options exercised $ 23,300 $ 27,110 $ 36,086
Cash received from stock option exercises 14,503 18,952 20,194
Excess tax benefit from the exercise of stock options $ 3,001 $ 3,423 $ 5,571
Number of Shares      
Beginning balance (in shares) 3,077    
Granted (in shares) 444    
Exercised (in shares) (606)    
Forfeited/expired (in shares) (47)    
Outstanding at December 31 (in shares) 2,868 3,077  
Exercisable (in shares) 1,714    
Ending vested and expected to vest (in shares) 2,868    
Weighted Average Exercise Price      
Beginning balance (in dollars per share) $ 49.62    
Granted (in dollars per share) 72.36    
Exercised (in dollars per share) 33.48    
Forfeited/expired (in dollars per share) 60.08    
Outstanding at December 31 (in dollars per share) 56.39 $ 49.62  
Exercisable (in dollars per share) 50.73    
Ending vested and expected to vest (in dollars per share) $ 56.39    
Outstanding, remaining contractual term 3 years 5 months 8 days    
Exercisable, remaining contractual term 2 years 4 months 24 days    
Ending vested and expected to vest, remaining contractual term 3 years 5 months 8 days    
Outstanding, intrinsic value $ 56,333    
Exercisable, intrinsic value 43,234    
Ending vested and expected to vest, intrinsic value $ 56,333