2024 Q1 Form 10-K Financial Statement
#000095017024025511 Filed on March 05, 2024
Income Statement
Concept | 2024 Q1 | 2023 Q4 | 2023 |
---|---|---|---|
Revenue | $750.0M | $153.7M | $544.8M |
YoY Change | 566.29% | 32.05% | 28.92% |
Cost Of Revenue | $81.20M | $99.93M | $373.8M |
YoY Change | 4.54% | 26.97% | 26.98% |
Gross Profit | $45.13M | $53.79M | $171.0M |
YoY Change | 29.34% | 42.67% | 33.37% |
Gross Profit Margin | 6.02% | 34.99% | 31.39% |
Selling, General & Admin | $34.91M | $36.86M | $122.9M |
YoY Change | 28.37% | 38.06% | 31.53% |
% of Gross Profit | 77.35% | 68.54% | 71.89% |
Research & Development | |||
YoY Change | |||
% of Gross Profit | |||
Depreciation & Amortization | $3.512M | $3.737M | $12.51M |
YoY Change | 21.73% | 24.57% | 17.83% |
% of Gross Profit | 7.78% | 6.95% | 7.31% |
Operating Expenses | $34.91M | $39.05M | $122.9M |
YoY Change | 28.37% | 36.55% | 31.53% |
Operating Profit | $7.686M | $14.73M | $34.57M |
YoY Change | 40.74% | 61.88% | 55.99% |
Interest Expense | $3.413M | -$3.918M | $13.42M |
YoY Change | 41.74% | 106.21% | 147.57% |
% of Operating Profit | 44.41% | -26.6% | 38.81% |
Other Income/Expense, Net | -$1.513M | $1.042M | $372.0K |
YoY Change | 163.59% | -75.19% | -94.65% |
Pretax Income | $2.760M | $9.776M | $21.53M |
YoY Change | 11.34% | -8.64% | -9.14% |
Income Tax | $700.0K | $5.447M | $7.024M |
% Of Pretax Income | 25.36% | 55.72% | 32.63% |
Net Earnings | $1.508M | $3.879M | $12.91M |
YoY Change | -23.76% | -53.27% | -25.87% |
Net Earnings / Revenue | 0.2% | 2.52% | 2.37% |
Basic Earnings Per Share | $0.04 | $0.37 | |
Diluted Earnings Per Share | $0.04 | $0.11 | $0.37 |
COMMON SHARES | |||
Basic Shares Outstanding | 34.85M | 34.81M | 34.67M |
Diluted Shares Outstanding | 36.18M | 35.33M |
Balance Sheet
Concept | 2024 Q1 | 2023 Q4 | 2023 |
---|---|---|---|
SHORT-TERM ASSETS | |||
Cash & Short-Term Investments | $46.56M | $54.78M | $54.78M |
YoY Change | 13.0% | 20.39% | 20.39% |
Cash & Equivalents | $46.60M | $54.80M | $54.78M |
Short-Term Investments | |||
Other Short-Term Assets | $11.09M | $12.44M | $12.44M |
YoY Change | -14.68% | -6.48% | -6.48% |
Inventory | $38.03M | $34.09M | $100.7M |
Prepaid Expenses | |||
Receivables | $116.6M | $112.7M | $112.7M |
Other Receivables | $741.0K | $824.0K | $824.0K |
Total Short-Term Assets | $271.6M | $281.4M | $281.4M |
YoY Change | -1.4% | 16.94% | 16.92% |
LONG-TERM ASSETS | |||
Property, Plant & Equipment | $27.74M | $26.24M | $42.49M |
YoY Change | 16.18% | 25.97% | 31.97% |
Goodwill | $211.5M | $211.3M | |
YoY Change | 1.78% | 15.35% | |
Intangibles | |||
YoY Change | |||
Long-Term Investments | |||
YoY Change | |||
Other Assets | $5.212M | $5.004M | $5.004M |
YoY Change | 37.16% | 28.31% | 28.31% |
Total Long-Term Assets | $317.4M | $318.9M | $318.9M |
YoY Change | 8.66% | 20.75% | 20.78% |
TOTAL ASSETS | |||
Total Short-Term Assets | $271.6M | $281.4M | $281.4M |
Total Long-Term Assets | $317.4M | $318.9M | $318.9M |
Total Assets | $589.0M | $600.3M | $600.3M |
YoY Change | 3.78% | 18.94% | 18.94% |
SHORT-TERM LIABILITIES | |||
YoY Change | |||
Accounts Payable | $79.06M | $87.69M | $87.69M |
YoY Change | 1.36% | 19.46% | 19.47% |
Accrued Expenses | $46.20M | $44.30M | $35.73M |
YoY Change | 57.13% | 31.1% | 24.94% |
Deferred Revenue | $58.16M | $56.90M | |
YoY Change | 12.01% | 73.92% | |
Short-Term Debt | $1.500M | $2.500M | $2.500M |
YoY Change | 50.0% | ||
Long-Term Debt Due | $10.58M | $10.49M | $11.18M |
YoY Change | 174.52% | 193.04% | 166.21% |
Total Short-Term Liabilities | $196.3M | $203.1M | $203.1M |
YoY Change | 14.43% | 38.45% | 38.45% |
LONG-TERM LIABILITIES | |||
Long-Term Debt | $125.1M | $126.8M | $131.6M |
YoY Change | -11.56% | 17.81% | 16.29% |
Other Long-Term Liabilities | $11.48M | $12.64M | $19.22M |
YoY Change | -24.41% | -16.43% | 6.76% |
Total Long-Term Liabilities | $136.5M | $139.4M | $150.9M |
YoY Change | -12.8% | 13.59% | 14.98% |
TOTAL LIABILITIES | |||
Total Short-Term Liabilities | $196.3M | $203.1M | $203.1M |
Total Long-Term Liabilities | $136.5M | $139.4M | $150.9M |
Total Liabilities | $352.9M | $362.8M | $367.6M |
YoY Change | 2.17% | 26.6% | 26.12% |
SHAREHOLDERS EQUITY | |||
Retained Earnings | -$4.879M | -$6.387M | |
YoY Change | -71.83% | -66.9% | |
Common Stock | $252.0M | $255.3M | |
YoY Change | 0.28% | 1.91% | |
Preferred Stock | |||
YoY Change | |||
Treasury Stock (at cost) | |||
YoY Change | |||
Treasury Stock Shares | |||
Shareholders Equity | $231.5M | $232.6M | $232.6M |
YoY Change | |||
Total Liabilities & Shareholders Equity | $589.0M | $600.3M | $600.3M |
YoY Change | 3.78% | 18.94% | 18.94% |
Cashflow Statement
Concept | 2024 Q1 | 2023 Q4 | 2023 |
---|---|---|---|
OPERATING ACTIVITIES | |||
Net Income | $1.508M | $3.879M | $12.91M |
YoY Change | -23.76% | -53.27% | -25.87% |
Depreciation, Depletion And Amortization | $3.512M | $3.737M | $12.51M |
YoY Change | 21.73% | 24.57% | 17.83% |
Cash From Operating Activities | $1.224M | $15.16M | $44.65M |
YoY Change | -110.18% | 52.33% | 50.59% |
INVESTING ACTIVITIES | |||
Capital Expenditures | $3.116M | $2.874M | $8.384M |
YoY Change | 24.0% | 184.55% | 148.34% |
Acquisitions | |||
YoY Change | |||
Other Investing Activities | $422.0K | -$2.000K | -$48.10M |
YoY Change | -101.75% | -120.0% | 7.18% |
Cash From Investing Activities | -$2.694M | -$2.876M | -$56.49M |
YoY Change | -89.89% | 187.6% | 17.05% |
FINANCING ACTIVITIES | |||
Cash Dividend Paid | |||
YoY Change | |||
Common Stock Issuance & Retirement, Net | $0.00 | ||
YoY Change | -100.0% | ||
Debt Paid & Issued, Net | $2.553M | $4.985M | |
YoY Change | 209.08% | 59.78% | |
Cash From Financing Activities | -6.528M | -4.026M | 21.14M |
YoY Change | -119.0% | 6610.0% | -44.61% |
NET CHANGE | |||
Cash From Operating Activities | 1.224M | 15.16M | 44.65M |
Cash From Investing Activities | -2.694M | -2.876M | -56.49M |
Cash From Financing Activities | -6.528M | -4.026M | 21.14M |
Net Change In Cash | -8.420M | 8.255M | 8.863M |
YoY Change | 92.19% | -7.14% | -39.25% |
FREE CASH FLOW | |||
Cash From Operating Activities | $1.224M | $15.16M | $44.65M |
Capital Expenditures | $3.116M | $2.874M | $8.384M |
Free Cash Flow | -$1.892M | $12.28M | $36.26M |
YoY Change | -86.98% | 37.39% | 38.02% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
CY2023 | dei |
Current Fiscal Year End Date
CurrentFiscalYearEndDate
|
--12-31 | |
CY2023 | dei |
Entity Central Index Key
EntityCentralIndexKey
|
0000003197 | |
CY2023 | ceco |
Retainage Receivables On Contracts Maximum Period
RetainageReceivablesOnContractsMaximumPeriod
|
P2Y | |
CY2023 | ceco |
Retainage Receivables On Contracts Minimum Period
RetainageReceivablesOnContractsMinimumPeriod
|
P1Y | |
CY2023 | dei |
Amendment Flag
AmendmentFlag
|
false | |
CY2021 | us-gaap |
Multiemployer Plan Pension Significant Employer Contribution Exceeds Five Percent
MultiemployerPlanPensionSignificantEmployerContributionExceedsFivePercent
|
false | |
CY2023 | dei |
Document Fiscal Period Focus
DocumentFiscalPeriodFocus
|
FY | |
CY2023Q4 | us-gaap |
Commitments And Contingencies
CommitmentsAndContingencies
|
||
CY2022Q4 | us-gaap |
Commitments And Contingencies
CommitmentsAndContingencies
|
||
CY2023 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost Credit Excluding Service Cost Statement Of Income Or Comprehensive Income Extensible List
DefinedBenefitPlanNetPeriodicBenefitCostCreditExcludingServiceCostStatementOfIncomeOrComprehensiveIncomeExtensibleList
|
http://fasb.org/us-gaap/2023#InterestExpense | |
CY2022 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost Credit Excluding Service Cost Statement Of Income Or Comprehensive Income Extensible List
DefinedBenefitPlanNetPeriodicBenefitCostCreditExcludingServiceCostStatementOfIncomeOrComprehensiveIncomeExtensibleList
|
http://fasb.org/us-gaap/2023#InterestExpense | |
CY2021 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost Credit Excluding Service Cost Statement Of Income Or Comprehensive Income Extensible List
DefinedBenefitPlanNetPeriodicBenefitCostCreditExcludingServiceCostStatementOfIncomeOrComprehensiveIncomeExtensibleList
|
http://fasb.org/us-gaap/2023#InterestExpense | |
CY2022Q4 | us-gaap |
Operating Lease Liability Current Statement Of Financial Position Extensible List
OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#AccountsPayableAndAccruedLiabilitiesCurrent | |
CY2023Q4 | us-gaap |
Operating Lease Liability Current Statement Of Financial Position Extensible List
OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#AccountsPayableAndAccruedLiabilitiesCurrent | |
CY2022Q4 | us-gaap |
Finance Lease Right Of Use Asset Statement Of Financial Position Extensible List
FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#PropertyPlantAndEquipmentNet | |
CY2023Q4 | us-gaap |
Finance Lease Right Of Use Asset Statement Of Financial Position Extensible List
FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#PropertyPlantAndEquipmentNet | |
CY2022Q4 | us-gaap |
Finance Lease Liability Current Statement Of Financial Position Extensible List
FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#AccountsPayableAndAccruedLiabilitiesCurrent | |
CY2022Q4 | us-gaap |
Finance Lease Liability Current Statement Of Financial Position Extensible List
FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#AccountsPayableAndAccruedLiabilitiesCurrent | |
CY2023Q4 | us-gaap |
Finance Lease Liability Current Statement Of Financial Position Extensible List
FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#AccountsPayableAndAccruedLiabilitiesCurrent | |
CY2023Q4 | us-gaap |
Finance Lease Liability Current Statement Of Financial Position Extensible List
FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#AccountsPayableAndAccruedLiabilitiesCurrent | |
CY2022Q4 | us-gaap |
Finance Lease Liability Noncurrent Statement Of Financial Position Extensible List
FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#OtherLiabilitiesNoncurrent | |
CY2023Q4 | us-gaap |
Finance Lease Liability Noncurrent Statement Of Financial Position Extensible List
FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#OtherLiabilitiesNoncurrent | |
CY2023 | dei |
Document Type
DocumentType
|
10-K | |
CY2023 | dei |
Document Annual Report
DocumentAnnualReport
|
true | |
CY2023 | dei |
Document Period End Date
DocumentPeriodEndDate
|
2023-12-31 | |
CY2023 | dei |
Document Fiscal Year Focus
DocumentFiscalYearFocus
|
2023 | |
CY2023 | dei |
Document Transition Report
DocumentTransitionReport
|
false | |
CY2023 | dei |
Entity File Number
EntityFileNumber
|
0-7099 | |
CY2023 | dei |
Entity Registrant Name
EntityRegistrantName
|
CECO ENVIRONMENTAL CORP. | |
CY2023 | dei |
Entity Incorporation State Country Code
EntityIncorporationStateCountryCode
|
DE | |
CY2023 | dei |
Entity Tax Identification Number
EntityTaxIdentificationNumber
|
13-2566064 | |
CY2023 | dei |
Entity Address Address Line1
EntityAddressAddressLine1
|
14651 North Dallas Parkway | |
CY2023 | dei |
Entity Address Address Line2
EntityAddressAddressLine2
|
Suite 500 | |
CY2023 | dei |
Entity Address City Or Town
EntityAddressCityOrTown
|
Dallas | |
CY2023 | dei |
Entity Address State Or Province
EntityAddressStateOrProvince
|
TX | |
CY2023 | dei |
Entity Address Postal Zip Code
EntityAddressPostalZipCode
|
75254 | |
CY2023 | dei |
City Area Code
CityAreaCode
|
214 | |
CY2023 | dei |
Local Phone Number
LocalPhoneNumber
|
357-6181 | |
CY2023 | dei |
Security12b Title
Security12bTitle
|
Common Stock, par value $0.01 per share | |
CY2023 | dei |
Security Exchange Name
SecurityExchangeName
|
NASDAQ | |
CY2023 | dei |
Entity Well Known Seasoned Issuer
EntityWellKnownSeasonedIssuer
|
No | |
CY2023 | dei |
Entity Voluntary Filers
EntityVoluntaryFilers
|
No | |
CY2023 | dei |
Entity Current Reporting Status
EntityCurrentReportingStatus
|
Yes | |
CY2023 | dei |
Entity Interactive Data Current
EntityInteractiveDataCurrent
|
Yes | |
CY2023 | dei |
Entity Filer Category
EntityFilerCategory
|
Accelerated Filer | |
CY2023 | dei |
Entity Small Business
EntitySmallBusiness
|
false | |
CY2023 | dei |
Entity Emerging Growth Company
EntityEmergingGrowthCompany
|
false | |
CY2023 | dei |
Icfr Auditor Attestation Flag
IcfrAuditorAttestationFlag
|
true | |
CY2023 | dei |
Document Fin Stmt Error Correction Flag
DocumentFinStmtErrorCorrectionFlag
|
false | |
CY2023 | dei |
Entity Shell Company
EntityShellCompany
|
false | |
CY2023Q2 | dei |
Entity Public Float
EntityPublicFloat
|
399200000 | |
CY2024Q1 | dei |
Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
|
34850737 | |
CY2023 | dei |
Auditor Firm
AuditorFirmId
|
243 | |
CY2023 | dei |
Auditor Name
AuditorName
|
BDO USA, P.C. | |
CY2023 | dei |
Auditor Location
AuditorLocation
|
Cincinnati, Ohio | |
CY2023Q4 | ecd |
Rule10b51 Arr Adopted Flag
Rule10b51ArrAdoptedFlag
|
false | |
CY2023Q4 | ecd |
Non Rule10b51 Arr Adopted Flag
NonRule10b51ArrAdoptedFlag
|
false | |
CY2023Q4 | ecd |
Rule10b51 Arr Trmntd Flag
Rule10b51ArrTrmntdFlag
|
false | |
CY2022Q4 | us-gaap |
Finance Lease Liability Noncurrent Statement Of Financial Position Extensible List
FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#OtherLiabilitiesNoncurrent | |
CY2023Q4 | us-gaap |
Finance Lease Liability Noncurrent Statement Of Financial Position Extensible List
FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#OtherLiabilitiesNoncurrent | |
CY2023 | dei |
Document Type
DocumentType
|
10-K | |
CY2023 | dei |
Document Annual Report
DocumentAnnualReport
|
true | |
CY2023 | dei |
Document Period End Date
DocumentPeriodEndDate
|
2023-12-31 | |
CY2023 | dei |
Document Fiscal Year Focus
DocumentFiscalYearFocus
|
2023 | |
CY2023 | dei |
Document Transition Report
DocumentTransitionReport
|
false | |
CY2023 | dei |
Entity File Number
EntityFileNumber
|
0-7099 | |
CY2023 | dei |
Entity Registrant Name
EntityRegistrantName
|
CECO ENVIRONMENTAL CORP. | |
CY2023 | dei |
Entity Incorporation State Country Code
EntityIncorporationStateCountryCode
|
DE | |
CY2023 | dei |
Entity Tax Identification Number
EntityTaxIdentificationNumber
|
13-2566064 | |
CY2023 | dei |
Entity Address Address Line1
EntityAddressAddressLine1
|
14651 North Dallas Parkway | |
CY2023 | dei |
Entity Address Address Line2
EntityAddressAddressLine2
|
Suite 500 | |
CY2023 | dei |
Entity Address City Or Town
EntityAddressCityOrTown
|
Dallas | |
CY2023 | dei |
Entity Address State Or Province
EntityAddressStateOrProvince
|
TX | |
CY2023 | dei |
Entity Address Postal Zip Code
EntityAddressPostalZipCode
|
75254 | |
CY2023 | dei |
City Area Code
CityAreaCode
|
214 | |
CY2023 | dei |
Local Phone Number
LocalPhoneNumber
|
357-6181 | |
CY2023 | dei |
Security12b Title
Security12bTitle
|
Common Stock, par value $0.01 per share | |
CY2023 | dei |
Trading Symbol
TradingSymbol
|
CECO | |
CY2023 | dei |
Security Exchange Name
SecurityExchangeName
|
NASDAQ | |
CY2023 | dei |
Entity Well Known Seasoned Issuer
EntityWellKnownSeasonedIssuer
|
No | |
CY2023 | dei |
Entity Voluntary Filers
EntityVoluntaryFilers
|
No | |
CY2023 | dei |
Entity Current Reporting Status
EntityCurrentReportingStatus
|
Yes | |
CY2023 | dei |
Entity Interactive Data Current
EntityInteractiveDataCurrent
|
Yes | |
CY2023 | dei |
Entity Filer Category
EntityFilerCategory
|
Accelerated Filer | |
CY2023 | dei |
Entity Small Business
EntitySmallBusiness
|
false | |
CY2023 | dei |
Entity Emerging Growth Company
EntityEmergingGrowthCompany
|
false | |
CY2023 | dei |
Icfr Auditor Attestation Flag
IcfrAuditorAttestationFlag
|
true | |
CY2023 | dei |
Document Fin Stmt Error Correction Flag
DocumentFinStmtErrorCorrectionFlag
|
false | |
CY2023 | dei |
Entity Shell Company
EntityShellCompany
|
false | |
CY2023Q2 | dei |
Entity Public Float
EntityPublicFloat
|
399200000 | |
CY2024Q1 | dei |
Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
|
34850737 | |
CY2023 | dei |
Auditor Firm
AuditorFirmId
|
243 | |
CY2023 | dei |
Auditor Name
AuditorName
|
BDO USA, P.C. | |
CY2023 | dei |
Auditor Location
AuditorLocation
|
Cincinnati, Ohio | |
CY2023Q4 | ecd |
Rule10b51 Arr Adopted Flag
Rule10b51ArrAdoptedFlag
|
false | |
CY2023Q4 | ecd |
Non Rule10b51 Arr Adopted Flag
NonRule10b51ArrAdoptedFlag
|
false | |
CY2023Q4 | ecd |
Rule10b51 Arr Trmntd Flag
Rule10b51ArrTrmntdFlag
|
false | |
CY2023Q4 | ecd |
Non Rule10b51 Arr Trmntd Flag
NonRule10b51ArrTrmntdFlag
|
false | |
CY2023Q4 | ecd |
Non Rule10b51 Arr Trmntd Flag
NonRule10b51ArrTrmntdFlag
|
false | |
CY2023Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
54779000 | |
CY2022Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
45522000 | |
CY2023Q4 | us-gaap |
Restricted Cash Current
RestrictedCashCurrent
|
669000 | |
CY2022Q4 | us-gaap |
Restricted Cash Current
RestrictedCashCurrent
|
1063000 | |
CY2023Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
6460000 | |
CY2022Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
4220000 | |
CY2023Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
112733000 | |
CY2022Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
83086000 | |
CY2023Q4 | us-gaap |
Contract With Customer Asset Net Current
ContractWithCustomerAssetNetCurrent
|
66574000 | |
CY2022Q4 | us-gaap |
Contract With Customer Asset Net Current
ContractWithCustomerAssetNetCurrent
|
71016000 | |
CY2023Q4 | us-gaap |
Inventory Net
InventoryNet
|
34089000 | |
CY2022Q4 | us-gaap |
Inventory Net
InventoryNet
|
26526000 | |
CY2023Q4 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
11769000 | |
CY2022Q4 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
12174000 | |
CY2023Q4 | us-gaap |
Prepaid Taxes
PrepaidTaxes
|
824000 | |
CY2022Q4 | us-gaap |
Prepaid Taxes
PrepaidTaxes
|
1271000 | |
CY2023Q4 | us-gaap |
Assets Current
AssetsCurrent
|
281437000 | |
CY2022Q4 | us-gaap |
Assets Current
AssetsCurrent
|
240658000 | |
CY2023Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
26237000 | |
CY2022Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
20828000 | |
CY2023Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
16256000 | |
CY2022Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
11373000 | |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
211326000 | |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
183197000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
50461000 | |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
35251000 | |
CY2023Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9570000 | |
CY2022Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9508000 | |
CY2023Q4 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
304000 | |
CY2022Q4 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
829000 | |
CY2023Q4 | us-gaap |
Deferred Costs And Other Assets
DeferredCostsAndOtherAssets
|
4700000 | |
CY2022Q4 | us-gaap |
Deferred Costs And Other Assets
DeferredCostsAndOtherAssets
|
3077000 | |
CY2023Q4 | us-gaap |
Assets
Assets
|
600291000 | |
CY2022Q4 | us-gaap |
Assets
Assets
|
504721000 | |
CY2023Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
10488000 | |
CY2022Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
3579000 | |
CY2023Q4 | us-gaap |
Accounts Payable And Accrued Liabilities Current
AccountsPayableAndAccruedLiabilitiesCurrent
|
87691000 | |
CY2022Q4 | us-gaap |
Accounts Payable And Accrued Liabilities Current
AccountsPayableAndAccruedLiabilitiesCurrent
|
73407000 | |
CY2023Q4 | us-gaap |
Accrued Liabilities Current And Noncurrent
AccruedLiabilitiesCurrentAndNoncurrent
|
44301000 | |
CY2022Q4 | us-gaap |
Accrued Liabilities Current And Noncurrent
AccruedLiabilitiesCurrentAndNoncurrent
|
33791000 | |
CY2023Q4 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
56899000 | |
CY2022Q4 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
32716000 | |
CY2023Q4 | ceco |
Notes Payable Current1
NotesPayableCurrent1
|
2500000 | |
CY2022Q4 | ceco |
Notes Payable Current1
NotesPayableCurrent1
|
0 | |
CY2023Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
1227000 | |
CY2023Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
54779000 | |
CY2022Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
45522000 | |
CY2023Q4 | us-gaap |
Restricted Cash Current
RestrictedCashCurrent
|
669000 | |
CY2022Q4 | us-gaap |
Restricted Cash Current
RestrictedCashCurrent
|
1063000 | |
CY2023Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
6460000 | |
CY2022Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
4220000 | |
CY2023Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
112733000 | |
CY2022Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
83086000 | |
CY2023Q4 | us-gaap |
Contract With Customer Asset Net Current
ContractWithCustomerAssetNetCurrent
|
66574000 | |
CY2022Q4 | us-gaap |
Contract With Customer Asset Net Current
ContractWithCustomerAssetNetCurrent
|
71016000 | |
CY2023Q4 | us-gaap |
Inventory Net
InventoryNet
|
34089000 | |
CY2022Q4 | us-gaap |
Inventory Net
InventoryNet
|
26526000 | |
CY2023Q4 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
11769000 | |
CY2022Q4 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
12174000 | |
CY2023Q4 | us-gaap |
Prepaid Taxes
PrepaidTaxes
|
824000 | |
CY2022Q4 | us-gaap |
Prepaid Taxes
PrepaidTaxes
|
1271000 | |
CY2023Q4 | us-gaap |
Assets Current
AssetsCurrent
|
281437000 | |
CY2022Q4 | us-gaap |
Assets Current
AssetsCurrent
|
240658000 | |
CY2023Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
26237000 | |
CY2022Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
20828000 | |
CY2023Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
16256000 | |
CY2022Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
11373000 | |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
211326000 | |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
183197000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
50461000 | |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
35251000 | |
CY2023Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9570000 | |
CY2022Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9508000 | |
CY2023Q4 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
304000 | |
CY2022Q4 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
829000 | |
CY2023Q4 | us-gaap |
Deferred Costs And Other Assets
DeferredCostsAndOtherAssets
|
4700000 | |
CY2022Q4 | us-gaap |
Deferred Costs And Other Assets
DeferredCostsAndOtherAssets
|
3077000 | |
CY2023Q4 | us-gaap |
Assets
Assets
|
600291000 | |
CY2022Q4 | us-gaap |
Assets
Assets
|
504721000 | |
CY2023Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
10488000 | |
CY2022Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
3579000 | |
CY2023Q4 | us-gaap |
Accounts Payable And Accrued Liabilities Current
AccountsPayableAndAccruedLiabilitiesCurrent
|
87691000 | |
CY2022Q4 | us-gaap |
Accounts Payable And Accrued Liabilities Current
AccountsPayableAndAccruedLiabilitiesCurrent
|
73407000 | |
CY2023Q4 | us-gaap |
Accrued Liabilities Current And Noncurrent
AccruedLiabilitiesCurrentAndNoncurrent
|
44301000 | |
CY2022Q4 | us-gaap |
Accrued Liabilities Current And Noncurrent
AccruedLiabilitiesCurrentAndNoncurrent
|
33791000 | |
CY2023Q4 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
56899000 | |
CY2022Q4 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
32716000 | |
CY2023Q4 | ceco |
Notes Payable Current1
NotesPayableCurrent1
|
2500000 | |
CY2022Q4 | ceco |
Notes Payable Current1
NotesPayableCurrent1
|
0 | |
CY2023Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
1227000 | |
CY2022Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
3207000 | |
CY2022Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
3207000 | |
CY2023Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
203106000 | |
CY2022Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
146700000 | |
CY2023Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
12644000 | |
CY2022Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
15129000 | |
CY2023Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
126795000 | |
CY2022Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
107625000 | |
CY2023Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
8838000 | |
CY2022Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
8666000 | |
CY2023Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
11417000 | |
CY2022Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
8453000 | |
CY2023Q4 | us-gaap |
Liabilities
Liabilities
|
362800000 | |
CY2022Q4 | us-gaap |
Liabilities
Liabilities
|
286573000 | |
CY2022Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2023Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2022Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
10000 | |
CY2023Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
10000 | |
CY2022Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2023Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2023Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | |
CY2022Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | |
CY2022Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2023Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2022Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
100000000 | |
CY2023Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
100000000 | |
CY2023Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
34835293 | |
CY2023Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
34835293 | |
CY2022Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
34381668 | |
CY2022Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
34381668 | |
CY2023Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
348000 | |
CY2022Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
344000 | |
CY2023Q4 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
254956000 | |
CY2022Q4 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
250174000 | |
CY2023Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
-6387000 | |
CY2022Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
-19298000 | |
CY2023Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-16274000 | |
CY2022Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-17996000 | |
CY2023Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
232643000 | |
CY2022Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
213224000 | |
CY2023Q4 | us-gaap |
Minority Interest
MinorityInterest
|
4848000 | |
CY2022Q4 | us-gaap |
Minority Interest
MinorityInterest
|
4924000 | |
CY2023Q4 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
237491000 | |
CY2022Q4 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
218148000 | |
CY2023Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
600291000 | |
CY2022Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
504721000 | |
CY2023 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
544845000 | |
CY2023Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
203106000 | |
CY2022Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
146700000 | |
CY2023Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
12644000 | |
CY2022Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
15129000 | |
CY2023Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
126795000 | |
CY2022Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
107625000 | |
CY2023Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
8838000 | |
CY2022Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
8666000 | |
CY2023Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
11417000 | |
CY2022Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
8453000 | |
CY2023Q4 | us-gaap |
Liabilities
Liabilities
|
362800000 | |
CY2022Q4 | us-gaap |
Liabilities
Liabilities
|
286573000 | |
CY2022Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2023Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2022Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
10000 | |
CY2023Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
10000 | |
CY2022Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2023Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2023Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | |
CY2022Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | |
CY2022Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2023Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2022Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
100000000 | |
CY2023Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
100000000 | |
CY2023Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
34835293 | |
CY2023Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
34835293 | |
CY2022Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
34381668 | |
CY2022Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
34381668 | |
CY2023Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
348000 | |
CY2022Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
344000 | |
CY2023Q4 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
254956000 | |
CY2022Q4 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
250174000 | |
CY2023Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
-6387000 | |
CY2022Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
-19298000 | |
CY2023Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-16274000 | |
CY2022Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-17996000 | |
CY2023Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
232643000 | |
CY2022Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
213224000 | |
CY2023Q4 | us-gaap |
Minority Interest
MinorityInterest
|
4848000 | |
CY2022Q4 | us-gaap |
Minority Interest
MinorityInterest
|
4924000 | |
CY2023Q4 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
237491000 | |
CY2022Q4 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
218148000 | |
CY2023Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
600291000 | |
CY2022Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
504721000 | |
CY2023 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
544845000 | |
CY2022 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
422627000 | |
CY2022 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
422627000 | |
CY2021 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
324140000 | |
CY2023 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
373829000 | |
CY2022 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
294402000 | |
CY2023 | us-gaap |
Gross Profit
GrossProfit
|
171016000 | |
CY2022 | us-gaap |
Gross Profit
GrossProfit
|
128225000 | |
CY2021 | us-gaap |
Gross Profit
GrossProfit
|
100922000 | |
CY2023 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
122944000 | |
CY2022 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
93473000 | |
CY2021 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
81797000 | |
CY2023 | ceco |
Amortization And Earnout Expenses
AmortizationAndEarnoutExpenses
|
8180000 | |
CY2022 | ceco |
Amortization And Earnout Expenses
AmortizationAndEarnoutExpenses
|
6809000 | |
CY2021 | ceco |
Amortization And Earnout Expenses
AmortizationAndEarnoutExpenses
|
7789000 | |
CY2023 | us-gaap |
Business Combination Integration Related Costs
BusinessCombinationIntegrationRelatedCosts
|
2508000 | |
CY2022 | us-gaap |
Business Combination Integration Related Costs
BusinessCombinationIntegrationRelatedCosts
|
4546000 | |
CY2021 | us-gaap |
Business Combination Integration Related Costs
BusinessCombinationIntegrationRelatedCosts
|
818000 | |
CY2023 | ceco |
Executive Transition Expenses
ExecutiveTransitionExpenses
|
1465000 | |
CY2022 | ceco |
Executive Transition Expenses
ExecutiveTransitionExpenses
|
1161000 | |
CY2021 | ceco |
Executive Transition Expenses
ExecutiveTransitionExpenses
|
29000 | |
CY2023 | us-gaap |
Restructuring Charges
RestructuringCharges
|
1350000 | |
CY2022 | us-gaap |
Restructuring Charges
RestructuringCharges
|
75000 | |
CY2021 | us-gaap |
Restructuring Charges
RestructuringCharges
|
632000 | |
CY2023 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
34569000 | |
CY2022 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
22161000 | |
CY2021 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
9857000 | |
CY2023 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
372000 | |
CY2022 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
6947000 | |
CY2021 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
-2231000 | |
CY2023 | us-gaap |
Interest Expense
InterestExpense
|
13416000 | |
CY2022 | us-gaap |
Interest Expense
InterestExpense
|
5419000 | |
CY2021 | us-gaap |
Interest Expense
InterestExpense
|
2952000 | |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
21525000 | |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
23689000 | |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
4674000 | |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
7024000 | |
CY2022 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
5426000 | |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2691000 | |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
14501000 | |
CY2022 | us-gaap |
Profit Loss
ProfitLoss
|
18263000 | |
CY2021 | us-gaap |
Profit Loss
ProfitLoss
|
1983000 | |
CY2023 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
1590000 | |
CY2022 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
846000 | |
CY2021 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
557000 | |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
12911000 | |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
17417000 | |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
1426000 | |
CY2021 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
324140000 | |
CY2023 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
373829000 | |
CY2022 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
294402000 | |
CY2021 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
223218000 | |
CY2023 | us-gaap |
Gross Profit
GrossProfit
|
171016000 | |
CY2022 | us-gaap |
Gross Profit
GrossProfit
|
128225000 | |
CY2021 | us-gaap |
Gross Profit
GrossProfit
|
100922000 | |
CY2023 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
122944000 | |
CY2022 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
93473000 | |
CY2021 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
81797000 | |
CY2023 | ceco |
Amortization And Earnout Expenses
AmortizationAndEarnoutExpenses
|
8180000 | |
CY2022 | ceco |
Amortization And Earnout Expenses
AmortizationAndEarnoutExpenses
|
6809000 | |
CY2021 | ceco |
Amortization And Earnout Expenses
AmortizationAndEarnoutExpenses
|
7789000 | |
CY2023 | us-gaap |
Business Combination Integration Related Costs
BusinessCombinationIntegrationRelatedCosts
|
2508000 | |
CY2022 | us-gaap |
Business Combination Integration Related Costs
BusinessCombinationIntegrationRelatedCosts
|
4546000 | |
CY2021 | us-gaap |
Business Combination Integration Related Costs
BusinessCombinationIntegrationRelatedCosts
|
818000 | |
CY2023 | ceco |
Executive Transition Expenses
ExecutiveTransitionExpenses
|
1465000 | |
CY2022 | ceco |
Executive Transition Expenses
ExecutiveTransitionExpenses
|
1161000 | |
CY2021 | ceco |
Executive Transition Expenses
ExecutiveTransitionExpenses
|
29000 | |
CY2023 | us-gaap |
Restructuring Charges
RestructuringCharges
|
1350000 | |
CY2022 | us-gaap |
Restructuring Charges
RestructuringCharges
|
75000 | |
CY2021 | us-gaap |
Restructuring Charges
RestructuringCharges
|
632000 | |
CY2023 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
34569000 | |
CY2022 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
22161000 | |
CY2021 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
9857000 | |
CY2023 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
372000 | |
CY2022 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
6947000 | |
CY2021 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
-2231000 | |
CY2023 | us-gaap |
Interest Expense
InterestExpense
|
13416000 | |
CY2022 | us-gaap |
Interest Expense
InterestExpense
|
5419000 | |
CY2021 | us-gaap |
Interest Expense
InterestExpense
|
2952000 | |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
21525000 | |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
23689000 | |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
4674000 | |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
7024000 | |
CY2022 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
5426000 | |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2691000 | |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
14501000 | |
CY2022 | us-gaap |
Profit Loss
ProfitLoss
|
18263000 | |
CY2021 | us-gaap |
Profit Loss
ProfitLoss
|
1983000 | |
CY2023 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
1590000 | |
CY2022 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
846000 | |
CY2021 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
557000 | |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
12911000 | |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
17417000 | |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
1426000 | |
CY2023 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.37 | |
CY2022 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.5 | |
CY2021 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.04 | |
CY2023 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.37 | |
CY2022 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.5 | |
CY2021 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.04 | |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
34665473 | |
CY2022 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
34672007 | |
CY2021 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
35345785 | |
CY2023 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35334090 | |
CY2022 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35005159 | |
CY2021 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35594779 | |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
14501000 | |
CY2022 | us-gaap |
Profit Loss
ProfitLoss
|
18263000 | |
CY2021 | us-gaap |
Profit Loss
ProfitLoss
|
1983000 | |
CY2023 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
497000 | |
CY2022 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-5635000 | |
CY2021 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-538000 | |
CY2023 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
-1225000 | |
CY2022 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
291000 | |
CY2021 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
-2964000 | |
CY2023 | us-gaap |
Comprehensive Income Net Of Tax Including Portion Attributable To Noncontrolling Interest
ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
|
16223000 | |
CY2022 | us-gaap |
Comprehensive Income Net Of Tax Including Portion Attributable To Noncontrolling Interest
ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
|
12337000 | |
CY2021 | us-gaap |
Comprehensive Income Net Of Tax Including Portion Attributable To Noncontrolling Interest
ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
|
4409000 | |
CY2020Q4 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
203611000 | |
CY2021 | us-gaap |
Profit Loss
ProfitLoss
|
1983000 | |
CY2021 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
13000 | |
CY2021 | us-gaap |
Stock Issued During Period Value Issued For Services
StockIssuedDuringPeriodValueIssuedForServices
|
514000 | |
CY2021 | us-gaap |
Stock Issued During Period Value Share Based Compensation
StockIssuedDuringPeriodValueShareBasedCompensation
|
3558000 | |
CY2021 | ceco |
Common Stock Repurchase And Retirement Amount
CommonStockRepurchaseAndRetirementAmount
|
-5013000 | |
CY2021 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Before Reclassification Adjustments Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansBeforeReclassificationAdjustmentsTax
|
866000 | |
CY2021 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
-2964000 | |
CY2021 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-538000 | |
CY2021 | us-gaap |
Minority Interest Decrease From Distributions To Noncontrolling Interest Holders
MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
|
107000 | |
CY2021Q4 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
205957000 | |
CY2022 | us-gaap |
Profit Loss
ProfitLoss
|
18263000 | |
CY2022 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
377000 | |
CY2022 | us-gaap |
Stock Issued During Period Value Issued For Services
StockIssuedDuringPeriodValueIssuedForServices
|
440000 | |
CY2022 | us-gaap |
Stock Issued During Period Value Share Based Compensation
StockIssuedDuringPeriodValueShareBasedCompensation
|
4262000 | |
CY2022 | ceco |
Common Stock Repurchase And Retirement Amount
CommonStockRepurchaseAndRetirementAmount
|
-7020000 | |
CY2022 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Before Reclassification Adjustments Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansBeforeReclassificationAdjustmentsTax
|
97000 | |
CY2022 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
291000 | |
CY2022 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-5635000 | |
CY2022 | us-gaap |
Minority Interest Decrease From Distributions To Noncontrolling Interest Holders
MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
|
1425000 | |
CY2022 | ceco |
Fair Value Of Noncontrolling Interest Equity Issued
FairValueOfNoncontrollingInterestEquityIssued
|
4100000 | |
CY2022Q4 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
218148000 | |
CY2023 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.37 | |
CY2022 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.5 | |
CY2021 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.04 | |
CY2023 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.37 | |
CY2022 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.5 | |
CY2021 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.04 | |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
34665473 | |
CY2022 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
34672007 | |
CY2021 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
35345785 | |
CY2023 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35334090 | |
CY2022 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35005159 | |
CY2021 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35594779 | |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
14501000 | |
CY2022 | us-gaap |
Profit Loss
ProfitLoss
|
18263000 | |
CY2021 | us-gaap |
Profit Loss
ProfitLoss
|
1983000 | |
CY2023 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
497000 | |
CY2022 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-5635000 | |
CY2021 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-538000 | |
CY2023 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
-1225000 | |
CY2022 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
291000 | |
CY2021 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
-2964000 | |
CY2023 | us-gaap |
Comprehensive Income Net Of Tax Including Portion Attributable To Noncontrolling Interest
ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
|
16223000 | |
CY2022 | us-gaap |
Comprehensive Income Net Of Tax Including Portion Attributable To Noncontrolling Interest
ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
|
12337000 | |
CY2021 | us-gaap |
Comprehensive Income Net Of Tax Including Portion Attributable To Noncontrolling Interest
ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
|
4409000 | |
CY2020Q4 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
203611000 | |
CY2021 | us-gaap |
Profit Loss
ProfitLoss
|
1983000 | |
CY2021 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
13000 | |
CY2022 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
291000 | |
CY2022 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-5635000 | |
CY2022 | us-gaap |
Minority Interest Decrease From Distributions To Noncontrolling Interest Holders
MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
|
1425000 | |
CY2022 | ceco |
Fair Value Of Noncontrolling Interest Equity Issued
FairValueOfNoncontrollingInterestEquityIssued
|
4100000 | |
CY2022Q4 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
218148000 | |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
14501000 | |
CY2023 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
1210000 | |
CY2023 | us-gaap |
Stock Issued During Period Value Issued For Services
StockIssuedDuringPeriodValueIssuedForServices
|
1186000 | |
CY2023 | us-gaap |
Stock Issued During Period Value Share Based Compensation
StockIssuedDuringPeriodValueShareBasedCompensation
|
4762000 | |
CY2023 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Before Reclassification Adjustments Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansBeforeReclassificationAdjustmentsTax
|
619000 | |
CY2023 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
-1225000 | |
CY2023 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
497000 | |
CY2023 | us-gaap |
Minority Interest Decrease From Distributions To Noncontrolling Interest Holders
MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
|
1666000 | |
CY2023Q4 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
237491000 | |
CY2020Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-5820000 | |
CY2020Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Defined Benefit Pension And Other Postretirement Plans Net Of Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
|
-8676000 | |
CY2020Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-14496000 | |
CY2021 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-538000 | |
CY2021 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
-2964000 | |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
14501000 | |
CY2023 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
1210000 | |
CY2023 | us-gaap |
Stock Issued During Period Value Issued For Services
StockIssuedDuringPeriodValueIssuedForServices
|
1186000 | |
CY2023 | us-gaap |
Stock Issued During Period Value Share Based Compensation
StockIssuedDuringPeriodValueShareBasedCompensation
|
4762000 | |
CY2023 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Before Reclassification Adjustments Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansBeforeReclassificationAdjustmentsTax
|
619000 | |
CY2023 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
-1225000 | |
CY2023 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
497000 | |
CY2023 | us-gaap |
Minority Interest Decrease From Distributions To Noncontrolling Interest Holders
MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
|
1666000 | |
CY2023Q4 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
237491000 | |
CY2020Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-5820000 | |
CY2020Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Defined Benefit Pension And Other Postretirement Plans Net Of Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
|
-8676000 | |
CY2020Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-14496000 | |
CY2021 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-538000 | |
CY2021 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
-2964000 | |
CY2021 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
2426000 | |
CY2021Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-6358000 | |
CY2021Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Defined Benefit Pension And Other Postretirement Plans Net Of Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
|
-5712000 | |
CY2021Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-12070000 | |
CY2022 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-5635000 | |
CY2022 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
291000 | |
CY2022 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
-5926000 | |
CY2022Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-11993000 | |
CY2022Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Defined Benefit Pension And Other Postretirement Plans Net Of Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
|
-6003000 | |
CY2022Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-17996000 | |
CY2023 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
497000 | |
CY2023 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
-1225000 | |
CY2023 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
1722000 | |
CY2023Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-11496000 | |
CY2023Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Defined Benefit Pension And Other Postretirement Plans Net Of Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
|
-4778000 | |
CY2023Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-16274000 | |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
14501000 | |
CY2022 | us-gaap |
Profit Loss
ProfitLoss
|
18263000 | |
CY2021 | us-gaap |
Profit Loss
ProfitLoss
|
1983000 | |
CY2023 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
12507000 | |
CY2022 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
10614000 | |
CY2021 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
9853000 | |
CY2023 | us-gaap |
Foreign Currency Transaction Gain Loss Unrealized
ForeignCurrencyTransactionGainLossUnrealized
|
1041000 | |
CY2022 | us-gaap |
Foreign Currency Transaction Gain Loss Unrealized
ForeignCurrencyTransactionGainLossUnrealized
|
1284000 | |
CY2021 | us-gaap |
Foreign Currency Transaction Gain Loss Unrealized
ForeignCurrencyTransactionGainLossUnrealized
|
-2047000 | |
CY2023 | us-gaap |
Business Combination Contingent Consideration Arrangements Change In Amount Of Contingent Consideration Liability1
BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
|
296000 | |
CY2022 | us-gaap |
Business Combination Contingent Consideration Arrangements Change In Amount Of Contingent Consideration Liability1
BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
|
-229000 | |
CY2021 | us-gaap |
Business Combination Contingent Consideration Arrangements Change In Amount Of Contingent Consideration Liability1
BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
|
704000 | |
CY2023 | ceco |
Additional Payments Of Contingent Consideration Related To Acquisitions Operating Activities
AdditionalPaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
0 | |
CY2022 | ceco |
Additional Payments Of Contingent Consideration Related To Acquisitions Operating Activities
AdditionalPaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
1007000 | |
CY2021 | ceco |
Additional Payments Of Contingent Consideration Related To Acquisitions Operating Activities
AdditionalPaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
587000 | |
CY2023 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
-110000 | |
CY2021 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
2426000 | |
CY2021Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-6358000 | |
CY2021Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Defined Benefit Pension And Other Postretirement Plans Net Of Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
|
-5712000 | |
CY2021Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-12070000 | |
CY2022 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-5635000 | |
CY2022 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
291000 | |
CY2022 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
-5926000 | |
CY2022Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-11993000 | |
CY2022Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Defined Benefit Pension And Other Postretirement Plans Net Of Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
|
-6003000 | |
CY2022Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-17996000 | |
CY2023 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
497000 | |
CY2023 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent
|
-1225000 | |
CY2023 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
1722000 | |
CY2023Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-11496000 | |
CY2023Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Defined Benefit Pension And Other Postretirement Plans Net Of Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
|
-4778000 | |
CY2023Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-16274000 | |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
14501000 | |
CY2022 | us-gaap |
Profit Loss
ProfitLoss
|
18263000 | |
CY2021 | us-gaap |
Profit Loss
ProfitLoss
|
1983000 | |
CY2023 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
12507000 | |
CY2022 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
10614000 | |
CY2021 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
9853000 | |
CY2023 | us-gaap |
Foreign Currency Transaction Gain Loss Unrealized
ForeignCurrencyTransactionGainLossUnrealized
|
1041000 | |
CY2022 | us-gaap |
Foreign Currency Transaction Gain Loss Unrealized
ForeignCurrencyTransactionGainLossUnrealized
|
1284000 | |
CY2021 | us-gaap |
Foreign Currency Transaction Gain Loss Unrealized
ForeignCurrencyTransactionGainLossUnrealized
|
-2047000 | |
CY2022 | us-gaap |
Business Combination Contingent Consideration Arrangements Change In Amount Of Contingent Consideration Liability1
BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
|
-229000 | |
CY2021 | us-gaap |
Business Combination Contingent Consideration Arrangements Change In Amount Of Contingent Consideration Liability1
BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
|
704000 | |
CY2023 | ceco |
Additional Payments Of Contingent Consideration Related To Acquisitions Operating Activities
AdditionalPaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
0 | |
CY2022 | ceco |
Additional Payments Of Contingent Consideration Related To Acquisitions Operating Activities
AdditionalPaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
1007000 | |
CY2021 | ceco |
Additional Payments Of Contingent Consideration Related To Acquisitions Operating Activities
AdditionalPaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
587000 | |
CY2023 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
-110000 | |
CY2022 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
-10000 | |
CY2021 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
83000 | |
CY2023 | us-gaap |
Amortization Of Debt Discount Premium
AmortizationOfDebtDiscountPremium
|
427000 | |
CY2022 | us-gaap |
Amortization Of Debt Discount Premium
AmortizationOfDebtDiscountPremium
|
371000 | |
CY2021 | us-gaap |
Amortization Of Debt Discount Premium
AmortizationOfDebtDiscountPremium
|
404000 | |
CY2023 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
4533000 | |
CY2022 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
3895000 | |
CY2021 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
3335000 | |
CY2023 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
1593000 | |
CY2022 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
1340000 | |
CY2021 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
688000 | |
CY2023 | ceco |
Inventory Reserve Expense Benefit
InventoryReserveExpenseBenefit
|
1099000 | |
CY2022 | ceco |
Inventory Reserve Expense Benefit
InventoryReserveExpenseBenefit
|
140000 | |
CY2021 | ceco |
Inventory Reserve Expense Benefit
InventoryReserveExpenseBenefit
|
82000 | |
CY2023 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-118000 | |
CY2022 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
-10000 | |
CY2021 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
83000 | |
CY2023 | us-gaap |
Amortization Of Debt Discount Premium
AmortizationOfDebtDiscountPremium
|
427000 | |
CY2022 | us-gaap |
Amortization Of Debt Discount Premium
AmortizationOfDebtDiscountPremium
|
371000 | |
CY2021 | us-gaap |
Amortization Of Debt Discount Premium
AmortizationOfDebtDiscountPremium
|
404000 | |
CY2023 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
4533000 | |
CY2022 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
3895000 | |
CY2021 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
3335000 | |
CY2023 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
1593000 | |
CY2022 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
1340000 | |
CY2021 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
688000 | |
CY2023 | ceco |
Inventory Reserve Expense Benefit
InventoryReserveExpenseBenefit
|
1099000 | |
CY2022 | ceco |
Inventory Reserve Expense Benefit
InventoryReserveExpenseBenefit
|
140000 | |
CY2021 | ceco |
Inventory Reserve Expense Benefit
InventoryReserveExpenseBenefit
|
82000 | |
CY2023 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-118000 | |
CY2022 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-39000 | |
CY2021 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
0 | |
CY2023 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
26851000 | |
CY2022 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
6751000 | |
CY2021 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
13165000 | |
CY2023 | ceco |
Contract With Customer Asset Increase Decrease In Cost In Excess Of Billing On Uncompleted Contract
ContractWithCustomerAssetIncreaseDecreaseInCostInExcessOfBillingOnUncompletedContract
|
-5040000 | |
CY2022 | ceco |
Contract With Customer Asset Increase Decrease In Cost In Excess Of Billing On Uncompleted Contract
ContractWithCustomerAssetIncreaseDecreaseInCostInExcessOfBillingOnUncompletedContract
|
16851000 | |
CY2021 | ceco |
Contract With Customer Asset Increase Decrease In Cost In Excess Of Billing On Uncompleted Contract
ContractWithCustomerAssetIncreaseDecreaseInCostInExcessOfBillingOnUncompletedContract
|
7007000 | |
CY2023 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
6896000 | |
CY2022 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
6023000 | |
CY2021 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
203000 | |
CY2023 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-1196000 | |
CY2022 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-37000 | |
CY2021 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-5911000 | |
CY2023 | ceco |
Increase Decrease In Deferred Charges And Other Assets
IncreaseDecreaseInDeferredChargesAndOtherAssets
|
1420000 | |
CY2022 | ceco |
Increase Decrease In Deferred Charges And Other Assets
IncreaseDecreaseInDeferredChargesAndOtherAssets
|
-2478000 | |
CY2021 | ceco |
Increase Decrease In Deferred Charges And Other Assets
IncreaseDecreaseInDeferredChargesAndOtherAssets
|
-300000 | |
CY2023 | us-gaap |
Increase Decrease In Accounts Payable And Accrued Liabilities
IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
|
13852000 | |
CY2022 | us-gaap |
Increase Decrease In Accounts Payable And Accrued Liabilities
IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
|
19843000 | |
CY2021 | us-gaap |
Increase Decrease In Accounts Payable And Accrued Liabilities
IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
|
806000 | |
CY2023 | us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
8340000 | |
CY2022 | us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
2693000 | |
CY2021 | us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
-366000 | |
CY2023 | ceco |
Contract With Customer Liability Increase Decrease In Billing In Excess Of Cost Of Earnings
ContractWithCustomerLiabilityIncreaseDecreaseInBillingInExcessOfCostOfEarnings
|
21575000 | |
CY2022 | ceco |
Contract With Customer Liability Increase Decrease In Billing In Excess Of Cost Of Earnings
ContractWithCustomerLiabilityIncreaseDecreaseInBillingInExcessOfCostOfEarnings
|
4405000 | |
CY2021 | ceco |
Contract With Customer Liability Increase Decrease In Billing In Excess Of Cost Of Earnings
ContractWithCustomerLiabilityIncreaseDecreaseInBillingInExcessOfCostOfEarnings
|
8431000 | |
CY2023 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
-1976000 | |
CY2022 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
1424000 | |
CY2021 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
1047000 | |
CY2023 | us-gaap |
Increase Decrease In Other Operating Liabilities
IncreaseDecreaseInOtherOperatingLiabilities
|
-2120000 | |
CY2022 | us-gaap |
Increase Decrease In Other Operating Liabilities
IncreaseDecreaseInOtherOperatingLiabilities
|
-3680000 | |
CY2022 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-39000 | |
CY2021 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
0 | |
CY2023 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
26851000 | |
CY2021 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
13165000 | |
CY2023 | ceco |
Contract With Customer Asset Increase Decrease In Cost In Excess Of Billing On Uncompleted Contract
ContractWithCustomerAssetIncreaseDecreaseInCostInExcessOfBillingOnUncompletedContract
|
-5040000 | |
CY2022 | ceco |
Contract With Customer Asset Increase Decrease In Cost In Excess Of Billing On Uncompleted Contract
ContractWithCustomerAssetIncreaseDecreaseInCostInExcessOfBillingOnUncompletedContract
|
16851000 | |
CY2021 | ceco |
Contract With Customer Asset Increase Decrease In Cost In Excess Of Billing On Uncompleted Contract
ContractWithCustomerAssetIncreaseDecreaseInCostInExcessOfBillingOnUncompletedContract
|
7007000 | |
CY2023 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
6896000 | |
CY2022 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
6023000 | |
CY2021 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
203000 | |
CY2023 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-1196000 | |
CY2022 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-37000 | |
CY2021 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-5911000 | |
CY2023 | ceco |
Increase Decrease In Deferred Charges And Other Assets
IncreaseDecreaseInDeferredChargesAndOtherAssets
|
1420000 | |
CY2022 | ceco |
Increase Decrease In Deferred Charges And Other Assets
IncreaseDecreaseInDeferredChargesAndOtherAssets
|
-2478000 | |
CY2021 | ceco |
Increase Decrease In Deferred Charges And Other Assets
IncreaseDecreaseInDeferredChargesAndOtherAssets
|
-300000 | |
CY2023 | us-gaap |
Increase Decrease In Accounts Payable And Accrued Liabilities
IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
|
13852000 | |
CY2022 | us-gaap |
Increase Decrease In Accounts Payable And Accrued Liabilities
IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
|
19843000 | |
CY2021 | us-gaap |
Increase Decrease In Accounts Payable And Accrued Liabilities
IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
|
806000 | |
CY2023 | us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
8340000 | |
CY2022 | us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
2693000 | |
CY2021 | us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
-366000 | |
CY2023 | ceco |
Contract With Customer Liability Increase Decrease In Billing In Excess Of Cost Of Earnings
ContractWithCustomerLiabilityIncreaseDecreaseInBillingInExcessOfCostOfEarnings
|
21575000 | |
CY2022 | ceco |
Contract With Customer Liability Increase Decrease In Billing In Excess Of Cost Of Earnings
ContractWithCustomerLiabilityIncreaseDecreaseInBillingInExcessOfCostOfEarnings
|
4405000 | |
CY2021 | ceco |
Contract With Customer Liability Increase Decrease In Billing In Excess Of Cost Of Earnings
ContractWithCustomerLiabilityIncreaseDecreaseInBillingInExcessOfCostOfEarnings
|
8431000 | |
CY2023 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
-1976000 | |
CY2022 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
1424000 | |
CY2021 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
1047000 | |
CY2023 | us-gaap |
Increase Decrease In Other Operating Liabilities
IncreaseDecreaseInOtherOperatingLiabilities
|
-2120000 | |
CY2022 | us-gaap |
Increase Decrease In Other Operating Liabilities
IncreaseDecreaseInOtherOperatingLiabilities
|
-3680000 | |
CY2021 | us-gaap |
Increase Decrease In Other Operating Liabilities
IncreaseDecreaseInOtherOperatingLiabilities
|
-882000 | |
CY2023 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
44647000 | |
CY2022 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
29649000 | |
CY2021 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
13298000 | |
CY2023 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
8384000 | |
CY2022 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
3376000 | |
CY2021 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
2616000 | |
CY2023 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
0 | |
CY2022 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
19000 | |
CY2021 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
533000 | |
CY2023 | us-gaap |
Payments For Proceeds From Investments
PaymentsForProceedsFromInvestments
|
48102000 | |
CY2022 | us-gaap |
Payments For Proceeds From Investments
PaymentsForProceedsFromInvestments
|
44900000 | |
CY2021 | us-gaap |
Payments For Proceeds From Investments
PaymentsForProceedsFromInvestments
|
0 | |
CY2023 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-56486000 | |
CY2022 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-48257000 | |
CY2021 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-2083000 | |
CY2021 | us-gaap |
Increase Decrease In Other Operating Liabilities
IncreaseDecreaseInOtherOperatingLiabilities
|
-882000 | |
CY2023 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
44647000 | |
CY2022 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
29649000 | |
CY2021 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
13298000 | |
CY2023 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
8384000 | |
CY2022 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
3376000 | |
CY2021 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
2616000 | |
CY2023 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
0 | |
CY2022 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
19000 | |
CY2021 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
533000 | |
CY2023 | us-gaap |
Payments For Proceeds From Investments
PaymentsForProceedsFromInvestments
|
48102000 | |
CY2022 | us-gaap |
Payments For Proceeds From Investments
PaymentsForProceedsFromInvestments
|
44900000 | |
CY2021 | us-gaap |
Payments For Proceeds From Investments
PaymentsForProceedsFromInvestments
|
0 | |
CY2023 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-56486000 | |
CY2022 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-48257000 | |
CY2021 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-2083000 | |
CY2023 | ceco |
Borrowings On Revolving Line Of Credit
BorrowingsOnRevolvingLineOfCredit
|
106600000 | |
CY2022 | ceco |
Borrowings On Revolving Line Of Credit
BorrowingsOnRevolvingLineOfCredit
|
75200000 | |
CY2021 | ceco |
Borrowings On Revolving Line Of Credit
BorrowingsOnRevolvingLineOfCredit
|
51400000 | |
CY2023 | us-gaap |
Proceeds From Repayments Of Lines Of Credit
ProceedsFromRepaymentsOfLinesOfCredit
|
-150600000 | |
CY2022 | us-gaap |
Proceeds From Repayments Of Lines Of Credit
ProceedsFromRepaymentsOfLinesOfCredit
|
-35900000 | |
CY2021 | us-gaap |
Proceeds From Repayments Of Lines Of Credit
ProceedsFromRepaymentsOfLinesOfCredit
|
-57100000 | |
CY2023 | us-gaap |
Proceeds From Issuance Of Long Term Debt
ProceedsFromIssuanceOfLongTermDebt
|
75000000 | |
CY2022 | us-gaap |
Proceeds From Issuance Of Long Term Debt
ProceedsFromIssuanceOfLongTermDebt
|
11000000 | |
CY2021 | us-gaap |
Proceeds From Issuance Of Long Term Debt
ProceedsFromIssuanceOfLongTermDebt
|
0 | |
CY2023 | us-gaap |
Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
|
4985000 | |
CY2022 | us-gaap |
Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
|
3120000 | |
CY2021 | us-gaap |
Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
|
2738000 | |
CY2023 | us-gaap |
Repayments Of Short Term Debt
RepaymentsOfShortTermDebt
|
0 | |
CY2022 | us-gaap |
Repayments Of Short Term Debt
RepaymentsOfShortTermDebt
|
500000 | |
CY2021 | us-gaap |
Repayments Of Short Term Debt
RepaymentsOfShortTermDebt
|
0 | |
CY2023 | us-gaap |
Payments Of Financing Costs
PaymentsOfFinancingCosts
|
363000 | |
CY2022 | us-gaap |
Payments Of Financing Costs
PaymentsOfFinancingCosts
|
130000 | |
CY2021 | us-gaap |
Payments Of Financing Costs
PaymentsOfFinancingCosts
|
801000 | |
CY2023 | ceco |
Deferred Consideration Paid For Acquisitions
DeferredConsiderationPaidForAcquisitions
|
1247000 | |
CY2022 | ceco |
Deferred Consideration Paid For Acquisitions
DeferredConsiderationPaidForAcquisitions
|
0 | |
CY2021 | ceco |
Deferred Consideration Paid For Acquisitions
DeferredConsiderationPaidForAcquisitions
|
0 | |
CY2023 | ceco |
Payments On Capital Lease And Sale Leaseback Financing Liability
PaymentsOnCapitalLeaseAndSaleLeasebackFinancingLiability
|
907000 | |
CY2022 | ceco |
Payments On Capital Lease And Sale Leaseback Financing Liability
PaymentsOnCapitalLeaseAndSaleLeasebackFinancingLiability
|
600000 | |
CY2021 | ceco |
Payments On Capital Lease And Sale Leaseback Financing Liability
PaymentsOnCapitalLeaseAndSaleLeasebackFinancingLiability
|
603000 | |
CY2023 | ceco |
Payments Of Contingent Consideration Related To Acquisitions Operating Activities
PaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
2123000 | |
CY2022 | ceco |
Payments Of Contingent Consideration Related To Acquisitions Operating Activities
PaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
0 | |
CY2021 | ceco |
Payments Of Contingent Consideration Related To Acquisitions Operating Activities
PaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
823000 | |
CY2023 | us-gaap |
Proceeds From Issuance Of Shares Under Incentive And Share Based Compensation Plans Including Stock Options
ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
|
1435000 | |
CY2022 | us-gaap |
Proceeds From Issuance Of Shares Under Incentive And Share Based Compensation Plans Including Stock Options
ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
|
671000 | |
CY2021 | us-gaap |
Proceeds From Issuance Of Shares Under Incentive And Share Based Compensation Plans Including Stock Options
ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
|
230000 | |
CY2023 | ceco |
Borrowings On Revolving Line Of Credit
BorrowingsOnRevolvingLineOfCredit
|
106600000 | |
CY2022 | ceco |
Borrowings On Revolving Line Of Credit
BorrowingsOnRevolvingLineOfCredit
|
75200000 | |
CY2021 | ceco |
Borrowings On Revolving Line Of Credit
BorrowingsOnRevolvingLineOfCredit
|
51400000 | |
CY2023 | us-gaap |
Proceeds From Repayments Of Lines Of Credit
ProceedsFromRepaymentsOfLinesOfCredit
|
-150600000 | |
CY2022 | us-gaap |
Proceeds From Repayments Of Lines Of Credit
ProceedsFromRepaymentsOfLinesOfCredit
|
-35900000 | |
CY2021 | us-gaap |
Proceeds From Repayments Of Lines Of Credit
ProceedsFromRepaymentsOfLinesOfCredit
|
-57100000 | |
CY2023 | us-gaap |
Proceeds From Issuance Of Long Term Debt
ProceedsFromIssuanceOfLongTermDebt
|
75000000 | |
CY2022 | us-gaap |
Proceeds From Issuance Of Long Term Debt
ProceedsFromIssuanceOfLongTermDebt
|
11000000 | |
CY2021 | us-gaap |
Proceeds From Issuance Of Long Term Debt
ProceedsFromIssuanceOfLongTermDebt
|
0 | |
CY2023 | us-gaap |
Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
|
4985000 | |
CY2022 | us-gaap |
Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
|
3120000 | |
CY2021 | us-gaap |
Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
|
2738000 | |
CY2023 | us-gaap |
Repayments Of Short Term Debt
RepaymentsOfShortTermDebt
|
0 | |
CY2022 | us-gaap |
Repayments Of Short Term Debt
RepaymentsOfShortTermDebt
|
500000 | |
CY2021 | us-gaap |
Repayments Of Short Term Debt
RepaymentsOfShortTermDebt
|
0 | |
CY2023 | us-gaap |
Payments Of Financing Costs
PaymentsOfFinancingCosts
|
363000 | |
CY2022 | us-gaap |
Payments Of Financing Costs
PaymentsOfFinancingCosts
|
130000 | |
CY2021 | us-gaap |
Payments Of Financing Costs
PaymentsOfFinancingCosts
|
801000 | |
CY2023 | ceco |
Deferred Consideration Paid For Acquisitions
DeferredConsiderationPaidForAcquisitions
|
1247000 | |
CY2022 | ceco |
Deferred Consideration Paid For Acquisitions
DeferredConsiderationPaidForAcquisitions
|
0 | |
CY2021 | ceco |
Deferred Consideration Paid For Acquisitions
DeferredConsiderationPaidForAcquisitions
|
0 | |
CY2023 | ceco |
Payments On Capital Lease And Sale Leaseback Financing Liability
PaymentsOnCapitalLeaseAndSaleLeasebackFinancingLiability
|
907000 | |
CY2022 | ceco |
Payments On Capital Lease And Sale Leaseback Financing Liability
PaymentsOnCapitalLeaseAndSaleLeasebackFinancingLiability
|
600000 | |
CY2021 | ceco |
Payments On Capital Lease And Sale Leaseback Financing Liability
PaymentsOnCapitalLeaseAndSaleLeasebackFinancingLiability
|
603000 | |
CY2023 | ceco |
Payments Of Contingent Consideration Related To Acquisitions Operating Activities
PaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
2123000 | |
CY2022 | ceco |
Payments Of Contingent Consideration Related To Acquisitions Operating Activities
PaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
0 | |
CY2021 | ceco |
Payments Of Contingent Consideration Related To Acquisitions Operating Activities
PaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities
|
823000 | |
CY2023 | us-gaap |
Proceeds From Issuance Of Shares Under Incentive And Share Based Compensation Plans Including Stock Options
ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
|
1435000 | |
CY2022 | us-gaap |
Proceeds From Issuance Of Shares Under Incentive And Share Based Compensation Plans Including Stock Options
ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
|
671000 | |
CY2021 | us-gaap |
Proceeds From Issuance Of Shares Under Incentive And Share Based Compensation Plans Including Stock Options
ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
|
230000 | |
CY2023 | us-gaap |
Payments To Minority Shareholders
PaymentsToMinorityShareholders
|
1666000 | |
CY2022 | us-gaap |
Payments To Minority Shareholders
PaymentsToMinorityShareholders
|
1425000 | |
CY2021 | us-gaap |
Payments To Minority Shareholders
PaymentsToMinorityShareholders
|
107000 | |
CY2023 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
0 | |
CY2022 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
7020000 | |
CY2021 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
5014000 | |
CY2023 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
21144000 | |
CY2022 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
38176000 | |
CY2021 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-15556000 | |
CY2023 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
-442000 | |
CY2022 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
-4978000 | |
CY2021 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
-1475000 | |
CY2023 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
8863000 | |
CY2022 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
14590000 | |
CY2021 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
-5816000 | |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
46585000 | |
CY2023 | us-gaap |
Payments To Minority Shareholders
PaymentsToMinorityShareholders
|
1666000 | |
CY2022 | us-gaap |
Payments To Minority Shareholders
PaymentsToMinorityShareholders
|
1425000 | |
CY2021 | us-gaap |
Payments To Minority Shareholders
PaymentsToMinorityShareholders
|
107000 | |
CY2023 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
0 | |
CY2022 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
7020000 | |
CY2021 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
5014000 | |
CY2023 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
21144000 | |
CY2022 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
38176000 | |
CY2021 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-15556000 | |
CY2023 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
-442000 | |
CY2022 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
-4978000 | |
CY2021 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
-1475000 | |
CY2023 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
8863000 | |
CY2022 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
14590000 | |
CY2021 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
-5816000 | |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
46585000 | |
CY2021Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
31995000 | |
CY2020Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
37811000 | |
CY2023Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
55448000 | |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
46585000 | |
CY2021Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
31995000 | |
CY2023 | us-gaap |
Interest Paid Net
InterestPaidNet
|
12098000 | |
CY2022 | us-gaap |
Interest Paid Net
InterestPaidNet
|
5007000 | |
CY2021 | us-gaap |
Interest Paid Net
InterestPaidNet
|
2146000 | |
CY2023 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
9916000 | |
CY2022 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
5378000 | |
CY2021 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
-2570000 | |
CY2023 | us-gaap |
Nature Of Operations
NatureOfOperations
|
<p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Nature of business</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">— CECO Environmental Corp. and its consolidated subsidiaries (“CECO,” the “Company,” “we,” “us,” or “our”) is a leading environmentally focused, diversified industrial company, serving the broad landscape of industrial air, industrial water and energy transition markets globally providing innovative technology and application expertise. CECO helps companies grow their business with safe, clean, and more efficient solutions that help protect people, the environment and industrial equipment. CECO solutions improve air and water quality, optimize emissions management, and increase the energy and process efficiency for highly engineered applications in power generation, midstream and downstream hydrocarbon processing and transport, chemical processing, electric vehicle production, polysilicon fabrication, semiconductor and electronics production, battery production and recycling, specialty metals, aluminum and steel production, beverage can manufacturing, and industrial and produced water and wastewater treatment, and a wide range of other industrial end markets</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p> | |
CY2023 | ceco |
Cash And Cash Equivalents Highly Liquid Investments Maximum Maturity Period
CashAndCashEquivalentsHighlyLiquidInvestmentsMaximumMaturityPeriod
|
P3M | |
CY2023 | ceco |
Employee Stock Purchase Plan Expense
EmployeeStockPurchasePlanExpense
|
200000 | |
CY2021Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
31995000 | |
CY2020Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
37811000 | |
CY2023Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
55448000 | |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
46585000 | |
CY2021Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
31995000 | |
CY2023 | us-gaap |
Interest Paid Net
InterestPaidNet
|
12098000 | |
CY2022 | us-gaap |
Interest Paid Net
InterestPaidNet
|
5007000 | |
CY2021 | us-gaap |
Interest Paid Net
InterestPaidNet
|
2146000 | |
CY2023 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
9916000 | |
CY2022 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
5378000 | |
CY2021 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
-2570000 | |
CY2023 | us-gaap |
Nature Of Operations
NatureOfOperations
|
<p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Nature of business</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">— CECO Environmental Corp. and its consolidated subsidiaries (“CECO,” the “Company,” “we,” “us,” or “our”) is a leading environmentally focused, diversified industrial company, serving the broad landscape of industrial air, industrial water and energy transition markets globally providing innovative technology and application expertise. CECO helps companies grow their business with safe, clean, and more efficient solutions that help protect people, the environment and industrial equipment. CECO solutions improve air and water quality, optimize emissions management, and increase the energy and process efficiency for highly engineered applications in power generation, midstream and downstream hydrocarbon processing and transport, chemical processing, electric vehicle production, polysilicon fabrication, semiconductor and electronics production, battery production and recycling, specialty metals, aluminum and steel production, beverage can manufacturing, and industrial and produced water and wastewater treatment, and a wide range of other industrial end markets</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p> | |
CY2023 | us-gaap |
Use Of Estimates
UseOfEstimates
|
<p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Use of estimates</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">—The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America (“GAAP”) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates. Significant estimates and assumptions reflected in the financial statements relate to and include, but are not limited to, the estimates of contracts' progress to completion used in the recognition of revenue over time, inventory valuation, the estimated useful lives of fixed assets and intangible assets, fair values of long-lived assets and goodwill, and deferred tax assets.</span></p> | |
CY2023 | us-gaap |
Use Of Estimates
UseOfEstimates
|
<p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Use of estimates</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">—The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America (“GAAP”) requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates. Significant estimates and assumptions reflected in the financial statements relate to and include, but are not limited to, the estimates of contracts' progress to completion used in the recognition of revenue over time, inventory valuation, the estimated useful lives of fixed assets and intangible assets, fair values of long-lived assets and goodwill, and deferred tax assets.</span></p> | |
CY2023 | ceco |
Cash And Cash Equivalents Highly Liquid Investments Maximum Maturity Period
CashAndCashEquivalentsHighlyLiquidInvestmentsMaximumMaturityPeriod
|
P3M | |
CY2023Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
54779000 | |
CY2022Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
45522000 | |
CY2023Q4 | us-gaap |
Restricted Cash And Cash Equivalents At Carrying Value
RestrictedCashAndCashEquivalentsAtCarryingValue
|
669000 | |
CY2022Q4 | us-gaap |
Restricted Cash And Cash Equivalents At Carrying Value
RestrictedCashAndCashEquivalentsAtCarryingValue
|
1063000 | |
CY2023Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
55448000 | |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
46585000 | |
CY2023 | ceco |
Accounts Receivables Payment Period From Invoice Date
AccountsReceivablesPaymentPeriodFromInvoiceDate
|
P30D | |
CY2023Q4 | ceco |
Contract Liabilities
ContractLiabilities
|
0.95 | |
CY2022Q4 | ceco |
Contract Liabilities
ContractLiabilities
|
0.75 | |
CY2021Q4 | ceco |
Contract Liabilities
ContractLiabilities
|
0.75 | |
CY2023 | us-gaap |
Loss On Contracts
LossOnContracts
|
0 | |
CY2023Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
54779000 | |
CY2022Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
45522000 | |
CY2023Q4 | us-gaap |
Restricted Cash And Cash Equivalents At Carrying Value
RestrictedCashAndCashEquivalentsAtCarryingValue
|
669000 | |
CY2022Q4 | us-gaap |
Restricted Cash And Cash Equivalents At Carrying Value
RestrictedCashAndCashEquivalentsAtCarryingValue
|
1063000 | |
CY2023Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
55448000 | |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
46585000 | |
CY2023 | ceco |
Accounts Receivables Payment Period From Invoice Date
AccountsReceivablesPaymentPeriodFromInvoiceDate
|
P30D | |
CY2022 | us-gaap |
Loss On Contracts
LossOnContracts
|
0 | |
CY2022 | ceco |
Employee Stock Purchase Plan Expense
EmployeeStockPurchasePlanExpense
|
100000 | |
CY2022Q1 | us-gaap |
Contract With Customer Asset Net Current
ContractWithCustomerAssetNetCurrent
|
51400000 | |
CY2022Q1 | ceco |
Estimated Earnings
EstimatedEarnings
|
28900000 | |
CY2023Q4 | us-gaap |
Accrued Liabilities Fair Value Disclosure
AccruedLiabilitiesFairValueDisclosure
|
4400000 | |
CY2022Q1 | us-gaap |
Contract With Customer Asset Net Current
ContractWithCustomerAssetNetCurrent
|
51400000 | |
CY2022Q1 | ceco |
Estimated Earnings
EstimatedEarnings
|
28900000 | |
CY2023Q4 | us-gaap |
Accrued Liabilities Fair Value Disclosure
AccruedLiabilitiesFairValueDisclosure
|
4400000 | |
CY2023Q4 | ceco |
Contract Liabilities
ContractLiabilities
|
0.95 | |
CY2022Q4 | ceco |
Contract Liabilities
ContractLiabilities
|
0.75 | |
CY2021Q4 | ceco |
Contract Liabilities
ContractLiabilities
|
0.75 | |
CY2023 | us-gaap |
Loss On Contracts
LossOnContracts
|
0 | |
CY2022 | us-gaap |
Loss On Contracts
LossOnContracts
|
0 | |
CY2022 | ceco |
Employee Stock Purchase Plan Expense
EmployeeStockPurchasePlanExpense
|
100000 | |
CY2022 | us-gaap |
Foreign Currency Transaction Gain Loss Realized
ForeignCurrencyTransactionGainLossRealized
|
6300000 | |
CY2021 | us-gaap |
Foreign Currency Transaction Gain Loss Realized
ForeignCurrencyTransactionGainLossRealized
|
-3100000 | |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
12911000 | |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
17417000 | |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
1426000 | |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
34665000 | |
CY2022 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
34672000 | |
CY2021 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
35346000 | |
CY2023 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
669000 | |
CY2022 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
333000 | |
CY2021 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
249000 | |
CY2023 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35334000 | |
CY2022 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35005000 | |
CY2021 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35595000 | |
CY2023 | us-gaap |
Antidilutive Securities Excluded From Computation Of Earnings Per Share Amount
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
|
0 | |
CY2022 | us-gaap |
Antidilutive Securities Excluded From Computation Of Earnings Per Share Amount
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
|
1100000 | |
CY2021 | us-gaap |
Antidilutive Securities Excluded From Computation Of Earnings Per Share Amount
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
|
1800000 | |
CY2023 | us-gaap |
Foreign Currency Transaction Gain Loss Realized
ForeignCurrencyTransactionGainLossRealized
|
1200000 | |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
12911000 | |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
17417000 | |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
1426000 | |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
34665000 | |
CY2022 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
34672000 | |
CY2021 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
35346000 | |
CY2023 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
669000 | |
CY2022 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
333000 | |
CY2021 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
249000 | |
CY2023 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35334000 | |
CY2022 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35005000 | |
CY2021 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35595000 | |
CY2023 | us-gaap |
Antidilutive Securities Excluded From Computation Of Earnings Per Share Amount
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
|
0 | |
CY2022 | us-gaap |
Antidilutive Securities Excluded From Computation Of Earnings Per Share Amount
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
|
1100000 | |
CY2021 | us-gaap |
Antidilutive Securities Excluded From Computation Of Earnings Per Share Amount
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
|
1800000 | |
CY2023 | us-gaap |
Foreign Currency Transaction Gain Loss Realized
ForeignCurrencyTransactionGainLossRealized
|
1200000 | |
CY2022 | us-gaap |
Foreign Currency Transaction Gain Loss Realized
ForeignCurrencyTransactionGainLossRealized
|
6300000 | |
CY2021 | us-gaap |
Foreign Currency Transaction Gain Loss Realized
ForeignCurrencyTransactionGainLossRealized
|
-3100000 | |
CY2023Q4 | us-gaap |
Debt Weighted Average Interest Rate
DebtWeightedAverageInterestRate
|
0.0829 | |
CY2022Q4 | us-gaap |
Debt Weighted Average Interest Rate
DebtWeightedAverageInterestRate
|
0.0675 | |
CY2023Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
54800000 | |
CY2022Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
45500000 | |
CY2023 | ceco |
Cash Held Outside Domestic Territory
CashHeldOutsideDomesticTerritory
|
38500000 | |
CY2022 | ceco |
Cash Held Outside Domestic Territory
CashHeldOutsideDomesticTerritory
|
31700000 | |
CY2023Q4 | us-gaap |
Receivables Long Term Contracts Or Programs
ReceivablesLongTermContractsOrPrograms
|
119193000 | |
CY2022Q4 | us-gaap |
Receivables Long Term Contracts Or Programs
ReceivablesLongTermContractsOrPrograms
|
87306000 | |
CY2023Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
6460000 | |
CY2022Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
4220000 | |
CY2023Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
112733000 | |
CY2022Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
83086000 | |
CY2022Q1 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
75000000 | |
CY2023Q4 | ceco |
Contract Receivable Retainage1
ContractReceivableRetainage1
|
3200000 | |
CY2022Q4 | ceco |
Contract Receivable Retainage1
ContractReceivableRetainage1
|
1600000 | |
CY2022Q1 | ceco |
Contract Receivable Retainage1
ContractReceivableRetainage1
|
1800000 | |
CY2023 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
1600000 | |
CY2022 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
1300000 | |
CY2021 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
700000 | |
CY2023 | ceco |
Allowance For Doubtful Accounts Receivable Charge Offs Recoveries
AllowanceForDoubtfulAccountsReceivableChargeOffsRecoveries
|
-600000 | |
CY2022 | ceco |
Allowance For Doubtful Accounts Receivable Charge Offs Recoveries
AllowanceForDoubtfulAccountsReceivableChargeOffsRecoveries
|
600000 | |
CY2021 | ceco |
Allowance For Doubtful Accounts Receivable Charge Offs Recoveries
AllowanceForDoubtfulAccountsReceivableChargeOffsRecoveries
|
300000 | |
CY2023Q4 | us-gaap |
Debt Weighted Average Interest Rate
DebtWeightedAverageInterestRate
|
0.0829 | |
CY2022Q4 | us-gaap |
Debt Weighted Average Interest Rate
DebtWeightedAverageInterestRate
|
0.0675 | |
CY2023Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
54800000 | |
CY2022Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
45500000 | |
CY2023 | ceco |
Cash Held Outside Domestic Territory
CashHeldOutsideDomesticTerritory
|
38500000 | |
CY2022 | ceco |
Cash Held Outside Domestic Territory
CashHeldOutsideDomesticTerritory
|
31700000 | |
CY2023Q4 | us-gaap |
Receivables Long Term Contracts Or Programs
ReceivablesLongTermContractsOrPrograms
|
119193000 | |
CY2022Q4 | us-gaap |
Receivables Long Term Contracts Or Programs
ReceivablesLongTermContractsOrPrograms
|
87306000 | |
CY2023Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
6460000 | |
CY2022Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
4220000 | |
CY2023Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
112733000 | |
CY2022Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
83086000 | |
CY2022Q1 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
75000000 | |
CY2023Q4 | ceco |
Contract Receivable Retainage1
ContractReceivableRetainage1
|
3200000 | |
CY2022Q4 | ceco |
Contract Receivable Retainage1
ContractReceivableRetainage1
|
1600000 | |
CY2022Q1 | ceco |
Contract Receivable Retainage1
ContractReceivableRetainage1
|
1800000 | |
CY2023 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
1600000 | |
CY2022 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
1300000 | |
CY2021 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
700000 | |
CY2023 | ceco |
Allowance For Doubtful Accounts Receivable Charge Offs Recoveries
AllowanceForDoubtfulAccountsReceivableChargeOffsRecoveries
|
-600000 | |
CY2022 | ceco |
Allowance For Doubtful Accounts Receivable Charge Offs Recoveries
AllowanceForDoubtfulAccountsReceivableChargeOffsRecoveries
|
600000 | |
CY2021 | ceco |
Allowance For Doubtful Accounts Receivable Charge Offs Recoveries
AllowanceForDoubtfulAccountsReceivableChargeOffsRecoveries
|
300000 | |
CY2023 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
4300000 | |
CY2023Q4 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
25819000 | |
CY2022Q4 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
19774000 | |
CY2023Q4 | us-gaap |
Inventory Work In Process
InventoryWorkInProcess
|
9710000 | |
CY2022Q4 | us-gaap |
Inventory Work In Process
InventoryWorkInProcess
|
7183000 | |
CY2023Q4 | us-gaap |
Inventory Finished Goods
InventoryFinishedGoods
|
2368000 | |
CY2022Q4 | us-gaap |
Inventory Finished Goods
InventoryFinishedGoods
|
2436000 | |
CY2023Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
3808000 | |
CY2022Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
2867000 | |
CY2023Q4 | us-gaap |
Inventory Net
InventoryNet
|
34089000 | |
CY2022Q4 | us-gaap |
Inventory Net
InventoryNet
|
26526000 | |
CY2023 | us-gaap |
Inventory Write Down
InventoryWriteDown
|
1100000 | |
CY2022 | us-gaap |
Inventory Write Down
InventoryWriteDown
|
100000 | |
CY2021 | us-gaap |
Inventory Write Down
InventoryWriteDown
|
100000 | |
CY2023 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
300000 | |
CY2022 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
0 | |
CY2021 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
900000 | |
CY2023 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
4300000 | |
CY2022 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
3900000 | |
CY2023Q4 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
25819000 | |
CY2022Q4 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
19774000 | |
CY2023Q4 | us-gaap |
Inventory Work In Process
InventoryWorkInProcess
|
9710000 | |
CY2022Q4 | us-gaap |
Inventory Work In Process
InventoryWorkInProcess
|
7183000 | |
CY2023Q4 | us-gaap |
Inventory Finished Goods
InventoryFinishedGoods
|
2368000 | |
CY2022Q4 | us-gaap |
Inventory Finished Goods
InventoryFinishedGoods
|
2436000 | |
CY2023Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
3808000 | |
CY2022Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
2867000 | |
CY2023Q4 | us-gaap |
Inventory Net
InventoryNet
|
34089000 | |
CY2022Q4 | us-gaap |
Inventory Net
InventoryNet
|
26526000 | |
CY2023 | us-gaap |
Inventory Write Down
InventoryWriteDown
|
1100000 | |
CY2022 | us-gaap |
Inventory Write Down
InventoryWriteDown
|
100000 | |
CY2021 | us-gaap |
Inventory Write Down
InventoryWriteDown
|
100000 | |
CY2023 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
300000 | |
CY2022 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
0 | |
CY2021 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
900000 | |
CY2022 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
3900000 | |
CY2021 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
3300000 | |
CY2023Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
45648000 | |
CY2022Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
45507000 | |
CY2023Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
19411000 | |
CY2022Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
24679000 | |
CY2023Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
26237000 | |
CY2022Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
20828000 | |
CY2023 | us-gaap |
Depreciation
Depreciation
|
5100000 | |
CY2022 | us-gaap |
Depreciation
Depreciation
|
3600000 | |
CY2021 | us-gaap |
Depreciation
Depreciation
|
3200000 | |
CY2021Q4 | us-gaap |
Goodwill
Goodwill
|
161183000 | |
CY2022 | us-gaap |
Goodwill Purchase Accounting Adjustments
GoodwillPurchaseAccountingAdjustments
|
23312000 | |
CY2022 | us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
-1298000 | |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
183197000 | |
CY2023 | us-gaap |
Goodwill Purchase Accounting Adjustments
GoodwillPurchaseAccountingAdjustments
|
27152000 | |
CY2023 | us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
977000 | |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
211326000 | |
CY2023Q4 | us-gaap |
Goodwill Gross
GoodwillGross
|
272000000 | |
CY2022Q4 | us-gaap |
Goodwill Gross
GoodwillGross
|
243900000 | |
CY2017Q4 | us-gaap |
Goodwill Impaired Accumulated Impairment Loss
GoodwillImpairedAccumulatedImpairmentLoss
|
60700000 | |
CY2022Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9508000 | |
CY2021Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9629000 | |
CY2023 | us-gaap |
Indefinite Lived Intangible Assets Foreign Currency Translation Gain Loss
IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss
|
62000 | |
CY2022 | us-gaap |
Indefinite Lived Intangible Assets Foreign Currency Translation Gain Loss
IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss
|
-121000 | |
CY2023Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9570000 | |
CY2022Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9508000 | |
CY2023 | us-gaap |
Goodwill Impairment Loss
GoodwillImpairmentLoss
|
0 | |
CY2022 | us-gaap |
Goodwill Impairment Loss
GoodwillImpairmentLoss
|
0 | |
CY2021 | us-gaap |
Goodwill Impairment Loss
GoodwillImpairmentLoss
|
0 | |
CY2021 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
3300000 | |
CY2023 | us-gaap |
Employee Service Share Based Compensation Tax Benefit From Compensation Expense
EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
|
800000 | |
CY2022 | us-gaap |
Employee Service Share Based Compensation Tax Benefit From Compensation Expense
EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
|
500000 | |
CY2021 | us-gaap |
Employee Service Share Based Compensation Tax Benefit From Compensation Expense
EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
|
800000 | |
CY2023 | ceco |
Employee Stock Purchase Plan Discount From Market Price
EmployeeStockPurchasePlanDiscountFromMarketPrice
|
0.15 | |
CY2023 | ceco |
Share Based Compensation Arrangement By Share Based Payment Award Employees Offering Dates Intervals
ShareBasedCompensationArrangementByShareBasedPaymentAwardEmployeesOfferingDatesIntervals
|
P6M | |
CY2023Q4 | ceco |
Employee Stock Purchase Plan Number Of Shares Authorized
EmployeeStockPurchasePlanNumberOfSharesAuthorized
|
1300000 | |
CY2023Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
45648000 | |
CY2022Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
45507000 | |
CY2023Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
19411000 | |
CY2022Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
24679000 | |
CY2023Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
26237000 | |
CY2022Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
20828000 | |
CY2023 | us-gaap |
Depreciation
Depreciation
|
5100000 | |
CY2022 | us-gaap |
Depreciation
Depreciation
|
3600000 | |
CY2021 | us-gaap |
Depreciation
Depreciation
|
3200000 | |
CY2021Q4 | us-gaap |
Goodwill
Goodwill
|
161183000 | |
CY2022 | us-gaap |
Goodwill Purchase Accounting Adjustments
GoodwillPurchaseAccountingAdjustments
|
23312000 | |
CY2022 | us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
-1298000 | |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
183197000 | |
CY2023 | us-gaap |
Goodwill Purchase Accounting Adjustments
GoodwillPurchaseAccountingAdjustments
|
27152000 | |
CY2023 | us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
977000 | |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
211326000 | |
CY2023Q4 | us-gaap |
Goodwill Gross
GoodwillGross
|
272000000 | |
CY2022Q4 | us-gaap |
Goodwill Gross
GoodwillGross
|
243900000 | |
CY2017Q4 | us-gaap |
Goodwill Impaired Accumulated Impairment Loss
GoodwillImpairedAccumulatedImpairmentLoss
|
60700000 | |
CY2022Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9508000 | |
CY2021Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9629000 | |
CY2023 | us-gaap |
Indefinite Lived Intangible Assets Foreign Currency Translation Gain Loss
IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss
|
62000 | |
CY2022 | us-gaap |
Indefinite Lived Intangible Assets Foreign Currency Translation Gain Loss
IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss
|
-121000 | |
CY2023Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9570000 | |
CY2022Q4 | us-gaap |
Indefinite Lived Intangible Assets Excluding Goodwill
IndefiniteLivedIntangibleAssetsExcludingGoodwill
|
9508000 | |
CY2023 | us-gaap |
Goodwill Impairment Loss
GoodwillImpairmentLoss
|
0 | |
CY2022 | us-gaap |
Goodwill Impairment Loss
GoodwillImpairmentLoss
|
0 | |
CY2021 | us-gaap |
Goodwill Impairment Loss
GoodwillImpairmentLoss
|
0 | |
CY2023 | us-gaap |
Employee Service Share Based Compensation Tax Benefit From Compensation Expense
EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
|
800000 | |
CY2022 | us-gaap |
Employee Service Share Based Compensation Tax Benefit From Compensation Expense
EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
|
500000 | |
CY2021 | us-gaap |
Employee Service Share Based Compensation Tax Benefit From Compensation Expense
EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
|
800000 | |
CY2023 | ceco |
Employee Stock Purchase Plan Discount From Market Price
EmployeeStockPurchasePlanDiscountFromMarketPrice
|
0.15 | |
CY2023 | ceco |
Share Based Compensation Arrangement By Share Based Payment Award Employees Offering Dates Intervals
ShareBasedCompensationArrangementByShareBasedPaymentAwardEmployeesOfferingDatesIntervals
|
P6M | |
CY2023Q4 | ceco |
Employee Stock Purchase Plan Number Of Shares Authorized
EmployeeStockPurchasePlanNumberOfSharesAuthorized
|
1300000 | |
CY2023 | ceco |
Employee Stock Purchase Plan Offer Period
EmployeeStockPurchasePlanOfferPeriod
|
P10Y | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
132999000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
82538000 | |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
109916000 | |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
74665000 | |
CY2023 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
7400000 | |
CY2022 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
7000000 | |
CY2021 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
6700000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Next Twelve Months
FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
|
8600000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Two
FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
|
7600000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Three
FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
|
6200000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Four
FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
|
6000000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Five
FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
|
5600000 | |
CY2023Q4 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
11278000 | |
CY2022Q4 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
9577000 | |
CY2023Q4 | us-gaap |
Product Warranty Accrual Classified Current
ProductWarrantyAccrualClassifiedCurrent
|
5105000 | |
CY2022Q4 | us-gaap |
Product Warranty Accrual Classified Current
ProductWarrantyAccrualClassifiedCurrent
|
3691000 | |
CY2023Q4 | ceco |
Contract Liability Current
ContractLiabilityCurrent
|
7875000 | |
CY2022Q4 | ceco |
Contract Liability Current
ContractLiabilityCurrent
|
4516000 | |
CY2023Q4 | ceco |
Lease Liabilities Current
LeaseLiabilitiesCurrent
|
4278000 | |
CY2022Q4 | ceco |
Lease Liabilities Current
LeaseLiabilitiesCurrent
|
3228000 | |
CY2023Q4 | us-gaap |
Other Accounts Payable And Accrued Liabilities
OtherAccountsPayableAndAccruedLiabilities
|
15765000 | |
CY2022Q4 | us-gaap |
Other Accounts Payable And Accrued Liabilities
OtherAccountsPayableAndAccruedLiabilities
|
12779000 | |
CY2023Q4 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
44301000 | |
CY2022Q4 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
33791000 | |
CY2023 | ceco |
Employee Stock Purchase Plan Offer Period
EmployeeStockPurchasePlanOfferPeriod
|
P10Y | |
CY2023Q4 | ceco |
Employee Stock Purchase Plan Number Of Shares Available For Grant
EmployeeStockPurchasePlanNumberOfSharesAvailableForGrant
|
1200000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
132999000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
82538000 | |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
109916000 | |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
74665000 | |
CY2023 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
7400000 | |
CY2022 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
7000000 | |
CY2021 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
6700000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Next Twelve Months
FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
|
8600000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Two
FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
|
7600000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Three
FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
|
6200000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Four
FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
|
6000000 | |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Five
FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
|
5600000 | |
CY2023Q4 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
11278000 | |
CY2022Q4 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
9577000 | |
CY2023Q4 | us-gaap |
Product Warranty Accrual Classified Current
ProductWarrantyAccrualClassifiedCurrent
|
5105000 | |
CY2022Q4 | us-gaap |
Product Warranty Accrual Classified Current
ProductWarrantyAccrualClassifiedCurrent
|
3691000 | |
CY2023Q4 | ceco |
Contract Liability Current
ContractLiabilityCurrent
|
7875000 | |
CY2022Q4 | ceco |
Contract Liability Current
ContractLiabilityCurrent
|
4516000 | |
CY2023Q4 | ceco |
Lease Liabilities Current
LeaseLiabilitiesCurrent
|
4278000 | |
CY2022Q4 | ceco |
Lease Liabilities Current
LeaseLiabilitiesCurrent
|
3228000 | |
CY2023Q4 | us-gaap |
Other Accounts Payable And Accrued Liabilities
OtherAccountsPayableAndAccruedLiabilities
|
15765000 | |
CY2022Q4 | us-gaap |
Other Accounts Payable And Accrued Liabilities
OtherAccountsPayableAndAccruedLiabilities
|
12779000 | |
CY2023Q4 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
44301000 | |
CY2022Q4 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
33791000 | |
CY2023Q4 | ceco |
Employee Stock Purchase Plan Number Of Shares Available For Grant
EmployeeStockPurchasePlanNumberOfSharesAvailableForGrant
|
1200000 | |
CY2023 | ceco |
Employee Stock Purchase Plan Expense
EmployeeStockPurchasePlanExpense
|
200000 | |
CY2022Q4 | ceco |
Earnout Accrued
EarnoutAccrued
|
1200000 | |
CY2021Q4 | ceco |
Earnout Accrued
EarnoutAccrued
|
1037000 | |
CY2023 | ceco |
Fair Value Of Earnout Liabilities At Acquisition Date
FairValueOfEarnoutLiabilitiesAtAcquisitionDate
|
2800000 | |
CY2022 | ceco |
Fair Value Of Earnout Liabilities At Acquisition Date
FairValueOfEarnoutLiabilitiesAtAcquisitionDate
|
1429000 | |
CY2023 | ceco |
Fair Value Adjustments To Earnout Liabilities
FairValueAdjustmentsToEarnoutLiabilities
|
296000 | |
CY2022 | ceco |
Fair Value Adjustments To Earnout Liabilities
FairValueAdjustmentsToEarnoutLiabilities
|
-229000 | |
CY2023 | ceco |
Earnout Payments
EarnoutPayments
|
-2096000 | |
CY2022 | ceco |
Earnout Payments
EarnoutPayments
|
-1037000 | |
CY2023Q4 | ceco |
Earnout Accrued
EarnoutAccrued
|
2200000 | |
CY2022Q4 | ceco |
Earnout Accrued
EarnoutAccrued
|
1200000 | |
CY2023Q4 | us-gaap |
Accounts Payable And Other Accrued Liabilities Current
AccountsPayableAndOtherAccruedLiabilitiesCurrent
|
1115000 | |
CY2022Q4 | us-gaap |
Accounts Payable And Other Accrued Liabilities Current
AccountsPayableAndOtherAccruedLiabilitiesCurrent
|
1200000 | |
CY2023Q4 | us-gaap |
Accounts Payable And Other Accrued Liabilities
AccountsPayableAndOtherAccruedLiabilities
|
1085000 | |
CY2022Q4 | us-gaap |
Accounts Payable And Other Accrued Liabilities
AccountsPayableAndOtherAccruedLiabilities
|
0 | |
CY2023Q4 | us-gaap |
Long Term Debt
LongTermDebt
|
137283000 | |
CY2022Q4 | us-gaap |
Long Term Debt
LongTermDebt
|
111204000 | |
CY2023Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
10488000 | |
CY2022Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
3579000 | |
CY2023Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
126795000 | |
CY2022Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
107625000 | |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Next Twelve Months
LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
|
10500000 | |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Two
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
|
11300000 | |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Three
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
|
113000000 | |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Four
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
|
3800000 | |
CY2022Q4 | ceco |
Earnout Accrued
EarnoutAccrued
|
1200000 | |
CY2021Q4 | ceco |
Earnout Accrued
EarnoutAccrued
|
1037000 | |
CY2023 | ceco |
Fair Value Of Earnout Liabilities At Acquisition Date
FairValueOfEarnoutLiabilitiesAtAcquisitionDate
|
2800000 | |
CY2022 | ceco |
Fair Value Of Earnout Liabilities At Acquisition Date
FairValueOfEarnoutLiabilitiesAtAcquisitionDate
|
1429000 | |
CY2023 | ceco |
Fair Value Adjustments To Earnout Liabilities
FairValueAdjustmentsToEarnoutLiabilities
|
296000 | |
CY2022 | ceco |
Fair Value Adjustments To Earnout Liabilities
FairValueAdjustmentsToEarnoutLiabilities
|
-229000 | |
CY2023 | ceco |
Earnout Payments
EarnoutPayments
|
-2096000 | |
CY2022 | ceco |
Earnout Payments
EarnoutPayments
|
-1037000 | |
CY2023Q4 | ceco |
Earnout Accrued
EarnoutAccrued
|
2200000 | |
CY2022Q4 | ceco |
Earnout Accrued
EarnoutAccrued
|
1200000 | |
CY2023Q4 | us-gaap |
Accounts Payable And Other Accrued Liabilities Current
AccountsPayableAndOtherAccruedLiabilitiesCurrent
|
1115000 | |
CY2022Q4 | us-gaap |
Accounts Payable And Other Accrued Liabilities Current
AccountsPayableAndOtherAccruedLiabilitiesCurrent
|
1200000 | |
CY2023Q4 | us-gaap |
Accounts Payable And Other Accrued Liabilities
AccountsPayableAndOtherAccruedLiabilities
|
1085000 | |
CY2022Q4 | us-gaap |
Accounts Payable And Other Accrued Liabilities
AccountsPayableAndOtherAccruedLiabilities
|
0 | |
CY2023Q4 | us-gaap |
Long Term Debt
LongTermDebt
|
137283000 | |
CY2022Q4 | us-gaap |
Long Term Debt
LongTermDebt
|
111204000 | |
CY2023Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
10488000 | |
CY2022Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
3579000 | |
CY2023Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
126795000 | |
CY2022Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
107625000 | |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Next Twelve Months
LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
|
10500000 | |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Two
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
|
11300000 | |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Three
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
|
113000000 | |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Four
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
|
3800000 | |
CY2021 | ceco |
Employee Stock Purchase Plan Expense
EmployeeStockPurchasePlanExpense
|
100000 | |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period Gross
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
|
0 | |
CY2022 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period Gross
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
|
0 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period Gross
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
|
0 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1440000 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.3 | |
CY2022 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P4Y | |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
|
92000 | |
CY2023 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Forfeitures In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
|
13.43 | |
CY2023 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
101000 | |
CY2023 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
|
11.93 | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1247000 | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.09 | |
CY2023 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P3Y4M24D | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
|
11452000 | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
|
942000 | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
|
11.1 | |
CY2023 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Weighted Average Remaining Contractual Term1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
|
P3Y4M24D | |
CY2023Q4 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Intrinsic Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
|
8652000 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1514000 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.19 | |
CY2021 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P4Y10M24D | |
CY2022 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
|
32000 | |
CY2022 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Forfeitures In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
|
10.55 | |
CY2022 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
42000 | |
CY2022 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
|
8.15 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1440000 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.3 | |
CY2022 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P4Y | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
|
1766000 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
|
833000 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
|
11.47 | |
CY2022 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Weighted Average Remaining Contractual Term1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
|
P3Y7M6D | |
CY2022Q4 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Intrinsic Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
|
923000 | |
CY2020Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1554000 | |
CY2020Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.17 | |
CY2020 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P5Y9M18D | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
|
38000 | |
CY2021 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Forfeitures In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
|
10.63 | |
CY2021 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
2000 | |
CY2021 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
|
6.66 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1514000 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.19 | |
CY2021 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P4Y10M24D | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
|
0 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
|
603000 | |
CY2021 | ceco |
Employee Stock Purchase Plan Expense
EmployeeStockPurchasePlanExpense
|
100000 | |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period Gross
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
|
0 | |
CY2022 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period Gross
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
|
0 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Grants In Period Gross
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
|
0 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1440000 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.3 | |
CY2022 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P4Y | |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
|
92000 | |
CY2023 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Forfeitures In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
|
13.43 | |
CY2023 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
101000 | |
CY2023 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
|
11.93 | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1247000 | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.09 | |
CY2023 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P3Y4M24D | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
|
11452000 | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
|
942000 | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
|
11.1 | |
CY2023 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Weighted Average Remaining Contractual Term1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
|
P3Y4M24D | |
CY2023Q4 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Intrinsic Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
|
8652000 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1514000 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.19 | |
CY2021 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P4Y10M24D | |
CY2022 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
|
32000 | |
CY2022 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Forfeitures In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
|
10.55 | |
CY2022 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
42000 | |
CY2022 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
|
8.15 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1440000 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.3 | |
CY2022 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P4Y | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
|
1766000 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
|
833000 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
|
11.47 | |
CY2022 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Weighted Average Remaining Contractual Term1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
|
P3Y7M6D | |
CY2022Q4 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Intrinsic Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
|
923000 | |
CY2020Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1554000 | |
CY2020Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.17 | |
CY2020 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P5Y9M18D | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
|
38000 | |
CY2021 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Forfeitures In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
|
10.63 | |
CY2021 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
2000 | |
CY2021 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
|
6.66 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1514000 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
11.19 | |
CY2021 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P4Y10M24D | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
|
0 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
|
603000 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
|
11.39 | |
CY2021 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Weighted Average Remaining Contractual Term1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
|
P4Y | |
CY2021Q4 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Intrinsic Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
|
0 | |
CY2023 | us-gaap |
Proceeds From Stock Plans
ProceedsFromStockPlans
|
1200000 | |
CY2022 | us-gaap |
Proceeds From Stock Plans
ProceedsFromStockPlans
|
400000 | |
CY2021 | us-gaap |
Proceeds From Stock Plans
ProceedsFromStockPlans
|
0 | |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercises In Period Total Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
|
300000 | |
CY2022 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercises In Period Total Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
|
200000 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercises In Period Total Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
|
0 | |
CY2023 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Vested In Period Fair Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
|
5900000 | |
CY2022 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Vested In Period Fair Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
|
2300000 | |
CY2021 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Vested In Period Fair Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
|
2600000 | |
CY2022Q2 | us-gaap |
Stock Repurchase Program Remaining Authorized Repurchase Amount1
StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
|
20000000 | |
CY2022 | us-gaap |
Stock Repurchased And Retired During Period Shares
StockRepurchasedAndRetiredDuringPeriodShares
|
1032000 | |
CY2022Q4 | ceco |
Common Stock Cost
CommonStockCost
|
7000000 | |
CY2023 | us-gaap |
Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
|
0 | |
CY2021Q3 | us-gaap |
Stock Repurchase Program Remaining Authorized Repurchase Amount1
StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
|
5000000 | |
CY2021Q4 | us-gaap |
Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
|
700000 | |
CY2021Q3 | ceco |
Common Stock Cost
CommonStockCost
|
5000000 | |
CY2023Q4 | us-gaap |
Defined Benefit Plan Funded Status Of Plan
DefinedBenefitPlanFundedStatusOfPlan
|
4100000 | |
CY2022Q4 | us-gaap |
Defined Benefit Plan Funded Status Of Plan
DefinedBenefitPlanFundedStatusOfPlan
|
5500000 | |
CY2021Q4 | us-gaap |
Defined Benefit Plan Funded Status Of Plan
DefinedBenefitPlanFundedStatusOfPlan
|
5600000 | |
CY2023 | us-gaap |
Defined Benefit Plan Interest Cost
DefinedBenefitPlanInterestCost
|
1274000 | |
CY2022 | us-gaap |
Defined Benefit Plan Interest Cost
DefinedBenefitPlanInterestCost
|
877000 | |
CY2021 | us-gaap |
Defined Benefit Plan Interest Cost
DefinedBenefitPlanInterestCost
|
775000 | |
CY2023 | us-gaap |
Defined Benefit Plan Expected Return On Plan Assets
DefinedBenefitPlanExpectedReturnOnPlanAssets
|
1142000 | |
CY2022 | us-gaap |
Defined Benefit Plan Expected Return On Plan Assets
DefinedBenefitPlanExpectedReturnOnPlanAssets
|
1560000 | |
CY2021 | us-gaap |
Defined Benefit Plan Expected Return On Plan Assets
DefinedBenefitPlanExpectedReturnOnPlanAssets
|
1510000 | |
CY2023 | us-gaap |
Defined Benefit Plan Amortization Of Gains Losses
DefinedBenefitPlanAmortizationOfGainsLosses
|
-297000 | |
CY2022 | us-gaap |
Defined Benefit Plan Amortization Of Gains Losses
DefinedBenefitPlanAmortizationOfGainsLosses
|
-263000 | |
CY2021 | us-gaap |
Defined Benefit Plan Amortization Of Gains Losses
DefinedBenefitPlanAmortizationOfGainsLosses
|
-411000 | |
CY2023 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost
DefinedBenefitPlanNetPeriodicBenefitCost
|
429000 | |
CY2022 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost
DefinedBenefitPlanNetPeriodicBenefitCost
|
-420000 | |
CY2021 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost
DefinedBenefitPlanNetPeriodicBenefitCost
|
-324000 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
|
11.39 | |
CY2021 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Weighted Average Remaining Contractual Term1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
|
P4Y | |
CY2021Q4 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Exercisable Intrinsic Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
|
0 | |
CY2023 | us-gaap |
Proceeds From Stock Plans
ProceedsFromStockPlans
|
1200000 | |
CY2022 | us-gaap |
Proceeds From Stock Plans
ProceedsFromStockPlans
|
400000 | |
CY2021 | us-gaap |
Proceeds From Stock Plans
ProceedsFromStockPlans
|
0 | |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercises In Period Total Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
|
300000 | |
CY2022 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercises In Period Total Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
|
200000 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercises In Period Total Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
|
0 | |
CY2023 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Vested In Period Fair Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
|
5900000 | |
CY2022 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Vested In Period Fair Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
|
2300000 | |
CY2021 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Vested In Period Fair Value1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
|
2600000 | |
CY2022Q2 | us-gaap |
Stock Repurchase Program Remaining Authorized Repurchase Amount1
StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
|
20000000 | |
CY2022 | us-gaap |
Stock Repurchased And Retired During Period Shares
StockRepurchasedAndRetiredDuringPeriodShares
|
1032000 | |
CY2022Q4 | ceco |
Common Stock Cost
CommonStockCost
|
7000000 | |
CY2023 | us-gaap |
Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
|
0 | |
CY2021Q3 | us-gaap |
Stock Repurchase Program Remaining Authorized Repurchase Amount1
StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
|
5000000 | |
CY2021Q4 | us-gaap |
Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
|
700000 | |
CY2021Q3 | ceco |
Common Stock Cost
CommonStockCost
|
5000000 | |
CY2023Q4 | us-gaap |
Defined Benefit Plan Funded Status Of Plan
DefinedBenefitPlanFundedStatusOfPlan
|
4100000 | |
CY2022Q4 | us-gaap |
Defined Benefit Plan Funded Status Of Plan
DefinedBenefitPlanFundedStatusOfPlan
|
5500000 | |
CY2021Q4 | us-gaap |
Defined Benefit Plan Funded Status Of Plan
DefinedBenefitPlanFundedStatusOfPlan
|
5600000 | |
CY2023 | us-gaap |
Defined Benefit Plan Interest Cost
DefinedBenefitPlanInterestCost
|
1274000 | |
CY2022 | us-gaap |
Defined Benefit Plan Interest Cost
DefinedBenefitPlanInterestCost
|
877000 | |
CY2021 | us-gaap |
Defined Benefit Plan Interest Cost
DefinedBenefitPlanInterestCost
|
775000 | |
CY2023 | us-gaap |
Defined Benefit Plan Expected Return On Plan Assets
DefinedBenefitPlanExpectedReturnOnPlanAssets
|
1142000 | |
CY2022 | us-gaap |
Defined Benefit Plan Expected Return On Plan Assets
DefinedBenefitPlanExpectedReturnOnPlanAssets
|
1560000 | |
CY2021 | us-gaap |
Defined Benefit Plan Expected Return On Plan Assets
DefinedBenefitPlanExpectedReturnOnPlanAssets
|
1510000 | |
CY2023 | us-gaap |
Defined Benefit Plan Amortization Of Gains Losses
DefinedBenefitPlanAmortizationOfGainsLosses
|
-297000 | |
CY2022 | us-gaap |
Defined Benefit Plan Amortization Of Gains Losses
DefinedBenefitPlanAmortizationOfGainsLosses
|
-263000 | |
CY2021 | us-gaap |
Defined Benefit Plan Amortization Of Gains Losses
DefinedBenefitPlanAmortizationOfGainsLosses
|
-411000 | |
CY2023 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost
DefinedBenefitPlanNetPeriodicBenefitCost
|
429000 | |
CY2022 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost
DefinedBenefitPlanNetPeriodicBenefitCost
|
-420000 | |
CY2021 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost
DefinedBenefitPlanNetPeriodicBenefitCost
|
-324000 | |
CY2023 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Net Unamortized Gain Loss Arising During Period Net Of Tax
OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax
|
1548000 | |
CY2022 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Net Unamortized Gain Loss Arising During Period Net Of Tax
OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax
|
-651000 | |
CY2021 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Net Unamortized Gain Loss Arising During Period Net Of Tax
OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax
|
3432000 | |
CY2023 | us-gaap |
Other Comprehensive Income Loss Finalization Of Pension And Non Pension Postretirement Plan Valuation Net Of Tax
OtherComprehensiveIncomeLossFinalizationOfPensionAndNonPensionPostretirementPlanValuationNetOfTax
|
-297000 | |
CY2022 | us-gaap |
Other Comprehensive Income Loss Finalization Of Pension And Non Pension Postretirement Plan Valuation Net Of Tax
OtherComprehensiveIncomeLossFinalizationOfPensionAndNonPensionPostretirementPlanValuationNetOfTax
|
-263000 | |
CY2021 | us-gaap |
Other Comprehensive Income Loss Finalization Of Pension And Non Pension Postretirement Plan Valuation Net Of Tax
OtherComprehensiveIncomeLossFinalizationOfPensionAndNonPensionPostretirementPlanValuationNetOfTax
|
-411000 | |
CY2023 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Adjustment Before Reclassification Adjustments Net Of Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeReclassificationAdjustmentsNetOfTax
|
-1845000 | |
CY2022 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Adjustment Before Reclassification Adjustments Net Of Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeReclassificationAdjustmentsNetOfTax
|
388000 | |
CY2021 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Adjustment Before Reclassification Adjustments Net Of Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeReclassificationAdjustmentsNetOfTax
|
-3843000 | |
CY2023 | us-gaap |
Amount Recognized In Net Periodic Benefit Cost And Other Comprehensive Income Loss Before Tax
AmountRecognizedInNetPeriodicBenefitCostAndOtherComprehensiveIncomeLossBeforeTax
|
-1416000 | |
CY2022 | us-gaap |
Amount Recognized In Net Periodic Benefit Cost And Other Comprehensive Income Loss Before Tax
AmountRecognizedInNetPeriodicBenefitCostAndOtherComprehensiveIncomeLossBeforeTax
|
-32000 | |
CY2021 | us-gaap |
Amount Recognized In Net Periodic Benefit Cost And Other Comprehensive Income Loss Before Tax
AmountRecognizedInNetPeriodicBenefitCostAndOtherComprehensiveIncomeLossBeforeTax
|
-4167000 | |
CY2023Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
|
0.049 | |
CY2022Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
|
0.0255 | |
CY2021Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
|
0.021 | |
CY2023 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Expected Long Term Return On Assets
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
|
0.055 | |
CY2022 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Expected Long Term Return On Assets
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
|
0.055 | |
CY2021 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Expected Long Term Return On Assets
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
|
0.055 | |
CY2023Q4 | us-gaap |
Defined Benefit Plan Plan Assets Target Allocation Percentage
DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
|
1 | |
CY2023Q4 | us-gaap |
Defined Benefit Plan Weighted Average Asset Allocations
DefinedBenefitPlanWeightedAverageAssetAllocations
|
1 | |
CY2022Q4 | us-gaap |
Defined Benefit Plan Weighted Average Asset Allocations
DefinedBenefitPlanWeightedAverageAssetAllocations
|
1 | |
CY2023Q4 | us-gaap |
Defined Benefit Plan Fair Value Of Plan Assets
DefinedBenefitPlanFairValueOfPlanAssets
|
22646000 | |
CY2022Q4 | us-gaap |
Defined Benefit Plan Fair Value Of Plan Assets
DefinedBenefitPlanFairValueOfPlanAssets
|
21821000 | |
CY2023 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Net Unamortized Gain Loss Arising During Period Net Of Tax
OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax
|
1548000 | |
CY2022 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Net Unamortized Gain Loss Arising During Period Net Of Tax
OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax
|
-651000 | |
CY2021 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Net Unamortized Gain Loss Arising During Period Net Of Tax
OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax
|
3432000 | |
CY2023 | us-gaap |
Other Comprehensive Income Loss Finalization Of Pension And Non Pension Postretirement Plan Valuation Net Of Tax
OtherComprehensiveIncomeLossFinalizationOfPensionAndNonPensionPostretirementPlanValuationNetOfTax
|
-297000 | |
CY2022 | us-gaap |
Other Comprehensive Income Loss Finalization Of Pension And Non Pension Postretirement Plan Valuation Net Of Tax
OtherComprehensiveIncomeLossFinalizationOfPensionAndNonPensionPostretirementPlanValuationNetOfTax
|
-263000 | |
CY2021 | us-gaap |
Other Comprehensive Income Loss Finalization Of Pension And Non Pension Postretirement Plan Valuation Net Of Tax
OtherComprehensiveIncomeLossFinalizationOfPensionAndNonPensionPostretirementPlanValuationNetOfTax
|
-411000 | |
CY2023 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Adjustment Before Reclassification Adjustments Net Of Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeReclassificationAdjustmentsNetOfTax
|
-1845000 | |
CY2022 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Adjustment Before Reclassification Adjustments Net Of Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeReclassificationAdjustmentsNetOfTax
|
388000 | |
CY2021 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Adjustment Before Reclassification Adjustments Net Of Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeReclassificationAdjustmentsNetOfTax
|
-3843000 | |
CY2023 | us-gaap |
Amount Recognized In Net Periodic Benefit Cost And Other Comprehensive Income Loss Before Tax
AmountRecognizedInNetPeriodicBenefitCostAndOtherComprehensiveIncomeLossBeforeTax
|
-1416000 | |
CY2022 | us-gaap |
Amount Recognized In Net Periodic Benefit Cost And Other Comprehensive Income Loss Before Tax
AmountRecognizedInNetPeriodicBenefitCostAndOtherComprehensiveIncomeLossBeforeTax
|
-32000 | |
CY2021 | us-gaap |
Amount Recognized In Net Periodic Benefit Cost And Other Comprehensive Income Loss Before Tax
AmountRecognizedInNetPeriodicBenefitCostAndOtherComprehensiveIncomeLossBeforeTax
|
-4167000 | |
CY2023Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
|
0.049 | |
CY2022Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
|
0.0255 | |
CY2021Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
|
0.021 | |
CY2023 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Expected Long Term Return On Assets
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
|
0.055 | |
CY2022 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Expected Long Term Return On Assets
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
|
0.055 | |
CY2021 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Expected Long Term Return On Assets
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
|
0.055 | |
CY2023Q4 | us-gaap |
Defined Benefit Plan Plan Assets Target Allocation Percentage
DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
|
1 | |
CY2023Q4 | us-gaap |
Defined Benefit Plan Weighted Average Asset Allocations
DefinedBenefitPlanWeightedAverageAssetAllocations
|
1 | |
CY2022Q4 | us-gaap |
Defined Benefit Plan Weighted Average Asset Allocations
DefinedBenefitPlanWeightedAverageAssetAllocations
|
1 | |
CY2023Q4 | us-gaap |
Defined Benefit Plan Fair Value Of Plan Assets
DefinedBenefitPlanFairValueOfPlanAssets
|
22646000 | |
CY2022Q4 | us-gaap |
Defined Benefit Plan Fair Value Of Plan Assets
DefinedBenefitPlanFairValueOfPlanAssets
|
21821000 | |
CY2023Q4 | us-gaap |
Multiemployer Plan Pension Significant Accumulated Benefit Obligation
MultiemployerPlanPensionSignificantAccumulatedBenefitObligation
|
0 | |
CY2023 | us-gaap |
Multiemployer Plan Pension Significant Plan Contribution
MultiemployerPlanPensionSignificantPlanContribution
|
500000 | |
CY2022 | us-gaap |
Multiemployer Plan Pension Significant Plan Contribution
MultiemployerPlanPensionSignificantPlanContribution
|
400000 | |
CY2021 | us-gaap |
Multiemployer Plan Pension Significant Plan Contribution
MultiemployerPlanPensionSignificantPlanContribution
|
600000 | |
CY2023 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
2000000 | |
CY2022 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
1500000 | |
CY2021 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
900000 | |
CY2023 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
4643000 | |
CY2022 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
3558000 | |
CY2021 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
3232000 | |
CY2023 | us-gaap |
Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
|
232000 | |
CY2022 | us-gaap |
Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
|
309000 | |
CY2021 | us-gaap |
Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
|
308000 | |
CY2023 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
289000 | |
CY2022 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
289000 | |
CY2021 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
315000 | |
CY2023 | ceco |
Finance Lease Cost
FinanceLeaseCost
|
521000 | |
CY2022 | ceco |
Finance Lease Cost
FinanceLeaseCost
|
598000 | |
CY2021 | ceco |
Finance Lease Cost
FinanceLeaseCost
|
623000 | |
CY2023 | us-gaap |
Lease Cost
LeaseCost
|
5164000 | |
CY2022 | us-gaap |
Lease Cost
LeaseCost
|
4156000 | |
CY2021 | us-gaap |
Lease Cost
LeaseCost
|
3855000 | |
CY2023 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
4567000 | |
CY2022 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
3637000 | |
CY2021 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
3171000 | |
CY2023 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
289000 | |
CY2022 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
289000 | |
CY2023Q4 | us-gaap |
Multiemployer Plan Pension Significant Accumulated Benefit Obligation
MultiemployerPlanPensionSignificantAccumulatedBenefitObligation
|
0 | |
CY2023 | us-gaap |
Multiemployer Plan Pension Significant Plan Contribution
MultiemployerPlanPensionSignificantPlanContribution
|
500000 | |
CY2022 | us-gaap |
Multiemployer Plan Pension Significant Plan Contribution
MultiemployerPlanPensionSignificantPlanContribution
|
400000 | |
CY2021 | us-gaap |
Multiemployer Plan Pension Significant Plan Contribution
MultiemployerPlanPensionSignificantPlanContribution
|
600000 | |
CY2023 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
2000000 | |
CY2022 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
1500000 | |
CY2021 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
900000 | |
CY2023 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
4643000 | |
CY2022 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
3558000 | |
CY2021 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
3232000 | |
CY2023 | us-gaap |
Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
|
232000 | |
CY2022 | us-gaap |
Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
|
309000 | |
CY2021 | us-gaap |
Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
|
308000 | |
CY2023 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
289000 | |
CY2022 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
289000 | |
CY2021 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
315000 | |
CY2023 | ceco |
Finance Lease Cost
FinanceLeaseCost
|
521000 | |
CY2022 | ceco |
Finance Lease Cost
FinanceLeaseCost
|
598000 | |
CY2021 | ceco |
Finance Lease Cost
FinanceLeaseCost
|
623000 | |
CY2023 | us-gaap |
Lease Cost
LeaseCost
|
5164000 | |
CY2022 | us-gaap |
Lease Cost
LeaseCost
|
4156000 | |
CY2021 | us-gaap |
Lease Cost
LeaseCost
|
3855000 | |
CY2023 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
4567000 | |
CY2022 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
3637000 | |
CY2021 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
3171000 | |
CY2023 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
289000 | |
CY2022 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
289000 | |
CY2021 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
315000 | |
CY2023 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
907000 | |
CY2022 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
600000 | |
CY2021 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
603000 | |
CY2023 | us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
7697000 | |
CY2022 | us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
3487000 | |
CY2021 | us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
2206000 | |
CY2021Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
16256000 | |
CY2022Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
11373000 | |
CY2023Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
4278000 | |
CY2022Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
3228000 | |
CY2023Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
11417000 | |
CY2022Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
8453000 | |
CY2023Q4 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
15695000 | |
CY2022Q4 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
11681000 | |
CY2023Q4 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
2097000 | |
CY2022Q4 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
2329000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
|
693000 | |
CY2022Q4 | us-gaap |
Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
|
645000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
|
4844000 | |
CY2022Q4 | us-gaap |
Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
|
5537000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability
FinanceLeaseLiability
|
5537000 | |
CY2022Q4 | us-gaap |
Finance Lease Liability
FinanceLeaseLiability
|
6182000 | |
CY2023Q4 | us-gaap |
Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
|
P8Y | |
CY2022Q4 | us-gaap |
Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
|
P10Y | |
CY2023Q4 | us-gaap |
Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
|
P7Y | |
CY2022Q4 | us-gaap |
Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
|
P8Y | |
CY2023Q4 | us-gaap |
Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
|
0.058 | |
CY2022Q4 | us-gaap |
Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
|
0.047 | |
CY2023Q4 | us-gaap |
Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
|
0.046 | |
CY2022Q4 | us-gaap |
Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
|
0.046 | |
CY2021 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
315000 | |
CY2023 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
907000 | |
CY2022 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
600000 | |
CY2021 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
603000 | |
CY2023 | us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
7697000 | |
CY2022 | us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
3487000 | |
CY2021 | us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
2206000 | |
CY2021Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
16256000 | |
CY2022Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
11373000 | |
CY2023Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
4278000 | |
CY2022Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
3228000 | |
CY2023Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
11417000 | |
CY2022Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
8453000 | |
CY2023Q4 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
15695000 | |
CY2022Q4 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
11681000 | |
CY2023Q4 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
2097000 | |
CY2022Q4 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
2329000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
|
693000 | |
CY2022Q4 | us-gaap |
Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
|
645000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
|
4844000 | |
CY2022Q4 | us-gaap |
Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
|
5537000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability
FinanceLeaseLiability
|
5537000 | |
CY2022Q4 | us-gaap |
Finance Lease Liability
FinanceLeaseLiability
|
6182000 | |
CY2023Q4 | us-gaap |
Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
|
P8Y | |
CY2022Q4 | us-gaap |
Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
|
P10Y | |
CY2023Q4 | us-gaap |
Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
|
P7Y | |
CY2022Q4 | us-gaap |
Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
|
P8Y | |
CY2023Q4 | us-gaap |
Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
|
0.058 | |
CY2022Q4 | us-gaap |
Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
|
0.047 | |
CY2023Q4 | us-gaap |
Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
|
0.046 | |
CY2022Q4 | us-gaap |
Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
|
0.046 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Next Twelve Months
LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
|
4363000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Next Twelve Months
FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
|
925000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Two
LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
|
3845000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Two
FinanceLeaseLiabilityPaymentsDueYearTwo
|
943000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Three
LesseeOperatingLeaseLiabilityPaymentsDueYearThree
|
2527000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Three
FinanceLeaseLiabilityPaymentsDueYearThree
|
962000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Four
LesseeOperatingLeaseLiabilityPaymentsDueYearFour
|
1578000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Four
FinanceLeaseLiabilityPaymentsDueYearFour
|
982000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Five
LesseeOperatingLeaseLiabilityPaymentsDueYearFive
|
1145000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Five
FinanceLeaseLiabilityPaymentsDueYearFive
|
1001000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due After Year Five
LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
|
3480000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due After Year Five
FinanceLeaseLiabilityPaymentsDueAfterYearFive
|
1596000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due
LesseeOperatingLeaseLiabilityPaymentsDue
|
16938000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due
FinanceLeaseLiabilityPaymentsDue
|
6409000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Undiscounted Excess Amount
LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
|
1243000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Undiscounted Excess Amount
FinanceLeaseLiabilityUndiscountedExcessAmount
|
872000 | |
CY2023Q4 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
15695000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability
FinanceLeaseLiability
|
5537000 | |
CY2023 | us-gaap |
Litigation Settlement Amount Awarded From Other Party
LitigationSettlementAmountAwardedFromOtherParty
|
6500000 | |
CY2023Q4 | ceco |
Average Cost Per Settled Claim
AverageCostPerSettledClaim
|
37000 | |
CY2022Q4 | us-gaap |
Loss Contingency Pending Claims Number
LossContingencyPendingClaimsNumber
|
247 | |
CY2023 | us-gaap |
Loss Contingency Managements Assessment And Process
LossContingencyManagementsAssessmentAndProcess
|
not aware of pending claims or assessments, other than as described above, which may have a material adverse impact on its liquidity, financial position, results of operations, or cash flows. | |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
7444000 | |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
11971000 | |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
771000 | |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
14081000 | |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
11718000 | |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
3903000 | |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
21525000 | |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
23689000 | |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
4674000 | |
CY2023 | ceco |
Liability For Deferred Taxes On Undistributed Foreign Earnings
LiabilityForDeferredTaxesOnUndistributedForeignEarnings
|
700000 | |
CY2023 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
3939000 | |
CY2022 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
5009000 | |
CY2021 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
354000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Next Twelve Months
LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
|
4363000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Next Twelve Months
FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
|
925000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Two
LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
|
3845000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Two
FinanceLeaseLiabilityPaymentsDueYearTwo
|
943000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Three
LesseeOperatingLeaseLiabilityPaymentsDueYearThree
|
2527000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Three
FinanceLeaseLiabilityPaymentsDueYearThree
|
962000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Four
LesseeOperatingLeaseLiabilityPaymentsDueYearFour
|
1578000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Four
FinanceLeaseLiabilityPaymentsDueYearFour
|
982000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Five
LesseeOperatingLeaseLiabilityPaymentsDueYearFive
|
1145000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Five
FinanceLeaseLiabilityPaymentsDueYearFive
|
1001000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due After Year Five
LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
|
3480000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due After Year Five
FinanceLeaseLiabilityPaymentsDueAfterYearFive
|
1596000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due
LesseeOperatingLeaseLiabilityPaymentsDue
|
16938000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due
FinanceLeaseLiabilityPaymentsDue
|
6409000 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Undiscounted Excess Amount
LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
|
1243000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability Undiscounted Excess Amount
FinanceLeaseLiabilityUndiscountedExcessAmount
|
872000 | |
CY2023Q4 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
15695000 | |
CY2023Q4 | us-gaap |
Finance Lease Liability
FinanceLeaseLiability
|
5537000 | |
CY2023 | us-gaap |
Litigation Settlement Amount Awarded From Other Party
LitigationSettlementAmountAwardedFromOtherParty
|
6500000 | |
CY2023Q4 | ceco |
Average Cost Per Settled Claim
AverageCostPerSettledClaim
|
37000 | |
CY2022Q4 | us-gaap |
Loss Contingency Pending Claims Number
LossContingencyPendingClaimsNumber
|
247 | |
CY2023 | us-gaap |
Loss Contingency Managements Assessment And Process
LossContingencyManagementsAssessmentAndProcess
|
not aware of pending claims or assessments, other than as described above, which may have a material adverse impact on its liquidity, financial position, results of operations, or cash flows. | |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
7444000 | |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
11971000 | |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
771000 | |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
14081000 | |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
11718000 | |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
3903000 | |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
21525000 | |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
23689000 | |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
4674000 | |
CY2023 | ceco |
Liability For Deferred Taxes On Undistributed Foreign Earnings
LiabilityForDeferredTaxesOnUndistributedForeignEarnings
|
700000 | |
CY2023 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
3939000 | |
CY2022 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
5009000 | |
CY2021 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
354000 | |
CY2023 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
1100000 | |
CY2022 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
836000 | |
CY2021 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
278000 | |
CY2023 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
2107000 | |
CY2022 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
1755000 | |
CY2021 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
1972000 | |
CY2023 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
7147000 | |
CY2022 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
7600000 | |
CY2021 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
2604000 | |
CY2023 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-495000 | |
CY2022 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-3001000 | |
CY2021 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
426000 | |
CY2023 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-208000 | |
CY2022 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-231000 | |
CY2021 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
45000 | |
CY2023 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
580000 | |
CY2022 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
1058000 | |
CY2021 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
-384000 | |
CY2023 | us-gaap |
Deferred Federal State And Local Tax Expense Benefit
DeferredFederalStateAndLocalTaxExpenseBenefit
|
-123000 | |
CY2022 | us-gaap |
Deferred Federal State And Local Tax Expense Benefit
DeferredFederalStateAndLocalTaxExpenseBenefit
|
-2174000 | |
CY2021 | us-gaap |
Deferred Federal State And Local Tax Expense Benefit
DeferredFederalStateAndLocalTaxExpenseBenefit
|
87000 | |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
7024000 | |
CY2022 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
5426000 | |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2691000 | |
CY2023 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
4488000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
4975000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
981000 | |
CY2023 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
541000 | |
CY2022 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
340000 | |
CY2021 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
334000 | |
CY2023 | ceco |
Income Tax Reconciliation Other Permanent Differences
IncomeTaxReconciliationOtherPermanentDifferences
|
290000 | |
CY2022 | ceco |
Income Tax Reconciliation Other Permanent Differences
IncomeTaxReconciliationOtherPermanentDifferences
|
383000 | |
CY2021 | ceco |
Income Tax Reconciliation Other Permanent Differences
IncomeTaxReconciliationOtherPermanentDifferences
|
-147000 | |
CY2023 | us-gaap |
Income Tax Reconciliation Foreign Income Tax Rate Differential
IncomeTaxReconciliationForeignIncomeTaxRateDifferential
|
-1046000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Foreign Income Tax Rate Differential
IncomeTaxReconciliationForeignIncomeTaxRateDifferential
|
565000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Foreign Income Tax Rate Differential
IncomeTaxReconciliationForeignIncomeTaxRateDifferential
|
876000 | |
CY2023 | ceco |
Income Tax Reconciliation Tax Incentives
IncomeTaxReconciliationTaxIncentives
|
532000 | |
CY2022 | ceco |
Income Tax Reconciliation Tax Incentives
IncomeTaxReconciliationTaxIncentives
|
626000 | |
CY2021 | ceco |
Income Tax Reconciliation Tax Incentives
IncomeTaxReconciliationTaxIncentives
|
-300000 | |
CY2023 | us-gaap |
Income Tax Reconciliation Tax Credits Foreign
IncomeTaxReconciliationTaxCreditsForeign
|
812000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Tax Credits Foreign
IncomeTaxReconciliationTaxCreditsForeign
|
895000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Tax Credits Foreign
IncomeTaxReconciliationTaxCreditsForeign
|
265000 | |
CY2023 | us-gaap |
Income Tax Reconciliation Change In Deferred Tax Assets Valuation Allowance
IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
1782000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Change In Deferred Tax Assets Valuation Allowance
IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
-526000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Change In Deferred Tax Assets Valuation Allowance
IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
-489000 | |
CY2023 | us-gaap |
Income Tax Reconciliation Repatriation Of Foreign Earnings
IncomeTaxReconciliationRepatriationOfForeignEarnings
|
592000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Repatriation Of Foreign Earnings
IncomeTaxReconciliationRepatriationOfForeignEarnings
|
139000 | |
CY2023 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
1100000 | |
CY2022 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
836000 | |
CY2021 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
278000 | |
CY2023 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
2107000 | |
CY2022 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
1755000 | |
CY2021 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
1972000 | |
CY2023 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
7147000 | |
CY2022 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
7600000 | |
CY2021 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
2604000 | |
CY2023 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-495000 | |
CY2022 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-3001000 | |
CY2021 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
426000 | |
CY2023 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-208000 | |
CY2022 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-231000 | |
CY2021 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
45000 | |
CY2023 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
580000 | |
CY2022 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
1058000 | |
CY2021 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
-384000 | |
CY2023 | us-gaap |
Deferred Federal State And Local Tax Expense Benefit
DeferredFederalStateAndLocalTaxExpenseBenefit
|
-123000 | |
CY2022 | us-gaap |
Deferred Federal State And Local Tax Expense Benefit
DeferredFederalStateAndLocalTaxExpenseBenefit
|
-2174000 | |
CY2021 | us-gaap |
Deferred Federal State And Local Tax Expense Benefit
DeferredFederalStateAndLocalTaxExpenseBenefit
|
87000 | |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
7024000 | |
CY2022 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
5426000 | |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2691000 | |
CY2023 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
4488000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
4975000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
981000 | |
CY2023 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
541000 | |
CY2022 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
340000 | |
CY2021 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
334000 | |
CY2023 | ceco |
Income Tax Reconciliation Other Permanent Differences
IncomeTaxReconciliationOtherPermanentDifferences
|
290000 | |
CY2022 | ceco |
Income Tax Reconciliation Other Permanent Differences
IncomeTaxReconciliationOtherPermanentDifferences
|
383000 | |
CY2021 | ceco |
Income Tax Reconciliation Other Permanent Differences
IncomeTaxReconciliationOtherPermanentDifferences
|
-147000 | |
CY2023 | us-gaap |
Income Tax Reconciliation Foreign Income Tax Rate Differential
IncomeTaxReconciliationForeignIncomeTaxRateDifferential
|
-1046000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Foreign Income Tax Rate Differential
IncomeTaxReconciliationForeignIncomeTaxRateDifferential
|
565000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Foreign Income Tax Rate Differential
IncomeTaxReconciliationForeignIncomeTaxRateDifferential
|
876000 | |
CY2023 | ceco |
Income Tax Reconciliation Tax Incentives
IncomeTaxReconciliationTaxIncentives
|
532000 | |
CY2022 | ceco |
Income Tax Reconciliation Tax Incentives
IncomeTaxReconciliationTaxIncentives
|
626000 | |
CY2021 | ceco |
Income Tax Reconciliation Tax Incentives
IncomeTaxReconciliationTaxIncentives
|
-300000 | |
CY2023 | us-gaap |
Income Tax Reconciliation Tax Credits Foreign
IncomeTaxReconciliationTaxCreditsForeign
|
812000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Tax Credits Foreign
IncomeTaxReconciliationTaxCreditsForeign
|
895000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Tax Credits Foreign
IncomeTaxReconciliationTaxCreditsForeign
|
265000 | |
CY2023 | us-gaap |
Income Tax Reconciliation Change In Deferred Tax Assets Valuation Allowance
IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
1782000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Change In Deferred Tax Assets Valuation Allowance
IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
-526000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Change In Deferred Tax Assets Valuation Allowance
IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
-489000 | |
CY2023 | us-gaap |
Income Tax Reconciliation Repatriation Of Foreign Earnings
IncomeTaxReconciliationRepatriationOfForeignEarnings
|
592000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Repatriation Of Foreign Earnings
IncomeTaxReconciliationRepatriationOfForeignEarnings
|
139000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Repatriation Of Foreign Earnings
IncomeTaxReconciliationRepatriationOfForeignEarnings
|
244000 | |
CY2023 | ceco |
Income Tax Reconciliation Earnout Expense Income
IncomeTaxReconciliationEarnoutExpenseIncome
|
85000 | |
CY2022 | ceco |
Income Tax Reconciliation Earnout Expense Income
IncomeTaxReconciliationEarnoutExpenseIncome
|
-48000 | |
CY2021 | ceco |
Income Tax Reconciliation Earnout Expense Income
IncomeTaxReconciliationEarnoutExpenseIncome
|
233000 | |
CY2023 | us-gaap |
Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
|
460000 | |
CY2022 | us-gaap |
Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
|
339000 | |
CY2021 | us-gaap |
Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
|
169000 | |
CY2023 | us-gaap |
Increase Decrease In Deferred Compensation
IncreaseDecreaseInDeferredCompensation
|
360000 | |
CY2022 | us-gaap |
Increase Decrease In Deferred Compensation
IncreaseDecreaseInDeferredCompensation
|
11000 | |
CY2021 | us-gaap |
Increase Decrease In Deferred Compensation
IncreaseDecreaseInDeferredCompensation
|
0 | |
CY2023 | us-gaap |
Tax Adjustments Settlements And Unusual Provisions
TaxAdjustmentsSettlementsAndUnusualProvisions
|
528000 | |
CY2022 | us-gaap |
Tax Adjustments Settlements And Unusual Provisions
TaxAdjustmentsSettlementsAndUnusualProvisions
|
-189000 | |
CY2021 | us-gaap |
Tax Adjustments Settlements And Unusual Provisions
TaxAdjustmentsSettlementsAndUnusualProvisions
|
127000 | |
CY2023 | ceco |
Income Tax Reconciliation Investment In Joint Venture
IncomeTaxReconciliationInvestmentInJointVenture
|
-155000 | |
CY2022 | ceco |
Income Tax Reconciliation Investment In Joint Venture
IncomeTaxReconciliationInvestmentInJointVenture
|
375000 | |
CY2021 | ceco |
Income Tax Reconciliation Investment In Joint Venture
IncomeTaxReconciliationInvestmentInJointVenture
|
237000 | |
CY2023 | ceco |
Income Tax Reconciliation Net Effect Gilti And Fdii
IncomeTaxReconciliationNetEffectGiltiAndFdii
|
1400000 | |
CY2022 | ceco |
Income Tax Reconciliation Net Effect Gilti And Fdii
IncomeTaxReconciliationNetEffectGiltiAndFdii
|
565000 | |
CY2021 | ceco |
Income Tax Reconciliation Net Effect Gilti And Fdii
IncomeTaxReconciliationNetEffectGiltiAndFdii
|
0 | |
CY2023 | us-gaap |
Income Tax Reconciliation Other Adjustments
IncomeTaxReconciliationOtherAdjustments
|
227000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Other Adjustments
IncomeTaxReconciliationOtherAdjustments
|
18000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Other Adjustments
IncomeTaxReconciliationOtherAdjustments
|
91000 | |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
7024000 | |
CY2022 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
5426000 | |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2691000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense
DeferredTaxAssetsTaxDeferredExpense
|
729000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense
DeferredTaxAssetsTaxDeferredExpense
|
692000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Reserves
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves
|
2769000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Reserves
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves
|
2228000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Share Based Compensation Cost
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
|
372000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Share Based Compensation Cost
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
|
452000 | |
CY2023Q4 | ceco |
Deferred Tax Assets Minimum Pension
DeferredTaxAssetsMinimumPension
|
920000 | |
CY2022Q4 | ceco |
Deferred Tax Assets Minimum Pension
DeferredTaxAssetsMinimumPension
|
1247000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
3785000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
3142000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Credit Carryforwards
DeferredTaxAssetsTaxCreditCarryforwards
|
2302000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Credit Carryforwards
DeferredTaxAssetsTaxCreditCarryforwards
|
2349000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Investment In Subsidiaries
DeferredTaxAssetsInvestmentInSubsidiaries
|
926000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Investment In Subsidiaries
DeferredTaxAssetsInvestmentInSubsidiaries
|
815000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Deferred Gain On Sale Leaseback Transaction
DeferredTaxAssetsDeferredGainOnSaleLeasebackTransaction
|
3699000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Deferred Gain On Sale Leaseback Transaction
DeferredTaxAssetsDeferredGainOnSaleLeasebackTransaction
|
2564000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets In Process Research And Development
DeferredTaxAssetsInProcessResearchAndDevelopment
|
3857000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets In Process Research And Development
DeferredTaxAssetsInProcessResearchAndDevelopment
|
3224000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Other
DeferredTaxAssetsOther
|
0 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Other
DeferredTaxAssetsOther
|
69000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
19359000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Repatriation Of Foreign Earnings
IncomeTaxReconciliationRepatriationOfForeignEarnings
|
244000 | |
CY2023 | ceco |
Income Tax Reconciliation Earnout Expense Income
IncomeTaxReconciliationEarnoutExpenseIncome
|
85000 | |
CY2022 | ceco |
Income Tax Reconciliation Earnout Expense Income
IncomeTaxReconciliationEarnoutExpenseIncome
|
-48000 | |
CY2021 | ceco |
Income Tax Reconciliation Earnout Expense Income
IncomeTaxReconciliationEarnoutExpenseIncome
|
233000 | |
CY2023 | us-gaap |
Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
|
460000 | |
CY2022 | us-gaap |
Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
|
339000 | |
CY2021 | us-gaap |
Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
|
169000 | |
CY2023 | us-gaap |
Increase Decrease In Deferred Compensation
IncreaseDecreaseInDeferredCompensation
|
360000 | |
CY2022 | us-gaap |
Increase Decrease In Deferred Compensation
IncreaseDecreaseInDeferredCompensation
|
11000 | |
CY2021 | us-gaap |
Increase Decrease In Deferred Compensation
IncreaseDecreaseInDeferredCompensation
|
0 | |
CY2023 | us-gaap |
Tax Adjustments Settlements And Unusual Provisions
TaxAdjustmentsSettlementsAndUnusualProvisions
|
528000 | |
CY2022 | us-gaap |
Tax Adjustments Settlements And Unusual Provisions
TaxAdjustmentsSettlementsAndUnusualProvisions
|
-189000 | |
CY2021 | us-gaap |
Tax Adjustments Settlements And Unusual Provisions
TaxAdjustmentsSettlementsAndUnusualProvisions
|
127000 | |
CY2023 | ceco |
Income Tax Reconciliation Investment In Joint Venture
IncomeTaxReconciliationInvestmentInJointVenture
|
-155000 | |
CY2022 | ceco |
Income Tax Reconciliation Investment In Joint Venture
IncomeTaxReconciliationInvestmentInJointVenture
|
375000 | |
CY2021 | ceco |
Income Tax Reconciliation Investment In Joint Venture
IncomeTaxReconciliationInvestmentInJointVenture
|
237000 | |
CY2023 | ceco |
Income Tax Reconciliation Net Effect Gilti And Fdii
IncomeTaxReconciliationNetEffectGiltiAndFdii
|
1400000 | |
CY2022 | ceco |
Income Tax Reconciliation Net Effect Gilti And Fdii
IncomeTaxReconciliationNetEffectGiltiAndFdii
|
565000 | |
CY2021 | ceco |
Income Tax Reconciliation Net Effect Gilti And Fdii
IncomeTaxReconciliationNetEffectGiltiAndFdii
|
0 | |
CY2023 | us-gaap |
Income Tax Reconciliation Other Adjustments
IncomeTaxReconciliationOtherAdjustments
|
227000 | |
CY2022 | us-gaap |
Income Tax Reconciliation Other Adjustments
IncomeTaxReconciliationOtherAdjustments
|
18000 | |
CY2021 | us-gaap |
Income Tax Reconciliation Other Adjustments
IncomeTaxReconciliationOtherAdjustments
|
91000 | |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
7024000 | |
CY2022 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
5426000 | |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2691000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense
DeferredTaxAssetsTaxDeferredExpense
|
729000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense
DeferredTaxAssetsTaxDeferredExpense
|
692000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Reserves
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves
|
2769000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Reserves
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves
|
2228000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Share Based Compensation Cost
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
|
372000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Share Based Compensation Cost
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
|
452000 | |
CY2023Q4 | ceco |
Deferred Tax Assets Minimum Pension
DeferredTaxAssetsMinimumPension
|
920000 | |
CY2022Q4 | ceco |
Deferred Tax Assets Minimum Pension
DeferredTaxAssetsMinimumPension
|
1247000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
3785000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
3142000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Credit Carryforwards
DeferredTaxAssetsTaxCreditCarryforwards
|
2302000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Credit Carryforwards
DeferredTaxAssetsTaxCreditCarryforwards
|
2349000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Investment In Subsidiaries
DeferredTaxAssetsInvestmentInSubsidiaries
|
926000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Investment In Subsidiaries
DeferredTaxAssetsInvestmentInSubsidiaries
|
815000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Deferred Gain On Sale Leaseback Transaction
DeferredTaxAssetsDeferredGainOnSaleLeasebackTransaction
|
3699000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Deferred Gain On Sale Leaseback Transaction
DeferredTaxAssetsDeferredGainOnSaleLeasebackTransaction
|
2564000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets In Process Research And Development
DeferredTaxAssetsInProcessResearchAndDevelopment
|
3857000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets In Process Research And Development
DeferredTaxAssetsInProcessResearchAndDevelopment
|
3224000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Other
DeferredTaxAssetsOther
|
0 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Other
DeferredTaxAssetsOther
|
69000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
19359000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
16782000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
6545000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
4950000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
12814000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
11832000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Deferred Expense
DeferredTaxLiabilitiesDeferredExpense
|
1809000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Deferred Expense
DeferredTaxLiabilitiesDeferredExpense
|
727000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
|
14299000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
|
13310000 | |
CY2023Q4 | ceco |
Deferred Tax Liabilities Prepaid Expenses And Inventory
DeferredTaxLiabilitiesPrepaidExpensesAndInventory
|
95000 | |
CY2022Q4 | ceco |
Deferred Tax Liabilities Prepaid Expenses And Inventory
DeferredTaxLiabilitiesPrepaidExpensesAndInventory
|
783000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Undistributed Foreign Earnings
DeferredTaxLiabilitiesUndistributedForeignEarnings
|
662000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Undistributed Foreign Earnings
DeferredTaxLiabilitiesUndistributedForeignEarnings
|
1254000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Leasing Arrangements
DeferredTaxLiabilitiesLeasingArrangements
|
3571000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Leasing Arrangements
DeferredTaxLiabilitiesLeasingArrangements
|
2564000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Tax Deferred Income
DeferredTaxLiabilitiesTaxDeferredIncome
|
694000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Tax Deferred Income
DeferredTaxLiabilitiesTaxDeferredIncome
|
1031000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Other
DeferredTaxLiabilitiesOther
|
218000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Other
DeferredTaxLiabilitiesOther
|
0 | |
CY2023Q4 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
21348000 | |
CY2022Q4 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
19669000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
8534000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
7837000 | |
CY2023 | ceco |
State And Local Net Operating Loss Carry Forwards Year Start
StateAndLocalNetOperatingLossCarryForwardsYearStart
|
2024 | |
CY2023 | ceco |
State And Local Net Operating Loss Carry Forwards Year End
StateAndLocalNetOperatingLossCarryForwardsYearEnd
|
2043 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals
|
6500000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals
|
5000000 | |
CY2023 | ceco |
Additional Income Tax Expense Benefit
AdditionalIncomeTaxExpenseBenefit
|
1500000 | |
CY2022 | ceco |
Additional Income Tax Expense Benefit
AdditionalIncomeTaxExpenseBenefit
|
-500000 | |
CY2021 | ceco |
Additional Income Tax Expense Benefit
AdditionalIncomeTaxExpenseBenefit
|
-500000 | |
CY2023 | ceco |
Minimum Likelihood For Recognized Income Tax Positions
MinimumLikelihoodForRecognizedIncomeTaxPositions
|
0.50 | |
CY2022Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
144000 | |
CY2021Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
141000 | |
CY2023 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
|
7000 | |
CY2022 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
|
3000 | |
CY2023Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
151000 | |
CY2022Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
144000 | |
CY2023 | us-gaap |
Unrecognized Tax Benefits Income Tax Penalties And Interest Expense
UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense
|
100000 | |
CY2022 | us-gaap |
Unrecognized Tax Benefits Income Tax Penalties And Interest Expense
UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense
|
100000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
16782000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
6545000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
4950000 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
12814000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
11832000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Deferred Expense
DeferredTaxLiabilitiesDeferredExpense
|
1809000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Deferred Expense
DeferredTaxLiabilitiesDeferredExpense
|
727000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
|
14299000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
|
13310000 | |
CY2023Q4 | ceco |
Deferred Tax Liabilities Prepaid Expenses And Inventory
DeferredTaxLiabilitiesPrepaidExpensesAndInventory
|
95000 | |
CY2022Q4 | ceco |
Deferred Tax Liabilities Prepaid Expenses And Inventory
DeferredTaxLiabilitiesPrepaidExpensesAndInventory
|
783000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Undistributed Foreign Earnings
DeferredTaxLiabilitiesUndistributedForeignEarnings
|
662000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Undistributed Foreign Earnings
DeferredTaxLiabilitiesUndistributedForeignEarnings
|
1254000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Leasing Arrangements
DeferredTaxLiabilitiesLeasingArrangements
|
3571000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Leasing Arrangements
DeferredTaxLiabilitiesLeasingArrangements
|
2564000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Tax Deferred Income
DeferredTaxLiabilitiesTaxDeferredIncome
|
694000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Tax Deferred Income
DeferredTaxLiabilitiesTaxDeferredIncome
|
1031000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Other
DeferredTaxLiabilitiesOther
|
218000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Other
DeferredTaxLiabilitiesOther
|
0 | |
CY2023Q4 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
21348000 | |
CY2022Q4 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
19669000 | |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
8534000 | |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
7837000 | |
CY2023 | ceco |
State And Local Net Operating Loss Carry Forwards Year Start
StateAndLocalNetOperatingLossCarryForwardsYearStart
|
2024 | |
CY2023 | ceco |
State And Local Net Operating Loss Carry Forwards Year End
StateAndLocalNetOperatingLossCarryForwardsYearEnd
|
2043 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals
|
6500000 | |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals
|
5000000 | |
CY2023 | ceco |
Additional Income Tax Expense Benefit
AdditionalIncomeTaxExpenseBenefit
|
1500000 | |
CY2022 | ceco |
Additional Income Tax Expense Benefit
AdditionalIncomeTaxExpenseBenefit
|
-500000 | |
CY2021 | ceco |
Additional Income Tax Expense Benefit
AdditionalIncomeTaxExpenseBenefit
|
-500000 | |
CY2023 | ceco |
Minimum Likelihood For Recognized Income Tax Positions
MinimumLikelihoodForRecognizedIncomeTaxPositions
|
0.50 | |
CY2022Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
144000 | |
CY2021Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
141000 | |
CY2023 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
|
7000 | |
CY2022 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
|
3000 | |
CY2023Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
151000 | |
CY2022Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
144000 | |
CY2023 | us-gaap |
Unrecognized Tax Benefits Income Tax Penalties And Interest Expense
UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense
|
100000 | |
CY2022 | us-gaap |
Unrecognized Tax Benefits Income Tax Penalties And Interest Expense
UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense
|
100000 | |
CY2023Q1 | us-gaap |
Deferred Compensation Cash Based Arrangements Liability Current
DeferredCompensationCashBasedArrangementsLiabilityCurrent
|
2400000 | |
CY2022Q3 | us-gaap |
Deferred Compensation Cash Based Arrangements Liability Current
DeferredCompensationCashBasedArrangementsLiabilityCurrent
|
300000 | |
CY2023 | us-gaap |
Number Of Reportable Segments
NumberOfReportableSegments
|
2 | |
CY2023 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
544845000 | |
CY2022 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
422627000 | |
CY2021 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
324140000 | |
CY2023 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
34569000 | |
CY2022 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
22161000 | |
CY2021 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
9857000 | |
CY2023 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
8384000 | |
CY2022 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
3376000 | |
CY2021 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
2616000 | |
CY2023 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
12507000 | |
CY2022 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
10614000 | |
CY2021 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
9853000 | |
CY2023Q4 | us-gaap |
Assets
Assets
|
600291000 | |
CY2022Q4 | us-gaap |
Assets
Assets
|
504721000 | |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
211326000 | |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
183197000 | |
CY2023 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
544845000 | |
CY2022 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
422627000 | |
CY2021 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
324140000 | |
CY2023 | ceco |
Entity Wide Disclosure On Geographic Sales In Foreign Countries Percentage
EntityWideDisclosureOnGeographicSalesInForeignCountriesPercentage
|
0.33 | |
CY2022 | ceco |
Entity Wide Disclosure On Geographic Sales In Foreign Countries Percentage
EntityWideDisclosureOnGeographicSalesInForeignCountriesPercentage
|
0.35 | |
CY2021 | ceco |
Entity Wide Disclosure On Geographic Sales In Foreign Countries Percentage
EntityWideDisclosureOnGeographicSalesInForeignCountriesPercentage
|
0.38 | |
CY2023Q1 | us-gaap |
Deferred Compensation Cash Based Arrangements Liability Current
DeferredCompensationCashBasedArrangementsLiabilityCurrent
|
2400000 | |
CY2022Q3 | us-gaap |
Deferred Compensation Cash Based Arrangements Liability Current
DeferredCompensationCashBasedArrangementsLiabilityCurrent
|
300000 | |
CY2023 | us-gaap |
Number Of Reportable Segments
NumberOfReportableSegments
|
2 | |
CY2023 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
544845000 | |
CY2022 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
422627000 | |
CY2021 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
324140000 | |
CY2023 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
34569000 | |
CY2022 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
22161000 | |
CY2021 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
9857000 | |
CY2023 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
8384000 | |
CY2022 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
3376000 | |
CY2021 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
2616000 | |
CY2023 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
12507000 | |
CY2022 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
10614000 | |
CY2021 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
9853000 | |
CY2023Q4 | us-gaap |
Assets
Assets
|
600291000 | |
CY2022Q4 | us-gaap |
Assets
Assets
|
504721000 | |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
211326000 | |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
183197000 | |
CY2023 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
544845000 | |
CY2022 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
422627000 | |
CY2021 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
324140000 | |
CY2023 | ceco |
Entity Wide Disclosure On Geographic Sales In Foreign Countries Percentage
EntityWideDisclosureOnGeographicSalesInForeignCountriesPercentage
|
0.33 | |
CY2022 | ceco |
Entity Wide Disclosure On Geographic Sales In Foreign Countries Percentage
EntityWideDisclosureOnGeographicSalesInForeignCountriesPercentage
|
0.35 | |
CY2021 | ceco |
Entity Wide Disclosure On Geographic Sales In Foreign Countries Percentage
EntityWideDisclosureOnGeographicSalesInForeignCountriesPercentage
|
0.38 |