Equity awards (Details) | 6 Months Ended | |
Jun. 30, 2016USD ($)Plan$ / sharesshares | Jul. 14, 2016USD ($) |
Equity awards [Abstract] | | |
Number of stock-based employee compensation plans | Plan | 2 | |
Aggregate intrinsic value [Abstract] | | |
Stock Repurchase Program, Authorized Amount | $ | | $ 50,000,000 |
Stock Options Member [Member] | | |
Aggregate Intrinsic Value [Abstract] | | |
Outstanding, beginning of period | $ | $ 52,119,607 | |
Outstanding, end of period | $ | 10,318,273 | |
Exercisable, end of period | $ | $ 9,850,228 | |
2006 Plan [Member] | Restricted Stock Units (RSUs) [Member] | | |
Restricted stock unit award activity [Roll Forward] | | |
Outstanding, beginning of period (in shares) | 889,004 | |
Granted (in shares) | 470,911 | |
Vested (in shares) | (404,585) | |
Forfeited (in shares) | (26,103) | |
Outstanding, end of period (in shares) | 929,227 | |
Weighted-Average Grant Price [Roll Forward] | | |
Outstanding, beginning of period (in dollars per share) | $ / shares | $ 26.86 | |
Granted (in dollars per share) | $ / shares | 34.53 | |
Vested (in dollars per share) | $ / shares | 24.77 | |
Forfeited (in dollars per share) | $ / shares | 30.95 | |
Outstanding, end of period (in dollars per share) | $ / shares | $ 31.53 | |
Aggregate intrinsic value [Abstract] | | |
Outstanding, beginning of period | $ | $ 35,569,048 | |
Outstanding, end of period | $ | $ 26,129,863 | |
2006 Plan [Member] | Stock Options Member [Member] | | |
Options outstanding [Roll Forward] | | |
Outstanding, beginning of period (in shares) | 2,964,237 | |
Granted (in shares) | 391,158 | |
Exercised (in shares) | (700,605) | |
Forfeited (in shares) | (24,467) | |
Outstanding, end of period (in shares) | 2,630,323 | |
Exercisable, end of period (in shares) | 1,479,516 | |
Weighted-Average Exercise Price [Roll Forward] | | |
Outstanding, beginning of period (in dollars per share) | $ / shares | $ 22.73 | |
Granted (in dollars per share) | $ / shares | 33.83 | |
Exercised (in dollars per share) | $ / shares | 19.32 | |
Forfeited (in dollars per share) | $ / shares | 26.76 | |
Outstanding, end of period (in dollars per share) | $ / shares | 25.25 | |
Exercisable, end of period (in dollars per share) | $ / shares | $ 21.55 | |
Aggregate intrinsic value [Abstract] | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Additional Shares Authorized | 3,800,000 | |
2004 Plan [Member] | Stock Options Member [Member] | | |
Options outstanding [Roll Forward] | | |
Outstanding, beginning of period (in shares) | 29,699 | |
Granted (in shares) | 0 | |
Exercised (in shares) | (29,699) | |
Forfeited (in shares) | 0 | |
Outstanding, end of period (in shares) | 0 | |
Exercisable, end of period (in shares) | 0 | |
Weighted-Average Exercise Price [Roll Forward] | | |
Outstanding, beginning of period (in dollars per share) | $ / shares | $ 10.28 | |
Granted (in dollars per share) | $ / shares | 0 | |
Exercised (in dollars per share) | $ / shares | 10.28 | |
Forfeited (in dollars per share) | $ / shares | 0 | |
Outstanding, end of period (in dollars per share) | $ / shares | 0 | |
Exercisable, end of period (in dollars per share) | $ / shares | $ 0 | |