| Standard label: | Translation Adjustment Functional to Reporting Currency, Net of Tax, Period Increase (Decrease) | 
| Name: | us-gaap:TranslationAdjustmentFunctionalToReportingCurrencyNetOfTaxPeriodIncreaseDecrease | 
| Documentation: | Amount of increase (decrease) in cumulative translation adjustment, after tax, from translating foreign currency financial statements into the reporting currency. | 
| Object type: | cm:Concept | 
| Data type: | Monetary (xbrli:monetaryItemType) | 
| Period type: | For Period (duration) | 
| Balance type: | (no balance type) | 
| Abstract: | false | 
| Workiva Wdesk Taxonomy Analyzer: | us-gaap:TranslationAdjustmentFunctionalToReportingCurrencyNetOfTaxPeriodIncreaseDecrease | 
| Label | Role | Language | 
| Translation Adjustment Functional to Reporting Currency, Net of Tax, Period Increase (Decrease) | http://www.xbrl.org/2003/role/label | en-US | 
| Translation Adjustment Functional to Reporting Currency, Net of Tax, Period Increase (Decrease), Total | http://www.xbrl.org/2003/role/totalLabel | en-US | 
| Reference | Role | Topic | 
| FASB Accounting Standards Codification 220 10 45 11 | http://fasb.org/us-gaap/role/ref/legacyRef | 220 | 
| FASB Accounting Standards Codification 830 30 45 12 | http://fasb.org/us-gaap/role/ref/legacyRef | 830 | 
| FASB Accounting Standards Codification 830 30 45 20 (b) | http://fasb.org/us-gaap/role/ref/legacyRef | 830 | 
| FASB Accounting Standards Codification 830 30 45 20 (c) | http://fasb.org/us-gaap/role/ref/legacyRef | 830 | 
| FASB Accounting Standards Codification 830 30 45 20 (d) | http://fasb.org/us-gaap/role/ref/legacyRef | 830 |