XML 77 R67.htm IDEA: XBRL DOCUMENT
v3.22.2.2

Share Repurchase Program - Additional Information (Details) | 9 Months Ended |  |
--- | --- | --- | ---
Sep. 30, 2022 USD ($) shares | Sep. 30, 2021 USD ($) shares | Nov. 30, 2021 USD ($) | Sep. 30, 2017 USD ($)
Equity Class Of Treasury Stock [Line Items] |  |  |  |
Stock repurchase program, authorized amount |  |  | $ 200,000,000.0 | $ 100,000,000.0
Line of credit facility, condition permitted for unlimited share repurchases, leverage ratio |  |  | 0.50 | 0.50
Net liquidity amount |  |  | $ 100,000,000.0 |
Share repurchase amount |  |  | $ 25,000,000.0 |
Stock Repurchased During Period, Shares | shares | 176,375 | 173,000 |  |
Stock Repurchased During Period, Value | $ 17,000,000.0 | $ 14,700,000 |  |
Credit Facility |  |  |  |
Equity Class Of Treasury Stock [Line Items] |  |  |  |
Share repurchase amount | $ 111,900,000 |  |  |

X
- Definition Line of credit facility, condition for unlimited share repurchases, leverage ratio. + References No definition available. + Details
Name: | icfi_LineOfCreditFacilityConditionForUnlimitedShareRepurchasesLeverageRatio
Namespace Prefix: | icfi_
Data Type: | xbrli:pureItemType
Balance Type: | na
Period Type: | instant

X
- Definition Net liquidity amount. + References No definition available. + Details
Name: | icfi_NetLiquidityAmount
Namespace Prefix: | icfi_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
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_EquityClassOfTreasuryStockLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of stock repurchase plan authorized. + References No definition available. + Details
Name: | us-gaap_StockRepurchaseProgramAuthorizedAmount1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount remaining of a stock repurchase plan authorized. + References No definition available. + Details
Name: | us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(29)) -URI https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.3-04) -URI https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(28)) -URI https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682 + Details
Name: | us-gaap_StockRepurchasedDuringPeriodShares
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(28)) -URI https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.3-04) -URI https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(29)) -URI https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682 + Details
Name: | us-gaap_StockRepurchasedDuringPeriodValue
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Details
Name: | us-gaap_CreditFacilityAxis=icfi_CreditFacilityMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |