XML 101 R87.htm IDEA: XBRL DOCUMENT
v3.25.0.1

Income Taxes - Components of Unrecognized Tax Benefits, Excluding Penalty and Interest (Details) - USD ($) $ in Thousands | Dec. 31, 2024 | Dec. 31, 2023
--- | --- | ---
Income Tax Contingency [Line Items] |  |
Section 41 tax credit | $ 15,042 | $ 8,736
Section 174 expense capitalization | 10,798 | 15,086
Total | $ 25,840 | 24,131
U.S |  |
Income Tax Contingency [Line Items] |  |
Transfer pricing |  | 145
India |  |
Income Tax Contingency [Line Items] |  |
Transfer pricing |  | $ 164

X
- Definition Section 174 expense capitalization. + References No definition available. + Details
Name: | icfi_Section174ExpenseCapitalization
Namespace Prefix: | icfi_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Section 41 tax credit. + References No definition available. + Details
Name: | icfi_Section41TaxCredit
Namespace Prefix: | icfi_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Transfer pricing. + References No definition available. + Details
Name: | icfi_TransferPricing
Namespace Prefix: | icfi_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Unrecognized tax benefits liabilities. + References No definition available. + Details
Name: | icfi_UnrecognizedTaxBenefitsLiabilities
Namespace Prefix: | icfi_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

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_IncomeTaxContingencyLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |