 | srt:ConsolidationItemsAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/MinorityInterest |
 | srt:ConsolidatedEntitiesAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/MinorityInterest |
 | srt:OwnershipAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/MinorityInterest |
 | dei:LegalEntityAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/MinorityInterest |
 | srt:RangeAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/MinorityInterest |
 | us-gaap:RedeemableNoncontrollingInterestLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/MinorityInterest |
 | srt:ConsolidationItemsAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/MinorityInterestRedeemableNoncontrollingInterestByLegalEntityTable |
 | srt:ConsolidatedEntitiesAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/MinorityInterestRedeemableNoncontrollingInterestByLegalEntityTable |
 | srt:OwnershipAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/MinorityInterestRedeemableNoncontrollingInterestByLegalEntityTable |
 | dei:LegalEntityAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/MinorityInterestRedeemableNoncontrollingInterestByLegalEntityTable |
 | srt:RangeAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/MinorityInterestRedeemableNoncontrollingInterestByLegalEntityTable |
 | srt:ConsolidationItemsAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/TemporaryEquity |
 | srt:ConsolidatedEntitiesAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/TemporaryEquity |
 | srt:RangeAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/TemporaryEquity |
 | us-gaap:RedeemableNoncontrollingInterestLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/TemporaryEquity |
 | srt:ConsolidationItemsAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/TemporaryEquityRedeemableNoncontrollingInterestByLegalEntityTable |
 | srt:ConsolidatedEntitiesAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/TemporaryEquityRedeemableNoncontrollingInterestByLegalEntityTable |
 | srt:RangeAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/TemporaryEquityRedeemableNoncontrollingInterestByLegalEntityTable |