Earnings Per Share - Computation of Basic Earnings Per Share and Diluted Earnings Per Share (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 12 Months Ended
Dec. 31, 2019
Sep. 30, 2019
Jun. 30, 2019
Mar. 31, 2019
Dec. 31, 2018
Sep. 30, 2018
Jun. 30, 2018
Mar. 31, 2018
Dec. 31, 2019
Dec. 31, 2018
Dec. 31, 2017
Computation of basic and diluted earnings per share                      
Net income                 $ 92,491 $ 63,704 $ 25,826
Shares:                      
Basic weighted average common shares outstanding                 67,616 66,295 54,931
Assumed conversion of dilutive instruments                 5,850 4,216 4,646
Diluted weighted average common shares outstanding                 73,466 70,511 59,577
Earnings per share                      
Basic: $ 0.56 $ 0.38 $ 0.21 $ 0.22 $ 0.21 $ 0.30 $ 0.27 $ 0.17 $ 1.37 $ 0.96 $ 0.47
Diluted: $ 0.51 $ 0.35 $ 0.20 $ 0.20 $ 0.19 $ 0.29 $ 0.26 $ 0.16 $ 1.26 $ 0.90 $ 0.43