Leases - Minimum lease payments (Details) - USD ($) $ in Thousands |
Dec. 31, 2019 |
Dec. 31, 2018 |
|---|---|---|
| Minimum lease payments | ||
| 2020 | $ 10,540 | |
| 2021 | 7,574 | |
| 2022 | 7,186 | |
| 2023 | 7,390 | |
| 2024 | 7,601 | |
| Thereafter | 22,058 | |
| Payments due | 62,349 | |
| Less: imputed interest | (14,942) | |
| Operating lease liability | $ 47,407 | |
| Operating Leases, Future Minimum Payments Due, Fiscal Year Maturity [Abstract] | ||
| 2019 | $ 5,458 | |
| 2020 | 7,141 | |
| 2021 | 7,168 | |
| 2022 | 6,820 | |
| 2023 | 7,024 | |
| Thereafter | 27,777 | |
| Total | $ 61,388 |