XML 50 R41.htm IDEA: XBRL DOCUMENT
v3.22.2.2

Revenue from Contracts with Customers - Narrative (Details) | 9 Months Ended
--- | ---
Sep. 30, 2022
Disaggregation of Revenue [Line Items] |
Contract terms | Generally, contracts are billed in arrears on a quarterly basis and have a three-year duration, after which the customer can terminate the agreement with notice, generally from three to 12 months.
Minimum |
Disaggregation of Revenue [Line Items] |
Termination period | 3 months
Maximum |
Disaggregation of Revenue [Line Items] |
Termination period | 12 months

X
- Definition Revenue, Performance Obligation, Notice Of Termination, Period + References No definition available. + Details
Name: | fhi_RevenuePerformanceObligationNoticeOfTerminationPeriod
Namespace Prefix: | fhi_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

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. + References No definition available. + Details
Name: | us-gaap_DisaggregationOfRevenueLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Description of timing for satisfying performance obligation in contract with customer. Includes, but is not limited to, as services are rendered, and upon shipment, delivery or completion of service. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12 -Subparagraph (a) -URI https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045 + Details
Name: | us-gaap_RevenuePerformanceObligationDescriptionOfTiming
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |