| Leases - Effect of adoption (Details) | 12 Months Ended | 
|---|---|
| Dec. 31, 2023 | |
| Leases | 听 | 
| Operating lease, existence of option to extend | true | 
| Finance lease, existence of option to extend | true | 
| Operating lease, existence of option to terminate | true | 
| Finance lease, existence of option to terminate | true | 
| Minimum | 听 | 
| Leases | 听 | 
| Operating lease, remaining lease term | 1 year | 
| Finance lease, remaining lease term | 1 year | 
| Maximum | 听 | 
| Leases | 听 | 
| Operating lease, remaining lease term | 19 years | 
| Finance lease, remaining lease term | 19 years | 
| Option to extend period - Operating | 5 years | 
| Option to extend period - Finance | 5 years | 
| Operating lease, terminate term | 1 year | 
| Finance lease, terminate term | 1 year | 
| X | ||||||||||
| 
- Definition Remaining term of lessee's finance lease, terminate term, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. No definition available. 
 | 
| X | ||||||||||
| 
- Definition Remaining term of lessee's operating lease terminate term, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. No definition available. 
 | 
| X | ||||||||||
| 
- Definition Indicates (true false) whether lessee has option to extend finance lease. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Indicates (true false) whether lessee has option to terminate finance lease. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Remaining lease term of finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef 
 | 
| X | ||||||||||
| 
- Definition Term of lessee's finance lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef 
 | 
| X | ||||||||||
| 
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Indicates (true false) whether lessee has option to extend operating lease. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Indicates (true false) whether lessee has option to terminate operating lease. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Remaining lease term of operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef 
 | 
| X | ||||||||||
| 
- Definition Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef 
 | 
| X | ||||||||||
| 
- Details 
 | 
| X | ||||||||||
| 
- Details 
 |