Equity Compensation (Tables)
   | 
12 Months Ended | 
Dec. 31, 2018  | 
| Disclosure of Compensation Related Costs, Share-based Payments [Abstract] | 
 
 | 
| Compensation Expense Information Based on Fair Value of Stock Options and RSUs | 
 The following table provides compensation expense information based on the fair value of stock options and RSU's for the years ended December 31 as follows: 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
| (In thousands) | 
2018 | 
 | 
2017 | 
 | 
2016 | 
 
| Equity-based Compensation Expense | 
$ | 
3,098  | 
 | 
$ | 
2,598  | 
 | 
$ | 
2,281  | 
 
| Tax Benefit | 
(179) | 
 | 
(140) | 
 | 
(145) | 
 
| Equity-based Compensation Expense, Net of Tax | 
$ | 
2,919  | 
 | 
$ | 
2,458  | 
 | 
$ | 
2,136  | 
 
  
 | 
| Summary of Weighted Average Fair Value of Options Granted | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
 | 
2018 | 
 | 
2017 | 
 | 
2016 | 
 
| Weighted Average Fair Value of the Options Granted | 
$ | 
14.64  | 
 | 
$ | 
15.30  | 
 | 
$ | 
14.65  | 
 
 
 | 
| Summary of Weighted-Average Assumptions | 
 The weighted average fair value for these options was estimated at the date of grant using a Black-Scholes option pricing model with the following weighted-average assumptions: 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
 | 
2018 | 
 | 
2017 | 
 | 
2016 | 
 
| Risk-free Interest Rate | 
2.63% – 2.87% | 
 | 
2.05% – 2.36% | 
 | 
1.08% – 2.34% | 
 
| Dividend Yield | 
—%  | 
  | 
 | 
—%  | 
  | 
 | 
—%  | 
  | 
 
| Volatility Factor | 
0.39 – 0.39 | 
 | 
0.40 – 0.41 | 
 | 
0.40 – 0.45 | 
 
| Expected Life in Years | 
5.0 – 8.0 | 
 | 
5.0 – 8.0 | 
 | 
4.0 – 8.0 | 
 
  
 | 
| Summary of Company's Stock Option Activity and Related Information | 
 A summary of the Company’s stock option activity and related information for the years ended December 31 is as follows: 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
 | 
2018 | 
 | 
 | 
 | 
 | 
 | 
2017 | 
 | 
 | 
 | 
 | 
 | 
2016 | 
 | 
 | 
 | 
 | 
 
(Aggregate intrinsic value in thousands) | 
Options | 
 | 
 Weighted 
Average 
Exercise 
Price 
 | 
 | 
 Aggregate 
Intrinsic 
Value 
 | 
 | 
Options | 
 | 
Weighted Average Exercise Price | 
 | 
Aggregate Intrinsic Value | 
 | 
Options | 
 | 
Weighted Average Exercise Price | 
 | 
Aggregate Intrinsic Value | 
 
| Outstanding at January 1 | 
1,506,604  | 
 | 
$ | 
14.65  | 
 | 
$ | 
23,801  | 
 | 
1,539,017  | 
 | 
$ | 
12.91  | 
 | 
$ | 
35,630  | 
 | 
1,661,700  | 
 | 
$ | 
10.96  | 
 | 
$ | 
30,675  | 
 
| Options Granted | 
120,270  | 
 | 
$ | 
32.33  | 
 | 
$ | 
(226) | 
 | 
118,612  | 
 | 
$ | 
33.40  | 
 | 
$ | 
315  | 
 | 
120,635  | 
 | 
$ | 
29.82  | 
 | 
$ | 
(48) | 
 
| Options Exercised | 
(274,941) | 
 | 
$ | 
3.89  | 
 | 
$ | 
(7,303) | 
 | 
(131,904) | 
 | 
$ | 
9.77  | 
 | 
$ | 
(3,467) | 
 | 
(217,083) | 
 | 
$ | 
6.26  | 
 | 
$ | 
(5,029) | 
 
| Options Forfeited | 
(24,014) | 
 | 
$ | 
34.13  | 
 | 
$ | 
88  | 
 | 
(19,121) | 
 | 
$ | 
24.27  | 
 | 
$ | 
(225) | 
 | 
(26,235) | 
 | 
$ | 
22.57  | 
 | 
$ | 
(180) | 
 
| Outstanding at December 31 | 
1,327,919  | 
 | 
$ | 
18.13  | 
 | 
$ | 
16,360  | 
 | 
1,506,604  | 
 | 
$ | 
14.65  | 
 | 
$ | 
32,253  | 
 | 
1,539,017  | 
 | 
$ | 
12.91  | 
 | 
$ | 
25,418  | 
 
| Exercisable at December 31 | 
1,043,596  | 
 | 
$ | 
14.27  | 
 | 
$ | 
16,885  | 
 | 
1,252,315  | 
 | 
$ | 
11.17  | 
 | 
$ | 
31,177  | 
 | 
1,255,295  | 
 | 
$ | 
9.59  | 
 | 
$ | 
24,898  | 
 
  
 | 
| Summary of Weighted Average Exercise Prices and Contractual Lives for Outstanding and Exercisable Stock Options | 
 The following is a summary of weighted average exercise prices and contractual lives for outstanding and exercisable stock options as of December 31, 2018: 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
|   | 
Outstanding | 
 | 
 | 
 | 
 | 
 | 
Exercisable | 
 | 
 | 
 | 
 | 
 
| Exercise Price Range | 
Shares | 
 | 
 Weighted Average 
Remaining Life 
in Years 
 | 
 | 
 Weighted  
Average 
Exercise Price 
 | 
 | 
Shares | 
 | 
 Weighted Average 
Remaining Life 
in Years 
 | 
 | 
 Weighted 
Average 
Exercise Price 
 | 
 
| $ 2.67 – $ 3.19 | 
309,199  | 
 | 
0.9 | 
 | 
$ | 
2.86  | 
 | 
309,199  | 
 | 
0.9 | 
 | 
$ | 
2.86  | 
 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
| $ 7.68 – $ 13.63 | 
410,646  | 
 | 
3.0 | 
 | 
$ | 
10.04  | 
 | 
410,646  | 
 | 
3.0 | 
 | 
$ | 
10.04  | 
 
| $ 22.69 – $ 35.82 | 
589,821  | 
 | 
7.6 | 
 | 
$ | 
30.90  | 
 | 
305,498  | 
 | 
6.6 | 
 | 
$ | 
29.59  | 
 
| $ 45.89 – $ 45.89 | 
18,253  | 
 | 
6.2 | 
 | 
$ | 
45.89  | 
 | 
18,253  | 
 | 
6.2 | 
 | 
$ | 
45.89  | 
 
 | 
1,327,919  | 
 | 
4.6 | 
 | 
$ | 
18.13  | 
 | 
1,043,596  | 
 | 
3.5 | 
 | 
$ | 
14.27  | 
 
  
 | 
| Fair Value for Options Granted under Employee Stock Purchase Plan | 
 The fair value for the options granted under the Employee Stock Purchase Plan was estimated at the date of grant using a Black-Scholes option pricing model with the following weighted-average assumptions: 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
 | 
2018 | 
 | 
 | 
2017 | 
 | 
 | 
2016 | 
 | 
 
| Risk-free Interest Rate | 
2.60  | 
% | 
 | 
 | 
1.31  | 
% | 
 | 
 | 
0.63  | 
% | 
 | 
 
| Dividend Yield | 
—  | 
% | 
 | 
 | 
—  | 
% | 
 | 
 | 
—  | 
% | 
 | 
 
| Volatility Factor | 
0.33  | 
  | 
 | 
 | 
0.26  | 
  | 
 | 
 | 
0.45  | 
  | 
 | 
 
| Expected Life in Years | 
1.0 | 
 | 
 | 
1.0 | 
 | 
 | 
1.0 | 
 | 
 
  
 |