Leases - Minimum lease payments (Details) - USD ($) $ in Thousands |
Jun. 30, 2019 |
Dec. 31, 2018 |
|---|---|---|
| Minimum lease payments | ||
| 2019 (six months ending December 31) | $ 5,370 | |
| 2020 | 8,123 | |
| 2021 | 7,245 | |
| 2022 | 6,880 | |
| 2023 | 7,085 | |
| 2024 | 7,296 | |
| Thereafter | 20,668 | |
| Payments due | 62,667 | |
| Less: imputed interest | (8,708) | |
| Operating lease liability | 53,959 | |
| Minimum lease payments for expansion space | $ 25,700 | |
| Operating Leases, Future Minimum Payments, Due Thereafter | $ 27,777 | |
| 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 |