| Standard label: | Accumulated Foreign Currency Adjustment Attributable to Parent [Member] | 
| Name: | us-gaap:AccumulatedTranslationAdjustmentMember | 
| Documentation: | Accumulated other comprehensive income (loss) resulting from foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to the parent. | 
| Object type: | cm:Member | 
| Data type: | [Member] (nonnum:domainItemType) | 
| Period type: | For Period (duration) | 
| Balance type: | (no balance type) | 
| Abstract: | true | 
| Workiva Wdesk Taxonomy Analyzer: | us-gaap:AccumulatedTranslationAdjustmentMember | 
| Label | Role | Language | 
| Accumulated Foreign Currency Adjustment Attributable to Parent [Member] | http://www.xbrl.org/2003/role/label | en-US | 
| Reference | Role | Topic | 
| FASB Accounting Standards Codification 220 10 45 10A (a),(b),(c) | http://fasb.org/us-gaap/role/ref/legacyRef | 220 | 
| FASB Accounting Standards Codification 220 10 45 14A | http://fasb.org/us-gaap/role/ref/legacyRef | 220 | 
| FASB Accounting Standards Codification 220 10 45 17B | http://www.xbrl.org/2003/role/disclosureRef | 220 | 
| FASB Accounting Standards Codification 810 10 50 1A (c),(3) | http://fasb.org/us-gaap/role/ref/legacyRef | 810 |