2024 Q1 Form 10-K Financial Statement
#000070360424000021 Filed on March 07, 2024
Income Statement
Concept | 2024 Q1 | 2023 Q4 | 2023 |
---|---|---|---|
Revenue | $416.1M | $405.2M | $1.570B |
YoY Change | 19.47% | 23.23% | 36.39% |
Cost Of Revenue | $272.7M | $267.6M | $1.019B |
YoY Change | 26.59% | 25.87% | 33.92% |
Gross Profit | $143.4M | $137.7M | $551.9M |
YoY Change | 7.93% | 18.4% | 41.18% |
Gross Profit Margin | 34.47% | 33.98% | 35.14% |
Selling, General & Admin | $140.6M | $125.1M | $508.9M |
YoY Change | 21.07% | 35.4% | 45.77% |
% of Gross Profit | 98.06% | 90.84% | 92.21% |
Research & Development | |||
YoY Change | |||
% of Gross Profit | |||
Depreciation & Amortization | $17.05M | $16.27M | $63.59M |
YoY Change | 8.46% | 17.27% | 40.73% |
% of Gross Profit | 11.89% | 11.82% | 11.52% |
Operating Expenses | $140.6M | $135.5M | $508.9M |
YoY Change | 21.07% | 34.7% | 45.77% |
Operating Profit | $2.783M | $2.209M | $42.99M |
YoY Change | -83.36% | -85.95% | 2.88% |
Interest Expense | $11.83M | -$12.61M | $42.77M |
YoY Change | 54.2% | 4.8% | 76.02% |
% of Operating Profit | 424.97% | -570.62% | 99.5% |
Other Income/Expense, Net | -$262.0K | -$113.0K | -$2.982M |
YoY Change | -73.13% | -87.36% | 345.07% |
Pretax Income | -$9.301M | -$13.01M | -$2.007M |
YoY Change | -215.99% | 4826.89% | -115.51% |
Income Tax | -$4.100M | $3.323M | $6.960M |
% Of Pretax Income | |||
Net Earnings | -$5.224M | -$16.33M | -$8.967M |
YoY Change | -188.44% | 767.23% | -221.08% |
Net Earnings / Revenue | -1.26% | -4.03% | -0.57% |
Basic Earnings Per Share | -$0.11 | -$0.20 | |
Diluted Earnings Per Share | -$0.11 | -$0.35 | -$0.20 |
COMMON SHARES | |||
Basic Shares Outstanding | 46.78M shares | 46.85M shares | 44.87M shares |
Diluted Shares Outstanding | 46.78M shares | 44.87M shares |
Balance Sheet
Concept | 2024 Q1 | 2023 Q4 | 2023 |
---|---|---|---|
SHORT-TERM ASSETS | |||
Cash & Short-Term Investments | $73.10M | $83.93M | $83.93M |
YoY Change | 134.71% | 241.82% | 241.82% |
Cash & Equivalents | $73.10M | $83.93M | $83.93M |
Short-Term Investments | |||
Other Short-Term Assets | $46.89M | $43.97M | $43.97M |
YoY Change | 80.93% | 91.5% | 91.5% |
Inventory | $313.8M | $316.0M | $316.0M |
Prepaid Expenses | |||
Receivables | $221.3M | $213.4M | $213.4M |
Other Receivables | $0.00 | $0.00 | $0.00 |
Total Short-Term Assets | $655.1M | $657.3M | $657.3M |
YoY Change | 31.08% | 37.46% | 37.46% |
LONG-TERM ASSETS | |||
Property, Plant & Equipment | $111.4M | $113.8M | $214.7M |
YoY Change | 72.85% | 76.74% | 55.27% |
Goodwill | $402.0M | $399.9M | |
YoY Change | 15.45% | 14.91% | |
Intangibles | $246.8M | $253.8M | |
YoY Change | 12.57% | 11.33% | |
Long-Term Investments | |||
YoY Change | |||
Other Assets | $5.964M | $5.928M | $24.52M |
YoY Change | 8.04% | 3.35% | 6.17% |
Total Long-Term Assets | $888.1M | $893.0M | $893.0M |
YoY Change | 21.88% | 21.1% | 21.1% |
TOTAL ASSETS | |||
Total Short-Term Assets | $655.1M | $657.3M | $657.3M |
Total Long-Term Assets | $888.1M | $893.0M | $893.0M |
Total Assets | $1.543B | $1.550B | $1.550B |
YoY Change | 25.63% | 27.54% | 27.54% |
SHORT-TERM LIABILITIES | |||
YoY Change | |||
Accounts Payable | $101.7M | $98.67M | $98.67M |
YoY Change | 11.94% | 22.6% | 22.6% |
Accrued Expenses | $82.14M | $83.10M | $83.10M |
YoY Change | 25.25% | 80.74% | 80.74% |
Deferred Revenue | $1.101M | $810.0K | |
YoY Change | -64.98% | ||
Short-Term Debt | $0.00 | $0.00 | $0.00 |
YoY Change | |||
Long-Term Debt Due | $30.25M | $32.55M | $33.09M |
YoY Change | 87.96% | 99.06% | 96.54% |
Total Short-Term Liabilities | $240.5M | $242.0M | $242.0M |
YoY Change | 38.9% | 42.8% | 42.8% |
LONG-TERM LIABILITIES | |||
Long-Term Debt | $535.7M | $535.9M | $536.7M |
YoY Change | 35.56% | 35.38% | 35.28% |
Other Long-Term Liabilities | $25.77M | $25.44M | $91.68M |
YoY Change | 5.55% | 530.4% | 46.57% |
Total Long-Term Liabilities | $561.5M | $561.3M | $628.4M |
YoY Change | 33.81% | 40.38% | 36.81% |
TOTAL LIABILITIES | |||
Total Short-Term Liabilities | $240.5M | $242.0M | $242.0M |
Total Long-Term Liabilities | $561.5M | $561.3M | $628.4M |
Total Liabilities | $888.5M | $888.7M | $888.7M |
YoY Change | 35.45% | 36.18% | 36.18% |
SHAREHOLDERS EQUITY | |||
Retained Earnings | -$39.93M | -$34.71M | |
YoY Change | 101.34% | 34.86% | |
Common Stock | $719.8M | $717.9M | |
YoY Change | 17.53% | 17.46% | |
Preferred Stock | |||
YoY Change | |||
Treasury Stock (at cost) | |||
YoY Change | |||
Treasury Stock Shares | |||
Shareholders Equity | $654.7M | $661.6M | $661.6M |
YoY Change | |||
Total Liabilities & Shareholders Equity | $1.543B | $1.550B | $1.550B |
YoY Change | 25.63% | 27.54% | 27.54% |
Cashflow Statement
Concept | 2024 Q1 | 2023 Q4 | 2023 |
---|---|---|---|
OPERATING ACTIVITIES | |||
Net Income | -$5.224M | -$16.33M | -$8.967M |
YoY Change | -188.44% | 767.23% | -221.08% |
Depreciation, Depletion And Amortization | $17.05M | $16.27M | $63.59M |
YoY Change | 8.46% | 17.27% | 40.73% |
Cash From Operating Activities | $6.615M | $28.24M | $102.3M |
YoY Change | -52.27% | 242.21% | -1027.43% |
INVESTING ACTIVITIES | |||
Capital Expenditures | $2.454M | $5.758M | $15.34M |
YoY Change | -45.35% | -20.4% | 84.63% |
Acquisitions | $13.15M | $259.8M | |
YoY Change | 125.27% | ||
Other Investing Activities | -$12.33M | -$6.035M | -$253.8M |
YoY Change | -779.13% | -650.64% | 138.16% |
Cash From Investing Activities | -$16.01M | -$11.80M | -$278.5M |
YoY Change | 214.25% | 92.29% | 119.85% |
FINANCING ACTIVITIES | |||
Cash Dividend Paid | |||
YoY Change | |||
Common Stock Issuance & Retirement, Net | $3.619M | ||
YoY Change | 86.55% | ||
Debt Paid & Issued, Net | |||
YoY Change | |||
Cash From Financing Activities | -$3.951M | -18.89M | $250.4M |
YoY Change | 65.04% | 462.49% | 68.67% |
NET CHANGE | |||
Cash From Operating Activities | $6.615M | 28.24M | $102.3M |
Cash From Investing Activities | -$16.01M | -11.80M | -$278.5M |
Cash From Financing Activities | -$3.951M | -18.89M | $250.4M |
Net Change In Cash | -$14.02M | -2.461M | $74.89M |
YoY Change | -312.74% | 97.51% | 643.73% |
FREE CASH FLOW | |||
Cash From Operating Activities | $6.615M | $28.24M | $102.3M |
Capital Expenditures | $2.454M | $5.758M | $15.34M |
Free Cash Flow | $4.161M | $22.48M | $86.95M |
YoY Change | -55.58% | 2110.23% | -549.67% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
CY2022 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
41786000 | usd |
CY2023 | us-gaap |
Interest Expense
InterestExpense
|
42774000 | usd |
CY2022 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-11525000 | usd |
CY2023 | dei |
Entity Central Index Key
EntityCentralIndexKey
|
0000703604 | |
CY2023 | dei |
Amendment Flag
AmendmentFlag
|
false | |
CY2023 | dei |
Document Fiscal Year Focus
DocumentFiscalYearFocus
|
2023 | |
CY2023 | dei |
Document Fiscal Period Focus
DocumentFiscalPeriodFocus
|
FY | |
CY2023Q4 | us-gaap |
Finance Lease Right Of Use Asset Statement Of Financial Position Extensible List
FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#OtherAssetsNoncurrent | |
CY2022Q4 | us-gaap |
Finance Lease Right Of Use Asset Statement Of Financial Position Extensible List
FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#OtherAssetsNoncurrent | |
CY2023Q4 | us-gaap |
Operating Lease Liability Current Statement Of Financial Position Extensible List
OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://www.lawsonproducts.com/20231231#LeaseLiabilityCurrent | |
CY2022Q4 | us-gaap |
Operating Lease Liability Current Statement Of Financial Position Extensible List
OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://www.lawsonproducts.com/20231231#LeaseLiabilityCurrent | |
CY2022Q4 | us-gaap |
Finance Lease Liability Current Statement Of Financial Position Extensible List
FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://www.lawsonproducts.com/20231231#LeaseLiabilityCurrent | |
CY2023Q4 | us-gaap |
Finance Lease Liability Current Statement Of Financial Position Extensible List
FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://www.lawsonproducts.com/20231231#LeaseLiabilityCurrent | |
CY2022Q4 | us-gaap |
Operating Lease Liability Noncurrent Statement Of Financial Position Extensible List
OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://www.lawsonproducts.com/20231231#LeaseLiabilityNoncurrent | |
CY2023Q4 | us-gaap |
Operating Lease Liability Noncurrent Statement Of Financial Position Extensible List
OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://www.lawsonproducts.com/20231231#LeaseLiabilityNoncurrent | |
CY2022Q4 | us-gaap |
Finance Lease Liability Noncurrent Statement Of Financial Position Extensible List
FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://www.lawsonproducts.com/20231231#LeaseLiabilityNoncurrent | |
CY2023Q4 | us-gaap |
Finance Lease Liability Noncurrent Statement Of Financial Position Extensible List
FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://www.lawsonproducts.com/20231231#LeaseLiabilityNoncurrent | |
CY2023 | us-gaap |
Fair Value Recurring Basis Unobservable Input Reconciliation Liability Gain Loss Statement Of Income Extensible List
FairValueRecurringBasisUnobservableInputReconciliationLiabilityGainLossStatementOfIncomeExtensibleList
|
http://fasb.org/us-gaap/2023#DerivativeGainLossOnDerivativeNet | |
CY2023Q4 | us-gaap |
Environmental Loss Contingency Statement Of Financial Position Extensible Enumeration
EnvironmentalLossContingencyStatementOfFinancialPositionExtensibleEnumeration
|
http://www.lawsonproducts.com/20231231#AccruedLiabilitiesAndOtherAccruedLiabilitiesCurrent | |
CY2023 | dei |
Document Annual Report
DocumentAnnualReport
|
true | |
CY2023 | dei |
Document Period End Date
DocumentPeriodEndDate
|
2023-12-31 | |
CY2023 | dei |
Current Fiscal Year End Date
CurrentFiscalYearEndDate
|
--12-31 | |
CY2023 | dei |
Document Transition Report
DocumentTransitionReport
|
false | |
CY2023 | dei |
Entity File Number
EntityFileNumber
|
0-10546 | |
CY2023 | dei |
Entity Registrant Name
EntityRegistrantName
|
DISTRIBUTION SOLUTIONS GROUP, INC. | |
CY2023 | dei |
Entity Incorporation State Country Code
EntityIncorporationStateCountryCode
|
DE | |
CY2023 | dei |
Entity Tax Identification Number
EntityTaxIdentificationNumber
|
36-2229304 | |
CY2023 | dei |
Entity Address Address Line1
EntityAddressAddressLine1
|
301 Commerce Street, | |
CY2023 | dei |
Entity Address Address Line2
EntityAddressAddressLine2
|
Suite 1700 | |
CY2023 | dei |
Entity Address City Or Town
EntityAddressCityOrTown
|
Fort Worth | |
CY2023 | dei |
Entity Address State Or Province
EntityAddressStateOrProvince
|
TX | |
CY2023 | dei |
Entity Address Postal Zip Code
EntityAddressPostalZipCode
|
76102 | |
CY2023 | dei |
City Area Code
CityAreaCode
|
888 | |
CY2023 | dei |
Local Phone Number
LocalPhoneNumber
|
611-9888 | |
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
|
true | |
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
|
254225483 | usd |
CY2024Q1 | dei |
Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
|
46783333 | shares |
CY2023 | dei |
Auditor Name
AuditorName
|
Grant Thornton, LLP | |
CY2023 | dei |
Auditor Location
AuditorLocation
|
Los Angeles, California | |
CY2023 | dei |
Auditor Firm
AuditorFirmId
|
248 | |
CY2022 | dei |
Auditor Name
AuditorName
|
BDO USA, P.C. | |
CY2022 | dei |
Auditor Location
AuditorLocation
|
Chicago, Illinois | |
CY2022 | dei |
Auditor Firm
AuditorFirmId
|
243 | |
CY2023Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
83931000 | usd |
CY2022Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
24554000 | usd |
CY2023Q4 | us-gaap |
Restricted Cash And Cash Equivalents At Carrying Value
RestrictedCashAndCashEquivalentsAtCarryingValue
|
15695000 | usd |
CY2022Q4 | us-gaap |
Restricted Cash And Cash Equivalents At Carrying Value
RestrictedCashAndCashEquivalentsAtCarryingValue
|
186000 | usd |
CY2023Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
2120000 | usd |
CY2022Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
1513000 | usd |
CY2023Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
213448000 | usd |
CY2022Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
166301000 | usd |
CY2023Q4 | us-gaap |
Inventory Net
InventoryNet
|
315984000 | usd |
CY2022Q4 | us-gaap |
Inventory Net
InventoryNet
|
264374000 | usd |
CY2023Q4 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
28272000 | usd |
CY2022Q4 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
22773000 | usd |
CY2023Q4 | us-gaap |
Assets Current
AssetsCurrent
|
657330000 | usd |
CY2022Q4 | us-gaap |
Assets Current
AssetsCurrent
|
478188000 | usd |
CY2023Q4 | us-gaap |
Property Plant And Equipment Excluding Lessor Asset Under Operating Lease After Accumulated Depreciation
PropertyPlantAndEquipmentExcludingLessorAssetUnderOperatingLeaseAfterAccumulatedDepreciation
|
113811000 | usd |
CY2022Q4 | us-gaap |
Property Plant And Equipment Excluding Lessor Asset Under Operating Lease After Accumulated Depreciation
PropertyPlantAndEquipmentExcludingLessorAssetUnderOperatingLeaseAfterAccumulatedDepreciation
|
64395000 | usd |
CY2023Q4 | us-gaap |
Property Subject To Or Available For Operating Lease Net
PropertySubjectToOrAvailableForOperatingLeaseNet
|
24575000 | usd |
CY2022Q4 | us-gaap |
Property Subject To Or Available For Operating Lease Net
PropertySubjectToOrAvailableForOperatingLeaseNet
|
27139000 | usd |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
399925000 | usd |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
348048000 | usd |
CY2023Q4 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
95000 | usd |
CY2022Q4 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
189000 | usd |
CY2023Q4 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
253834000 | usd |
CY2022Q4 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
227994000 | usd |
CY2023Q4 | us-gaap |
Cash Surrender Value Of Life Insurance
CashSurrenderValueOfLifeInsurance
|
18493000 | usd |
CY2022Q4 | us-gaap |
Cash Surrender Value Of Life Insurance
CashSurrenderValueOfLifeInsurance
|
17166000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
76340000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
46755000 | usd |
CY2023Q4 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
5928000 | usd |
CY2022Q4 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
5736000 | usd |
CY2023Q4 | us-gaap |
Assets
Assets
|
1550331000 | usd |
CY2022Q4 | us-gaap |
Assets
Assets
|
1215610000 | usd |
CY2023Q4 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
98674000 | usd |
CY2022Q4 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
80486000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
32551000 | usd |
CY2022Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
16352000 | usd |
CY2023Q4 | laws |
Lease Liability Current
LeaseLiabilityCurrent
|
13549000 | usd |
CY2022Q4 | laws |
Lease Liability Current
LeaseLiabilityCurrent
|
9964000 | usd |
CY2023Q4 | laws |
Accrued Liabilities And Other Accrued Liabilities Current
AccruedLiabilitiesAndOtherAccruedLiabilitiesCurrent
|
97241000 | usd |
CY2022Q4 | laws |
Accrued Liabilities And Other Accrued Liabilities Current
AccruedLiabilitiesAndOtherAccruedLiabilitiesCurrent
|
62677000 | usd |
CY2023Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
242015000 | usd |
CY2022Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
169479000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
535881000 | usd |
CY2022Q4 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
395825000 | usd |
CY2023Q4 | laws |
Lease Liability Noncurrent
LeaseLiabilityNoncurrent
|
67065000 | usd |
CY2022Q4 | laws |
Lease Liability Noncurrent
LeaseLiabilityNoncurrent
|
39828000 | usd |
CY2023Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
18326000 | usd |
CY2022Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
23834000 | usd |
CY2023Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
25443000 | usd |
CY2022Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
23649000 | usd |
CY2023Q4 | us-gaap |
Liabilities
Liabilities
|
888730000 | usd |
CY2022Q4 | us-gaap |
Liabilities
Liabilities
|
652615000 | usd |
CY2023Q4 | us-gaap |
Commitments And Contingencies
CommitmentsAndContingencies
|
usd | |
CY2022Q4 | us-gaap |
Commitments And Contingencies
CommitmentsAndContingencies
|
usd | |
CY2023Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
1 | |
CY2022Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
1 | |
CY2023Q4 | us-gaap |
Preferred Stock Shares Outstanding
PreferredStockSharesOutstanding
|
500000 | shares |
CY2023Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
500000 | shares |
CY2023Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
500000 | shares |
CY2022Q4 | us-gaap |
Preferred Stock Shares Outstanding
PreferredStockSharesOutstanding
|
0 | shares |
CY2022Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
0 | shares |
CY2022Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | shares |
CY2023Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | usd |
CY2022Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | usd |
CY2022Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
1 | |
CY2023Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
1 | |
CY2022Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
70000000 | shares |
CY2023Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
70000000 | shares |
CY2023Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
47535618 | shares |
CY2022Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
39460724 | shares |
CY2023Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
46758359 | shares |
CY2022Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
38833568 | shares |
CY2023Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
46758000 | usd |
CY2022Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
38834000 | usd |
CY2023Q4 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
671154000 | usd |
CY2022Q4 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
572379000 | usd |
CY2023Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
-34707000 | usd |
CY2022Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
-25736000 | usd |
CY2023Q4 | us-gaap |
Treasury Stock Common Shares
TreasuryStockCommonShares
|
777259 | shares |
CY2022Q4 | us-gaap |
Treasury Stock Common Shares
TreasuryStockCommonShares
|
627156 | shares |
CY2023Q4 | us-gaap |
Treasury Stock Common Value
TreasuryStockCommonValue
|
16434000 | usd |
CY2022Q4 | us-gaap |
Treasury Stock Common Value
TreasuryStockCommonValue
|
12526000 | usd |
CY2023Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-5170000 | usd |
CY2022Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-9956000 | usd |
CY2023Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
661601000 | usd |
CY2022Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
562995000 | usd |
CY2023Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
1550331000 | usd |
CY2022Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
1215610000 | usd |
CY2023Q3 | us-gaap |
Stockholders Equity Note Stock Split Conversion Ratio1
StockholdersEquityNoteStockSplitConversionRatio1
|
2 | |
CY2023 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
1570402000 | usd |
CY2022 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
1151422000 | usd |
CY2023 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
1018527000 | usd |
CY2022 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
760524000 | usd |
CY2023 | us-gaap |
Gross Profit
GrossProfit
|
551875000 | usd |
CY2022 | us-gaap |
Gross Profit
GrossProfit
|
390898000 | usd |
CY2023 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
508884000 | usd |
CY2022 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
349112000 | usd |
CY2022 | us-gaap |
Interest Expense
InterestExpense
|
24301000 | usd |
CY2023 | us-gaap |
Gains Losses On Extinguishment Of Debt
GainsLossesOnExtinguishmentOfDebt
|
0 | usd |
CY2022 | us-gaap |
Gains Losses On Extinguishment Of Debt
GainsLossesOnExtinguishmentOfDebt
|
-3395000 | usd |
CY2023 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
-2982000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
-2007000 | usd |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
12937000 | usd |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
6960000 | usd |
CY2022 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
5531000 | usd |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
-8967000 | usd |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
7406000 | usd |
CY2023 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
-0.20 | |
CY2022 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.22 | |
CY2023 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
-0.20 | |
CY2022 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.21 | |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
-8967000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
4906000 | usd |
CY2022 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
-11525000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Other Net Of Tax
OtherComprehensiveIncomeOtherNetOfTax
|
-120000 | usd |
CY2022 | us-gaap |
Other Comprehensive Income Other Net Of Tax
OtherComprehensiveIncomeOtherNetOfTax
|
0 | usd |
CY2023 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
-4181000 | usd |
CY2022 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
-4119000 | usd |
CY2023Q3 | us-gaap |
Stockholders Equity Note Stock Split Conversion Ratio1
StockholdersEquityNoteStockSplitConversionRatio1
|
2 | |
CY2022Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
1 | |
CY2023Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
1 | |
CY2021Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
1 | |
CY2021Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
165769000 | usd |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
7406000 | usd |
CY2022 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
1505000 | usd |
CY2022 | us-gaap |
Stock Issued During Period Value New Issues
StockIssuedDuringPeriodValueNewIssues
|
0 | usd |
CY2022 | us-gaap |
Stock Issued During Period Value Acquisitions
StockIssuedDuringPeriodValueAcquisitions
|
351491000 | usd |
CY2022 | laws |
Adjustments To Additional Paid In Capital Reclassification Of Derivative Liability
AdjustmentsToAdditionalPaidInCapitalReclassificationOfDerivativeLiability
|
43624000 | usd |
CY2022 | us-gaap |
Adjustments To Additional Paid In Capital Mark To Market
AdjustmentsToAdditionalPaidInCapitalMarkToMarket
|
1910000 | usd |
CY2022 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
1940000 | usd |
CY2022 | us-gaap |
Adjustments Related To Tax Withholding For Share Based Compensation
AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
|
520000 | usd |
CY2022 | laws |
Adjustments To Additional Paid In Capital Settlement Of Related Party Liability
AdjustmentsToAdditionalPaidInCapitalSettlementOfRelatedPartyLiability
|
5276000 | usd |
CY2022 | us-gaap |
Stockholders Equity Other
StockholdersEquityOther
|
1000 | usd |
CY2022Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
562995000 | usd |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
-8967000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
|
4906000 | usd |
CY2023 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
3732000 | usd |
CY2023 | laws |
Adjustments To Additional Paid In Capital Value Of Stock Based Compensation Liability Paid In Shares
AdjustmentsToAdditionalPaidInCapitalValueOfStockBasedCompensationLiabilityPaidInShares
|
227000 | usd |
CY2023 | us-gaap |
Stock Issued During Period Value New Issues
StockIssuedDuringPeriodValueNewIssues
|
0 | usd |
CY2023 | laws |
Stock Issued During Period Value Settlement Of Earnout
StockIssuedDuringPeriodValueSettlementOfEarnout
|
0 | usd |
CY2023 | us-gaap |
Stock Issued During Period Value Other
StockIssuedDuringPeriodValueOther
|
98469000 | usd |
CY2023 | us-gaap |
Stock Issued During Period Value Acquisitions
StockIssuedDuringPeriodValueAcquisitions
|
3253000 | usd |
CY2023 | laws |
Apic Share Based Payment Arrangement Employee Share Purchases Related To Acquisition Increase For Cost Recognition
APICShareBasedPaymentArrangementEmployeeSharePurchasesRelatedToAcquisitionIncreaseForCostRecognition
|
427000 | usd |
CY2023 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
3619000 | usd |
CY2023 | us-gaap |
Adjustments Related To Tax Withholding For Share Based Compensation
AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
|
287000 | usd |
CY2023 | us-gaap |
Stockholders Equity Other
StockholdersEquityOther
|
-465000 | usd |
CY2023Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
661601000 | usd |
CY2023Q3 | us-gaap |
Stockholders Equity Note Stock Split Conversion Ratio1
StockholdersEquityNoteStockSplitConversionRatio1
|
2 | |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
-8967000 | usd |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
7406000 | usd |
CY2023 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
63588000 | usd |
CY2022 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
45186000 | usd |
CY2023 | us-gaap |
Amortization Of Financing Costs
AmortizationOfFinancingCosts
|
2420000 | usd |
CY2022 | us-gaap |
Amortization Of Financing Costs
AmortizationOfFinancingCosts
|
1888000 | usd |
CY2023 | us-gaap |
Gains Losses On Extinguishment Of Debt
GainsLossesOnExtinguishmentOfDebt
|
0 | usd |
CY2022 | us-gaap |
Gains Losses On Extinguishment Of Debt
GainsLossesOnExtinguishmentOfDebt
|
-3395000 | usd |
CY2023 | us-gaap |
Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
|
7940000 | usd |
CY2022 | us-gaap |
Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
|
2448000 | usd |
CY2023 | laws |
Compensation Expense Related To Employee Share Purchases
CompensationExpenseRelatedToEmployeeSharePurchases
|
427000 | usd |
CY2022 | laws |
Compensation Expense Related To Employee Share Purchases
CompensationExpenseRelatedToEmployeeSharePurchases
|
0 | usd |
CY2023 | us-gaap |
Increase Decrease In Deferred Income Taxes
IncreaseDecreaseInDeferredIncomeTaxes
|
8028000 | usd |
CY2022 | us-gaap |
Increase Decrease In Deferred Income Taxes
IncreaseDecreaseInDeferredIncomeTaxes
|
2406000 | usd |
CY2023 | us-gaap |
Derivative Gain Loss On Derivative Net
DerivativeGainLossOnDerivativeNet
|
758000 | usd |
CY2022 | us-gaap |
Derivative Gain Loss On Derivative Net
DerivativeGainLossOnDerivativeNet
|
-483000 | usd |
CY2023 | us-gaap |
Gain Loss On Sale Of Leased Assets Net Operating Leases
GainLossOnSaleOfLeasedAssetsNetOperatingLeases
|
2675000 | usd |
CY2022 | us-gaap |
Gain Loss On Sale Of Leased Assets Net Operating Leases
GainLossOnSaleOfLeasedAssetsNetOperatingLeases
|
3632000 | usd |
CY2023 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
-294000 | usd |
CY2022 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
0 | usd |
CY2023 | laws |
Step Up Of Inventory
StepUpOfInventory
|
3582000 | usd |
CY2022 | laws |
Step Up Of Inventory
StepUpOfInventory
|
2866000 | usd |
CY2023 | laws |
Inventory Lifo Reserve Effect On Income Net And Inventory Write Down
InventoryLIFOReserveEffectOnIncomeNetAndInventoryWriteDown
|
8990000 | usd |
CY2022 | laws |
Inventory Lifo Reserve Effect On Income Net And Inventory Write Down
InventoryLIFOReserveEffectOnIncomeNetAndInventoryWriteDown
|
4608000 | usd |
CY2023 | us-gaap |
Increase Decrease In Other Operating Capital Net
IncreaseDecreaseInOtherOperatingCapitalNet
|
-784000 | usd |
CY2022 | us-gaap |
Increase Decrease In Other Operating Capital Net
IncreaseDecreaseInOtherOperatingCapitalNet
|
-795000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
-18020000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
21771000 | usd |
CY2023 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
1236000 | usd |
CY2022 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
42404000 | usd |
CY2023 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-931000 | usd |
CY2022 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
1874000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accounts Payable And Accrued Liabilities
IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
|
3048000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accounts Payable And Accrued Liabilities
IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
|
-8839000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
13667000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
4492000 | usd |
CY2023 | us-gaap |
Other Noncash Income Expense
OtherNoncashIncomeExpense
|
-259000 | usd |
CY2022 | us-gaap |
Other Noncash Income Expense
OtherNoncashIncomeExpense
|
3670000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
102286000 | usd |
CY2022 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
-11029000 | usd |
CY2023 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
15337000 | usd |
CY2022 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
8307000 | usd |
CY2023 | us-gaap |
Payments To Acquire Businesses Net Of Cash Acquired
PaymentsToAcquireBusinessesNetOfCashAcquired
|
259835000 | usd |
CY2022 | us-gaap |
Payments To Acquire Businesses Net Of Cash Acquired
PaymentsToAcquireBusinessesNetOfCashAcquired
|
115343000 | usd |
CY2023 | laws |
Payments To Acquire Rental Equipment
PaymentsToAcquireRentalEquipment
|
9341000 | usd |
CY2022 | laws |
Payments To Acquire Rental Equipment
PaymentsToAcquireRentalEquipment
|
11794000 | usd |
CY2023 | us-gaap |
Proceeds From Sale Of Machinery And Equipment
ProceedsFromSaleOfMachineryAndEquipment
|
5990000 | usd |
CY2022 | us-gaap |
Proceeds From Sale Of Machinery And Equipment
ProceedsFromSaleOfMachineryAndEquipment
|
8756000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-278523000 | usd |
CY2022 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-126688000 | usd |
CY2023 | us-gaap |
Proceeds From Repayments Of Lines Of Credit
ProceedsFromRepaymentsOfLinesOfCredit
|
180982000 | usd |
CY2022 | us-gaap |
Proceeds From Repayments Of Lines Of Credit
ProceedsFromRepaymentsOfLinesOfCredit
|
383489000 | usd |
CY2023 | us-gaap |
Repayments Of Long Term Lines Of Credit
RepaymentsOfLongTermLinesOfCredit
|
302083000 | usd |
CY2022 | us-gaap |
Repayments Of Long Term Lines Of Credit
RepaymentsOfLongTermLinesOfCredit
|
320751000 | usd |
CY2023 | us-gaap |
Proceeds From Issuance Of Secured Debt
ProceedsFromIssuanceOfSecuredDebt
|
305000000 | usd |
CY2022 | us-gaap |
Proceeds From Issuance Of Secured Debt
ProceedsFromIssuanceOfSecuredDebt
|
445630000 | usd |
CY2023 | us-gaap |
Repayments Of Secured Debt
RepaymentsOfSecuredDebt
|
26375000 | usd |
CY2022 | us-gaap |
Repayments Of Secured Debt
RepaymentsOfSecuredDebt
|
335305000 | usd |
CY2023 | us-gaap |
Payments Of Financing Costs
PaymentsOfFinancingCosts
|
3419000 | usd |
CY2022 | us-gaap |
Payments Of Financing Costs
PaymentsOfFinancingCosts
|
11956000 | usd |
CY2023 | us-gaap |
Adjustments To Additional Paid In Capital Stock Issued Issuance Costs
AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts
|
1531000 | usd |
CY2023 | us-gaap |
Proceeds From Issuance Or Sale Of Equity
ProceedsFromIssuanceOrSaleOfEquity
|
98469000 | usd |
CY2022 | us-gaap |
Proceeds From Issuance Or Sale Of Equity
ProceedsFromIssuanceOrSaleOfEquity
|
0 | usd |
CY2023 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
3619000 | usd |
CY2022 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
1940000 | usd |
CY2023 | laws |
Shares Repurchased Held In Treasury
SharesRepurchasedHeldInTreasury
|
287000 | usd |
CY2022 | laws |
Shares Repurchased Held In Treasury
SharesRepurchasedHeldInTreasury
|
520000 | usd |
CY2023 | laws |
Proceeds From Employees For Share Purchases In Acquisition
ProceedsFromEmployeesForSharePurchasesInAcquisition
|
3253000 | usd |
CY2022 | laws |
Proceeds From Employees For Share Purchases In Acquisition
ProceedsFromEmployeesForSharePurchasesInAcquisition
|
0 | usd |
CY2023 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
515000 | usd |
CY2022 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
429000 | usd |
CY2023 | laws |
Payment Of Earnout
PaymentOfEarnout
|
1000000 | usd |
CY2022 | laws |
Payment Of Earnout
PaymentOfEarnout
|
0 | usd |
CY2023 | us-gaap |
Payments Of Merger Related Costs Financing Activities
PaymentsOfMergerRelatedCostsFinancingActivities
|
0 | usd |
CY2022 | us-gaap |
Payments Of Merger Related Costs Financing Activities
PaymentsOfMergerRelatedCostsFinancingActivities
|
9757000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
250406000 | usd |
CY2022 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
148461000 | usd |
CY2023 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
717000 | usd |
CY2022 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
-675000 | usd |
CY2023 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
74886000 | usd |
CY2022 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
10069000 | usd |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
24740000 | usd |
CY2021Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
14671000 | usd |
CY2023Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
99626000 | usd |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
24740000 | usd |
CY2023Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
83931000 | usd |
CY2022Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
24554000 | usd |
CY2023Q4 | us-gaap |
Restricted Cash And Cash Equivalents At Carrying Value
RestrictedCashAndCashEquivalentsAtCarryingValue
|
15695000 | usd |
CY2022Q4 | us-gaap |
Restricted Cash And Cash Equivalents At Carrying Value
RestrictedCashAndCashEquivalentsAtCarryingValue
|
186000 | usd |
CY2023Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
99626000 | usd |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
24740000 | usd |
CY2023 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
12422000 | usd |
CY2022 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
13813000 | usd |
CY2023 | us-gaap |
Interest Paid Net
InterestPaidNet
|
38048000 | usd |
CY2022 | us-gaap |
Interest Paid Net
InterestPaidNet
|
22153000 | usd |
CY2023 | laws |
Interest Paid Excluding Capitalized Interest Financing Activities
InterestPaidExcludingCapitalizedInterestFinancingActivities
|
2581000 | usd |
CY2022 | laws |
Interest Paid Excluding Capitalized Interest Financing Activities
InterestPaidExcludingCapitalizedInterestFinancingActivities
|
1291000 | usd |
CY2023 | us-gaap |
Stock Issued1
StockIssued1
|
0 | usd |
CY2022 | us-gaap |
Stock Issued1
StockIssued1
|
351491000 | usd |
CY2023 | laws |
Settlement Of Related Party Obligations
SettlementOfRelatedPartyObligations
|
0 | usd |
CY2022 | laws |
Settlement Of Related Party Obligations
SettlementOfRelatedPartyObligations
|
5276000 | usd |
CY2023 | laws |
Additions Of Assets Under A Finance Lease Liability
AdditionsOfAssetsUnderAFinanceLeaseLiability
|
616000 | usd |
CY2022 | laws |
Additions Of Assets Under A Finance Lease Liability
AdditionsOfAssetsUnderAFinanceLeaseLiability
|
886000 | usd |
CY2023 | laws |
Additions Of Assets Under An Operating Lease Liability
AdditionsOfAssetsUnderAnOperatingLeaseLiability
|
19424000 | usd |
CY2022 | laws |
Additions Of Assets Under An Operating Lease Liability
AdditionsOfAssetsUnderAnOperatingLeaseLiability
|
14634000 | usd |
CY2023 | laws |
Sellers Note Issued As Purchase Consideration
SellersNoteIssuedAsPurchaseConsideration
|
0 | usd |
CY2022 | laws |
Sellers Note Issued As Purchase Consideration
SellersNoteIssuedAsPurchaseConsideration
|
1169000 | usd |
CY2023 | us-gaap |
Nature Of Operations
NatureOfOperations
|
<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 1 – Nature of Operations and Basis of Presentation </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Organization</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Distribution Solutions Group, Inc. ("DSG"), a Delaware corporation, is a global specialty distribution company providing value added distribution solutions to the maintenance, repair and operations ("MRO"), original equipment manufacturer ("OEM") and industrial technology markets. DSG has three principal operating companies: Lawson Products, Inc. ("Lawson"), TestEquity Acquisition, LLC ("TestEquity") and 301 HW Opus Holdings, Inc., conducting business as Gexpro Services ("Gexpro Services"). The complementary distribution operations of Lawson, TestEquity and Gexpro Services were combined on April 1, 2022 to create a global specialty distribution company. A summary of the Mergers (as defined below), including the legal entities party to the transactions and the stock consideration, is presented below. </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unless the context requires otherwise, references in this Annual Report on Form 10-K to “DSG”, the “Company”, "we", "our" or "us" refer to Distribution Solutions Group, Inc., and all entities consolidated in the accompanying consolidated financial statements.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:112%;text-decoration:underline">Combination with TestEquity and Gexpro Services</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">On December 29, 2021, DSG entered into:</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">• an Agreement and Plan of Merger (the “TestEquity Merger Agreement”) by and among (i) LKCM TE Investors, LLC, a Delaware limited liability company (the “TestEquity Equityholder”), (ii) TestEquity, which was a wholly-owned subsidiary of the TestEquity Equityholder, (iii) DSG and (iv) Tide Sub, LLC, a Delaware limited liability company and a wholly-owned subsidiary of DSG (“Merger Sub 1”), pursuant to the terms and subject to the conditions of which the parties agreed, among other things, that Merger Sub 1 would merge with and into TestEquity, with TestEquity surviving the merger as a wholly-owned subsidiary of DSG (the “TestEquity Merger”); and </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">• an Agreement and Plan of Merger (the “Gexpro Services Merger Agreement” and, together with the TestEquity Merger Agreement, the “Merger Agreements”) by and among (i) 301 HW Opus Investors, LLC, a Delaware limited liability company (the “Gexpro Services Stockholder”), (ii) Gexpro Services, which was a wholly-owned subsidiary of the Gexpro Services Stockholder, (iii) DSG and (iv) Gulf Sub, Inc., a Delaware corporation and a wholly-owned subsidiary of DSG (“Merger Sub 2”), pursuant to the terms and subject to the conditions of which the parties agreed, among other things, that Merger Sub 2 would merge with and into Gexpro Services, with Gexpro Services surviving the merger as a wholly-owned subsidiary of DSG (the “Gexpro Services Merger” and, together with the TestEquity Merger, the “Mergers”).</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">At the closing of the Mergers, each outstanding share of TestEquity and Gexpro Services common stock outstanding immediately prior to the closing of the Mergers was converted into approximately 0.1809 shares and 0.3838 shares, respectively, of DSG common stock, based on the ratio of outstanding shares of each entity immediately prior to the Mergers to the number of shares of DSG common stock acquired in the Mergers.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:112%;text-decoration:underline">Completion of the TestEquity Merger</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April 1, 2022 (the "Merger Date"), the TestEquity Merger was consummated pursuant to the TestEquity Merger Agreement. In accordance with the TestEquity Merger Agreement, Merger Sub 1 merged with and into TestEquity, with TestEquity surviving as a wholly-owned subsidiary of DSG.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In accordance with and under the terms of the TestEquity Merger Agreement, in connection with the closing of the TestEquity Merger on the Merger Date, DSG: (i) issued to the TestEquity Equityholder 6,600,000 shares of DSG common stock, (ii) on behalf of TestEquity, paid certain indebtedness of TestEquity and (iii) on behalf of TestEquity, paid certain transaction expenses of TestEquity. </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The TestEquity Merger Agreement provided that up to an additional 1,400,000 shares of DSG common stock would be potentially issuable to the TestEquity Equityholder in accordance with, and subject to the terms and conditions of, the earnout provisions of the TestEquity Merger Agreement. On March 20, 2023, DSG issued 1,400,000 shares of DSG common stock to the TestEquity Equityholder (the "TestEquity Holdback Shares") pursuant to the terms of the earnout provisions of the TestEquity Merger Agreement. The TestEquity Holdback Shares issued represented the maximum number of additional shares that could be issued under the TestEquity Merger Agreement, and no further shares are available for issuance, and no </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">additional shares will be issued, in connection with the TestEquity Merger Agreement. Refer to Note 8 – Earnout Liabilities for information about the earnout derivative liability related to the TestEquity Holdback Shares.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:112%;text-decoration:underline">Completion of the Gexpro Services Merger</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On the Merger Date, the Gexpro Services Merger was consummated pursuant to the Gexpro Services Merger Agreement. In accordance with the Gexpro Services Merger Agreement, Merger Sub 2 merged with and into Gexpro Services, with Gexpro Services surviving as a wholly-owned subsidiary of DSG.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In accordance with and under the terms of the Gexpro Services Merger Agreement, in connection with the closing of the Gexpro Services Merger on the Merger Date, DSG: (i) issued to the Gexpro Services Stockholder 14,000,000 shares of DSG common stock, (ii) on behalf of Gexpro Services, paid certain indebtedness of Gexpro Services and (iii) on behalf of Gexpro Services, paid certain specified transaction expenses of Gexpro Services.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Gexpro Services Merger Agreement provided that up to an additional 2,000,000 shares of DSG common stock would be potentially issuable to the Gexpro Services Stockholder in accordance with, and subject to the terms and conditions of, the earnout provisions of the Gexpro Services Merger Agreement. On March 20, 2023, DSG issued 2,000,000 shares of DSG common stock to the Gexpro Services Stockholder (the “Gexpro Services Holdback Shares”) pursuant to the terms of the earnout provisions of the Gexpro Services Merger Agreement. The Gexpro Services Holdback Shares issued represented the maximum number of additional shares that could be issued under the Gexpro Services Merger Agreement, and no further shares are available for issuance, and no additional shares will be issued, in connection with the Gexpro Services Merger Agreement. </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of April 1, 2022, approximately 1,076,000 of the Gexpro Services Holdback Shares had been expected to be issued under the first earnout opportunity in the Gexpro Services Merger Agreement based on certain earnout metrics related to the consummation of certain additional acquisitions which were completed prior to the Merger Date. Under the Gexpro Services Merger Agreement, if any Gexpro Services Holdback Shares remained after the calculation of the first earnout opportunity, there was a second earnout opportunity under the Gexpro Services Merger Agreement based on certain earnout performance metrics. On March 20, 2023, all 2,000,000 Gexpro Services Holdback Shares were issued under the earnout opportunities. The incremental 924,000 Gexpro Services Holdback Shares that were issued in excess of the 1,076,000 Gexpro Services Holdback Shares that were originally expected to be issued had been remeasured at fair value immediately prior to and reclassified to equity at December 31, 2022. Refer to Note 8 – Earnout Liabilities for information about the earnout derivative liability related to the Gexpro Services Holdback Shares.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Accounting for the Mergers</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">TestEquity and Gexpro Services were treated as a combined entity as the accounting acquirer for financial reporting purposes, and DSG was identified as the accounting acquiree. Accordingly, periods prior to the April 1, 2022 Merger Date reflect the results of operations of TestEquity and Gexpro Services on a consolidated basis, and the results of operations of DSG's legacy Lawson business are only included subsequent to the April 1, 2022 Merger Date.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:112%">Nature of Operations </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of the nature of operations for each of DSG's operating companies is presented below. Information regarding DSG's reportable segments is presented in Note 14 – Segment Information. </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Lawson</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a distributor of specialty products and services to the industrial, commercial, institutional and government maintenance, repair and operations market.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">TestEquity</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a distributor of test and measurement equipment and solutions, industrial and electronic production supplies, vendor managed inventory programs, and converting, fabrication and adhesive solutions from its leading manufacturer partners supporting the aerospace and defense, wireless and communication, semiconductors, industrial electronics and automotive, and electronics manufacturing industries.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Gexpro Services</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> is a global supply chain solutions provider, specializing in the development of mission critical production line management, aftermarket and field installation programs. </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis of Presentation and Consolidation </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States and include the accounts and transactions of the Company and its wholly-owned subsidiaries. All significant intercompany transactions and balances have been eliminated in consolidation.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">2023 Stock Split</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 15, 2023, DSG announced that its Board of Directors approved and declared a two-for-one stock split (the “Stock Split”) which entitled each stockholder of record as of the close of business on August 25, 2023 to receive one additional share of DSG common stock for each share of DSG common stock then-held. The additional shares were distributed after the close of trading on August 31, 2023, and shares of DSG common stock began trading at the split-adjusted basis on September 1, 2023. Accordingly, all share and per share amounts have been retroactively adjusted to reflect the impact of the Stock Split for all periods presented herein. Refer to Note 11 – Stockholders' Equity for additional information about the Stock Split.</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">2022 Mergers</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Mergers were accounted for as a reverse merger under the acquisition method of accounting in accordance with the accounting guidance for reverse acquisitions as provided in Accounting Standards Codification ("ASC") 805, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Business Combinations</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> ("ASC 805"). Under this guidance, TestEquity and Gexpro Services were treated as a combined entity as the accounting acquirer for financial reporting purposes, and DSG was identified as the accounting acquiree. This determination was primarily made as TestEquity and Gexpro Services were under the common control of an entity that owns a majority of the voting rights of the combined entity, and therefore, only DSG experienced a change in control. Accordingly, the consolidated financial statements for the year ended December 31, 2022 reflect the results of operations and financial position of TestEquity and Gexpro Services on a consolidated basis, and the results of operations of DSG's legacy Lawson business are only included subsequent to the April 1, 2022 Merger Date. The combined operations of all three entities are included in the consolidated financial statements for the year ended December 31, 2023. The financial statements as of December 31, 2023 and 2022 reflect the financial position of TestEquity, Gexpro Services and DSG's legacy Lawson business on a consolidated basis.</span></div> | |
CY2023 | laws |
Number Of Principal Operating Segments
NumberOfPrincipalOperatingSegments
|
3 | segment |
CY2023Q3 | us-gaap |
Stockholders Equity Note Stock Split Conversion Ratio1
StockholdersEquityNoteStockSplitConversionRatio1
|
2 | |
CY2023Q3 | laws |
Stockholders Equity Note Stock Split Additional Shares Received Per Share Owned
StockholdersEquityNoteStockSplitAdditionalSharesReceivedPerShareOwned
|
1 | shares |
CY2023Q4 | laws |
Revenue Performance Obligation Satisfied At Point In Time Percentage
RevenuePerformanceObligationSatisfiedAtPointInTimePercentage
|
0.95 | |
CY2023Q4 | laws |
Revenue Performance Obligation Satisfied Over Time Percentage
RevenuePerformanceObligationSatisfiedOverTimePercentage
|
0.05 | |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
399900000 | usd |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
348000000 | usd |
CY2023 | us-gaap |
Impairment Of Long Lived Assets Held For Use
ImpairmentOfLongLivedAssetsHeldForUse
|
0 | usd |
CY2022 | us-gaap |
Impairment Of Long Lived Assets Held For Use
ImpairmentOfLongLivedAssetsHeldForUse
|
0 | usd |
CY2023Q3 | us-gaap |
Stockholders Equity Note Stock Split Conversion Ratio1
StockholdersEquityNoteStockSplitConversionRatio1
|
2 | |
CY2023 | us-gaap |
Foreign Currency Transaction Gain Loss After Tax
ForeignCurrencyTransactionGainLossAfterTax
|
-1500000 | usd |
CY2022 | us-gaap |
Foreign Currency Transaction Gain Loss After Tax
ForeignCurrencyTransactionGainLossAfterTax
|
-900000 | usd |
CY2023 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
138725 | shares |
CY2022 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
108178 | shares |
CY2023 | laws |
Treasury Stock Value Acquired Cost Method Including Share Based Payment Arrangement Value Withheld For Tax Withholding Obligation
TreasuryStockValueAcquiredCostMethodIncludingShareBasedPaymentArrangementValueWithheldForTaxWithholdingObligation
|
3900000 | usd |
CY2023 | us-gaap |
Number Of Operating Segments
NumberOfOperatingSegments
|
4 | segment |
CY2023 | us-gaap |
Number Of Reportable Segments
NumberOfReportableSegments
|
3 | segment |
CY2022Q4 | us-gaap |
Business Acquisition Purchase Price Allocation Goodwill Expected Tax Deductible Amount
BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount
|
53600000 | usd |
CY2023 | us-gaap |
Business Combination Pro Forma Information Revenue Of Acquiree Since Acquisition Date Actual
BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
|
229358000 | usd |
CY2022 | us-gaap |
Business Combination Pro Forma Information Revenue Of Acquiree Since Acquisition Date Actual
BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual
|
524955000 | usd |
CY2023 | us-gaap |
Business Combination Pro Forma Information Earnings Or Loss Of Acquiree Since Acquisition Date Actual
BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
|
-14478000 | usd |
CY2022 | us-gaap |
Business Combination Pro Forma Information Earnings Or Loss Of Acquiree Since Acquisition Date Actual
BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual
|
23953000 | usd |
CY2023 | us-gaap |
Use Of Estimates
UseOfEstimates
|
<div style="text-align:justify;text-indent:18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Use of Estimates</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">— Preparation of financial statements in conformity with accounting principles generally accepted in the United States requires management to make estimates and assumptions that affect the amounts reported for service revenue, service cost, allowance for doubtful accounts, inventory write-offs, goodwill and intangible assets valuation, stock-based compensation and income taxes in the consolidated financial statements and accompanying notes. Actual results could differ from these estimates.</span></div> | |
CY2023 | us-gaap |
Concentration Risk Credit Risk
ConcentrationRiskCreditRisk
|
<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Supplier Concentrations </span>— During 2023 and 2022, TestEquity purchases of inventory from one unrelated supplier accounted for 5.4% and 10.3% of the Company's total inventory purchases, respectively. | |
CY2023 | us-gaap |
Prior Period Reclassification Adjustment Description
PriorPeriodReclassificationAdjustmentDescription
|
<span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Reclassifications</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span>— Certain prior period amounts have been reclassified to conform to the current period presentation, primarily relating to the presentation of accrued expenses and other liabilities. These reclassifications did not result in any changes to previously reported total assets, stockholder’s equity, and net income. | |
CY2023 | laws |
Number Of Principal Operating Segments
NumberOfPrincipalOperatingSegments
|
3 | segment |
CY2023 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
1570402000 | usd |
CY2022 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
1151422000 | usd |
CY2023Q2 | us-gaap |
Restricted Cash
RestrictedCash
|
15700000 | usd |
CY2023Q2 | us-gaap |
Escrow Deposit
EscrowDeposit
|
12500000 | usd |
CY2023Q4 | us-gaap |
Escrow Deposit
EscrowDeposit
|
7300000 | usd |
CY2023Q4 | us-gaap |
Cash Collateral For Borrowed Securities
CashCollateralForBorrowedSecurities
|
8400000 | usd |
CY2023Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
144069000 | usd |
CY2022Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
82813000 | usd |
CY2023Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
30258000 | usd |
CY2022Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
18418000 | usd |
CY2023Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
113811000 | usd |
CY2022Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
64395000 | usd |
CY2023Q4 | us-gaap |
Accrued Salaries Current
AccruedSalariesCurrent
|
25371000 | usd |
CY2022Q4 | us-gaap |
Accrued Salaries Current
AccruedSalariesCurrent
|
24094000 | usd |
CY2023Q4 | laws |
Accrued Severance Current
AccruedSeveranceCurrent
|
21128000 | usd |
CY2022Q4 | laws |
Accrued Severance Current
AccruedSeveranceCurrent
|
927000 | usd |
CY2023Q4 | us-gaap |
Accrual For Taxes Other Than Income Taxes Current
AccrualForTaxesOtherThanIncomeTaxesCurrent
|
8661000 | usd |
CY2022Q4 | us-gaap |
Accrual For Taxes Other Than Income Taxes Current
AccrualForTaxesOtherThanIncomeTaxesCurrent
|
4885000 | usd |
CY2023Q4 | laws |
Deferred Acquisition Payment
DeferredAcquisitionPayment
|
7513000 | usd |
CY2022Q4 | laws |
Deferred Acquisition Payment
DeferredAcquisitionPayment
|
1383000 | usd |
CY2023Q4 | laws |
Accrued Stock Based Compensation
AccruedStockBasedCompensation
|
5573000 | usd |
CY2022Q4 | laws |
Accrued Stock Based Compensation
AccruedStockBasedCompensation
|
3340000 | usd |
CY2023Q4 | laws |
Accrued Customer Rebates
AccruedCustomerRebates
|
5473000 | usd |
CY2022Q4 | laws |
Accrued Customer Rebates
AccruedCustomerRebates
|
5053000 | usd |
CY2023Q4 | us-gaap |
Interest Payable Current
InterestPayableCurrent
|
3301000 | usd |
CY2022Q4 | us-gaap |
Interest Payable Current
InterestPayableCurrent
|
1775000 | usd |
CY2023Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
1994000 | usd |
CY2022Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
731000 | usd |
CY2023Q4 | us-gaap |
Accrued Employee Benefits Current
AccruedEmployeeBenefitsCurrent
|
1728000 | usd |
CY2022Q4 | us-gaap |
Accrued Employee Benefits Current
AccruedEmployeeBenefitsCurrent
|
1306000 | usd |
CY2023Q4 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
810000 | usd |
CY2022Q4 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
2313000 | usd |
CY2023Q4 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
15689000 | usd |
CY2022Q4 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
16870000 | usd |
CY2023Q4 | laws |
Accrued Liabilities And Other Accrued Liabilities Current
AccruedLiabilitiesAndOtherAccruedLiabilitiesCurrent
|
97241000 | usd |
CY2022Q4 | laws |
Accrued Liabilities And Other Accrued Liabilities Current
AccruedLiabilitiesAndOtherAccruedLiabilitiesCurrent
|
62677000 | usd |
CY2023Q4 | laws |
Security Bonus Plan
SecurityBonusPlan
|
8666000 | usd |
CY2022Q4 | laws |
Security Bonus Plan
SecurityBonusPlan
|
9651000 | usd |
CY2023Q4 | us-gaap |
Other Deferred Compensation Arrangements Liability Current And Noncurrent
OtherDeferredCompensationArrangementsLiabilityCurrentAndNoncurrent
|
11041000 | usd |
CY2022Q4 | us-gaap |
Other Deferred Compensation Arrangements Liability Current And Noncurrent
OtherDeferredCompensationArrangementsLiabilityCurrentAndNoncurrent
|
9962000 | usd |
CY2023Q4 | laws |
Other Miscellaneous Liabilities
OtherMiscellaneousLiabilities
|
5736000 | usd |
CY2022Q4 | laws |
Other Miscellaneous Liabilities
OtherMiscellaneousLiabilities
|
4036000 | usd |
CY2023Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
25443000 | usd |
CY2022Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
23649000 | usd |
CY2023Q4 | us-gaap |
Cash Surrender Value Fair Value Disclosure
CashSurrenderValueFairValueDisclosure
|
8200000 | usd |
CY2021Q4 | us-gaap |
Goodwill
Goodwill
|
104211000 | usd |
CY2022 | us-gaap |
Goodwill Acquired During Period
GoodwillAcquiredDuringPeriod
|
246861000 | usd |
CY2022 | us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
-3024000 | usd |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
348048000 | usd |
CY2023 | us-gaap |
Goodwill Acquired During Period
GoodwillAcquiredDuringPeriod
|
50886000 | usd |
CY2023 | us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
991000 | usd |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
399925000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
359405000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
105571000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
253834000 | usd |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
293181000 | usd |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
65187000 | usd |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
227994000 | usd |
CY2023 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
40300000 | usd |
CY2022 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
29100000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Next Twelve Months
FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
|
42875000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Two
FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
|
39180000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Three
FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
|
36167000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Four
FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
|
31305000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Five
FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
|
27192000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense After Year Five
FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
|
77115000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
253834000 | usd |
CY2023 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
21131000 | usd |
CY2022 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
15151000 | usd |
CY2023 | us-gaap |
Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
|
546000 | usd |
CY2022 | us-gaap |
Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
|
466000 | usd |
CY2023 | us-gaap |
Finance Lease Interest Expense
FinanceLeaseInterestExpense
|
93000 | usd |
CY2022 | us-gaap |
Finance Lease Interest Expense
FinanceLeaseInterestExpense
|
41000 | usd |
CY2023 | laws |
Finance Lease Cost
FinanceLeaseCost
|
639000 | usd |
CY2022 | laws |
Finance Lease Cost
FinanceLeaseCost
|
507000 | usd |
CY2023 | us-gaap |
Lease Cost
LeaseCost
|
21770000 | usd |
CY2022 | us-gaap |
Lease Cost
LeaseCost
|
15658000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
76340000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
46755000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
1560000 | usd |
CY2022Q4 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
1519000 | usd |
CY2023Q4 | laws |
Lease Assets Rightof Use Asset
LeaseAssetsRightofUseAsset
|
77900000 | usd |
CY2022Q4 | laws |
Lease Assets Rightof Use Asset
LeaseAssetsRightofUseAsset
|
48274000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
13010000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
9480000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
|
539000 | usd |
CY2022Q4 | us-gaap |
Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
|
484000 | usd |
CY2023Q4 | laws |
Lease Liability Current
LeaseLiabilityCurrent
|
13549000 | usd |
CY2022Q4 | laws |
Lease Liability Current
LeaseLiabilityCurrent
|
9964000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
66234000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
38898000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
|
831000 | usd |
CY2022Q4 | us-gaap |
Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
|
930000 | usd |
CY2023Q4 | laws |
Lease Liability Noncurrent
LeaseLiabilityNoncurrent
|
67065000 | usd |
CY2022Q4 | laws |
Lease Liability Noncurrent
LeaseLiabilityNoncurrent
|
39828000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Next Twelve Months
LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
|
18555000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Next Twelve Months
FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
|
615000 | usd |
CY2023Q4 | laws |
Net Lease Liability Payments Due Year One
NetLeaseLiabilityPaymentsDueYearOne
|
19170000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Two
LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
|
18299000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Two
FinanceLeaseLiabilityPaymentsDueYearTwo
|
435000 | usd |
CY2023Q4 | laws |
Net Lease Liability Payments Due Year Two
NetLeaseLiabilityPaymentsDueYearTwo
|
18734000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Three
LesseeOperatingLeaseLiabilityPaymentsDueYearThree
|
14488000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Three
FinanceLeaseLiabilityPaymentsDueYearThree
|
344000 | usd |
CY2023Q4 | laws |
Net Lease Liability Payments Due Year Three
NetLeaseLiabilityPaymentsDueYearThree
|
14832000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Four
LesseeOperatingLeaseLiabilityPaymentsDueYearFour
|
12371000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Four
FinanceLeaseLiabilityPaymentsDueYearFour
|
117000 | usd |
CY2023Q4 | laws |
Net Lease Liability Payments Due Year Four
NetLeaseLiabilityPaymentsDueYearFour
|
12488000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Five
LesseeOperatingLeaseLiabilityPaymentsDueYearFive
|
10440000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Five
FinanceLeaseLiabilityPaymentsDueYearFive
|
4000 | usd |
CY2023Q4 | laws |
Net Lease Liability Payments Due Year Five
NetLeaseLiabilityPaymentsDueYearFive
|
10444000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due After Year Five
LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
|
29841000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due After Year Five
FinanceLeaseLiabilityPaymentsDueAfterYearFive
|
1000 | usd |
CY2023Q4 | laws |
Net Lease Liability Payments Dueafter Year Five
NetLeaseLiabilityPaymentsDueafterYearFive
|
29842000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due
LesseeOperatingLeaseLiabilityPaymentsDue
|
103994000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due
FinanceLeaseLiabilityPaymentsDue
|
1516000 | usd |
CY2023Q4 | laws |
Net Lease Liability Payments Due
NetLeaseLiabilityPaymentsDue
|
105510000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Undiscounted Excess Amount
LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
|
24750000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Undiscounted Excess Amount
FinanceLeaseLiabilityUndiscountedExcessAmount
|
146000 | usd |
CY2023Q4 | laws |
Net Lease Liability Imputed Interest
NetLeaseLiabilityImputedInterest
|
24896000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
79244000 | usd |
CY2023Q4 | laws |
Finance Lease Liability Present Value
FinanceLeaseLiabilityPresentValue
|
1370000 | usd |
CY2023Q4 | laws |
Net Lease Liability Present Value
NetLeaseLiabilityPresentValue
|
80614000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
|
P6Y7M6D | |
CY2023Q4 | us-gaap |
Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
|
P2Y9M18D | |
CY2022Q4 | us-gaap |
Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
|
P5Y7M6D | |
CY2022Q4 | us-gaap |
Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
|
P3Y1M6D | |
CY2023Q4 | us-gaap |
Stock Repurchase Program Authorized Amount1
StockRepurchaseProgramAuthorizedAmount1
|
37500000 | usd |
CY2023 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
138725 | shares |
CY2023 | us-gaap |
Treasury Stock Acquired Average Cost Per Share
TreasuryStockAcquiredAverageCostPerShare
|
26.09 | |
CY2023 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
3600000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
|
0.078 | |
CY2023Q4 | us-gaap |
Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
|
0.071 | |
CY2022Q4 | us-gaap |
Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
|
0.071 | |
CY2022Q4 | us-gaap |
Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
|
0.066 | |
CY2023 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
15516000 | usd |
CY2022 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
12149000 | usd |
CY2023 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
242000 | usd |
CY2022 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
184000 | usd |
CY2023 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
515000 | usd |
CY2022 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
429000 | usd |
CY2022Q2 | us-gaap |
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Liability Purchases
FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases
|
43900000 | usd |
CY2022 | us-gaap |
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Liability Gain Loss Included In Earnings
FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings
|
300000 | usd |
CY2023 | us-gaap |
Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Liability Gain Loss Included In Earnings
FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings
|
0 | usd |
CY2023Q4 | us-gaap |
Debt Instrument Carrying Amount
DebtInstrumentCarryingAmount
|
574676000 | usd |
CY2022Q4 | us-gaap |
Debt Instrument Carrying Amount
DebtInstrumentCarryingAmount
|
417102000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
32551000 | usd |
CY2022Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
16352000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt
LongTermDebt
|
535881000 | usd |
CY2022Q4 | us-gaap |
Long Term Debt
LongTermDebt
|
395825000 | usd |
CY2023 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
7900000 | usd |
CY2022 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
2400000 | usd |
CY2023 | us-gaap |
Employee Service Share Based Compensation Tax Benefit From Compensation Expense
EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
|
900000 | usd |
CY2022 | us-gaap |
Employee Service Share Based Compensation Tax Benefit From Compensation Expense
EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
|
2100000 | usd |
CY2023Q4 | us-gaap |
Deferred Compensation Sharebased Arrangements Liability Current And Noncurrent
DeferredCompensationSharebasedArrangementsLiabilityCurrentAndNoncurrent
|
5600000 | usd |
CY2022Q4 | us-gaap |
Deferred Compensation Sharebased Arrangements Liability Current And Noncurrent
DeferredCompensationSharebasedArrangementsLiabilityCurrentAndNoncurrent
|
3300000 | usd |
CY2023Q3 | laws |
Stockholders Equity Note Stock Split Additional Shares Received Per Share Owned
StockholdersEquityNoteStockSplitAdditionalSharesReceivedPerShareOwned
|
1 | shares |
CY2023Q3 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
35000000 | shares |
CY2023Q3 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
70000000 | shares |
CY2022Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
1.00 | |
CY2023Q2 | laws |
Rights Offering Number Of Transferable Subscription Rights
RightsOfferingNumberOfTransferableSubscriptionRights
|
1 | right |
CY2019Q4 | us-gaap |
Stock Repurchase Program Authorized Amount1
StockRepurchaseProgramAuthorizedAmount1
|
7500000 | usd |
CY2022Q4 | laws |
Stock Repurchase Program Additional Authorized Amount
StockRepurchaseProgramAdditionalAuthorizedAmount
|
5000000 | usd |
CY2023Q4 | laws |
Stock Repurchase Program Additional Authorized Amount
StockRepurchaseProgramAdditionalAuthorizedAmount
|
25000000 | usd |
CY2022 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
108178 | shares |
CY2022 | us-gaap |
Treasury Stock Acquired Average Cost Per Share
TreasuryStockAcquiredAverageCostPerShare
|
17.93 | |
CY2022Q4 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
1900000 | usd |
CY2023Q4 | us-gaap |
Stock Repurchase Program Remaining Authorized Repurchase Amount1
StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
|
29000000 | usd |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
-8967000 | usd |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
7406000 | usd |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
44868862 | shares |
CY2022 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
34291870 | shares |
CY2023 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
-0.20 | |
CY2022 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.22 | |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
-8967000 | usd |
CY2022 | us-gaap |
Net Income Loss
NetIncomeLoss
|
7406000 | usd |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
44868862 | shares |
CY2022 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
34291870 | shares |
CY2023 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
0 | shares |
CY2022 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
794722 | shares |
CY2023 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
44868862 | shares |
CY2022 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
35086592 | shares |
CY2023 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
-0.20 | |
CY2022 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.21 | |
CY2023 | us-gaap |
Antidilutive Securities Excluded From Computation Of Earnings Per Share Amount
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
|
424934 | shares |
CY2022 | us-gaap |
Antidilutive Securities Excluded From Computation Of Earnings Per Share Amount
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
|
496000 | shares |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
-24949000 | usd |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
910000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
22942000 | usd |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
12027000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
-2007000 | usd |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
12937000 | usd |
CY2023 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
4961000 | usd |
CY2022 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
4011000 | usd |
CY2023 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
2388000 | usd |
CY2022 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
869000 | usd |
CY2023 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
7639000 | usd |
CY2022 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
3057000 | usd |
CY2023 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
14988000 | usd |
CY2022 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
7937000 | usd |
CY2023 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-8101000 | usd |
CY2022 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-947000 | usd |
CY2023 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
1232000 | usd |
CY2022 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-73000 | usd |
CY2023 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
-1159000 | usd |
CY2022 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
-1386000 | usd |
CY2023 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-8028000 | usd |
CY2022 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-2406000 | usd |
CY2023 | us-gaap |
Federal Income Tax Expense Benefit Continuing Operations
FederalIncomeTaxExpenseBenefitContinuingOperations
|
-3141000 | usd |
CY2022 | us-gaap |
Federal Income Tax Expense Benefit Continuing Operations
FederalIncomeTaxExpenseBenefitContinuingOperations
|
3063000 | usd |
CY2023 | us-gaap |
State And Local Income Tax Expense Benefit Continuing Operations
StateAndLocalIncomeTaxExpenseBenefitContinuingOperations
|
3620000 | usd |
CY2022 | us-gaap |
State And Local Income Tax Expense Benefit Continuing Operations
StateAndLocalIncomeTaxExpenseBenefitContinuingOperations
|
796000 | usd |
CY2023 | us-gaap |
Foreign Income Tax Expense Benefit Continuing Operations
ForeignIncomeTaxExpenseBenefitContinuingOperations
|
6481000 | usd |
CY2022 | us-gaap |
Foreign Income Tax Expense Benefit Continuing Operations
ForeignIncomeTaxExpenseBenefitContinuingOperations
|
1672000 | usd |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
6960000 | usd |
CY2022 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
5531000 | usd |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.210 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.210 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Change In Deferred Tax Assets Valuation Allowance
EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
-3.807 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Change In Deferred Tax Assets Valuation Allowance
EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
0.013 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Foreign Income Tax Rate Differential
EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
|
0.062 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Foreign Income Tax Rate Differential
EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
|
0.040 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Share Based Compensation Excess Tax Benefit Percent
EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
|
-0.050 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Share Based Compensation Excess Tax Benefit Percent
EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
|
-0.005 | |
CY2023 | laws |
Effective Income Tax Rate Reconciliation Compensation Deduction Limitation Percent
EffectiveIncomeTaxRateReconciliationCompensationDeductionLimitationPercent
|
-0.070 | |
CY2022 | laws |
Effective Income Tax Rate Reconciliation Compensation Deduction Limitation Percent
EffectiveIncomeTaxRateReconciliationCompensationDeductionLimitationPercent
|
0 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
|
0.671 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
|
0.045 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Nondeductible Expense Life Insurance
EffectiveIncomeTaxRateReconciliationNondeductibleExpenseLifeInsurance
|
-0.034 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Nondeductible Expense Life Insurance
EffectiveIncomeTaxRateReconciliationNondeductibleExpenseLifeInsurance
|
0 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Nondeductible Expense Meals And Entertainment
EffectiveIncomeTaxRateReconciliationNondeductibleExpenseMealsAndEntertainment
|
-0.173 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Nondeductible Expense Meals And Entertainment
EffectiveIncomeTaxRateReconciliationNondeductibleExpenseMealsAndEntertainment
|
0.014 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Tax Contingencies Other
EffectiveIncomeTaxRateReconciliationTaxContingenciesOther
|
0.181 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Tax Contingencies Other
EffectiveIncomeTaxRateReconciliationTaxContingenciesOther
|
-0.029 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Tax Settlements Other
EffectiveIncomeTaxRateReconciliationTaxSettlementsOther
|
-0.453 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Tax Settlements Other
EffectiveIncomeTaxRateReconciliationTaxSettlementsOther
|
0 | |
CY2023 | laws |
Effective Income Tax Rate Reconciliation Gilti Section78 Fdii And Section250 Percent
EffectiveIncomeTaxRateReconciliationGILTISection78FDIIAndSection250Percent
|
0 | |
CY2022 | laws |
Effective Income Tax Rate Reconciliation Gilti Section78 Fdii And Section250 Percent
EffectiveIncomeTaxRateReconciliationGILTISection78FDIIAndSection250Percent
|
0.032 | |
CY2023 | laws |
Effective Income Tax Rate Reconciliation Transaction Costs Percent
EffectiveIncomeTaxRateReconciliationTransactionCostsPercent
|
0 | |
CY2022 | laws |
Effective Income Tax Rate Reconciliation Transaction Costs Percent
EffectiveIncomeTaxRateReconciliationTransactionCostsPercent
|
0.083 | |
CY2023 | laws |
Effective Income Tax Rate Reconciliation Branch Income Percent
EffectiveIncomeTaxRateReconciliationBranchIncomePercent
|
-0.816 | |
CY2022 | laws |
Effective Income Tax Rate Reconciliation Branch Income Percent
EffectiveIncomeTaxRateReconciliationBranchIncomePercent
|
0 | |
CY2023 | laws |
Effective Income Tax Rate Reconciliation Earn Out Revaluation Percent
EffectiveIncomeTaxRateReconciliationEarnOutRevaluationPercent
|
0 | |
CY2022 | laws |
Effective Income Tax Rate Reconciliation Earn Out Revaluation Percent
EffectiveIncomeTaxRateReconciliationEarnOutRevaluationPercent
|
0.008 | |
CY2023 | laws |
Effective Income Tax Rate Reconciliation Change In Deferred Balances Percent
EffectiveIncomeTaxRateReconciliationChangeInDeferredBalancesPercent
|
0.794 | |
CY2022 | laws |
Effective Income Tax Rate Reconciliation Change In Deferred Balances Percent
EffectiveIncomeTaxRateReconciliationChangeInDeferredBalancesPercent
|
0 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Other Adjustments
EffectiveIncomeTaxRateReconciliationOtherAdjustments
|
0.017 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Other Adjustments
EffectiveIncomeTaxRateReconciliationOtherAdjustments
|
0.017 | |
CY2023 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
-3.468 | |
CY2022 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.428 | |
CY2023 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
-3.468 | |
CY2022 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.428 | |
CY2023Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
10158000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
8218000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
|
8815000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
|
6990000 | usd |
CY2023Q4 | laws |
Deferred Tax Assets Transaction Costs
DeferredTaxAssetsTransactionCosts
|
673000 | usd |
CY2022Q4 | laws |
Deferred Tax Assets Transaction Costs
DeferredTaxAssetsTransactionCosts
|
1620000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Share Based Compensation Cost
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
|
3602000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Share Based Compensation Cost
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
|
2531000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Employee Benefits
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
|
11998000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Employee Benefits
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeBenefits
|
7074000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Allowance For Doubtful Accounts
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
|
977000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Allowance For Doubtful Accounts
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
|
496000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Credit Carryforwards
DeferredTaxAssetsTaxCreditCarryforwards
|
15891000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Credit Carryforwards
DeferredTaxAssetsTaxCreditCarryforwards
|
7692000 | usd |
CY2023Q4 | laws |
Deferred Tax Assets Lease Assets
DeferredTaxAssetsLeaseAssets
|
18936000 | usd |
CY2022Q4 | laws |
Deferred Tax Assets Lease Assets
DeferredTaxAssetsLeaseAssets
|
11947000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets State Taxes
DeferredTaxAssetsStateTaxes
|
0 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets State Taxes
DeferredTaxAssetsStateTaxes
|
745000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Deferred Income
DeferredTaxAssetsDeferredIncome
|
77000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Deferred Income
DeferredTaxAssetsDeferredIncome
|
86000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Investment In Subsidiaries
DeferredTaxAssetsInvestmentInSubsidiaries
|
0 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Investment In Subsidiaries
DeferredTaxAssetsInvestmentInSubsidiaries
|
0 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Other
DeferredTaxAssetsOther
|
4005000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Other
DeferredTaxAssetsOther
|
2822000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
75132000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
50221000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
|
44057000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
|
45951000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Leasing Arrangements
DeferredTaxLiabilitiesLeasingArrangements
|
18264000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Leasing Arrangements
DeferredTaxLiabilitiesLeasingArrangements
|
11295000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
20977000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
15617000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Deferred Expense
DeferredTaxLiabilitiesDeferredExpense
|
17000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Deferred Expense
DeferredTaxLiabilitiesDeferredExpense
|
0 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Other
DeferredTaxLiabilitiesOther
|
1591000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Other
DeferredTaxLiabilitiesOther
|
188000 | usd |
CY2023Q4 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
84906000 | usd |
CY2022Q4 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
73051000 | usd |
CY2023Q4 | laws |
Deferred Tax Assets Net Of Deferred Tax Liabilities Before Valuation Allowance
DeferredTaxAssetsNetOfDeferredTaxLiabilitiesBeforeValuationAllowance
|
-9774000 | usd |
CY2022Q4 | laws |
Deferred Tax Assets Net Of Deferred Tax Liabilities Before Valuation Allowance
DeferredTaxAssetsNetOfDeferredTaxLiabilitiesBeforeValuationAllowance
|
-22830000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
8457000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
815000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
18231000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
23645000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards Domestic
DeferredTaxAssetsOperatingLossCarryforwardsDomestic
|
21400000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards State And Local
DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal
|
53500000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
8500000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
800000 | usd |
CY2022Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
3027000 | usd |
CY2021Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
0 | usd |
CY2023 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Current Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
|
0 | usd |
CY2022 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Current Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
|
191000 | usd |
CY2023 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
|
503000 | usd |
CY2022 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
|
3741000 | usd |
CY2023 | us-gaap |
Unrecognized Tax Benefits Decreases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
|
0 | usd |
CY2022 | us-gaap |
Unrecognized Tax Benefits Decreases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
|
238000 | usd |
CY2023 | us-gaap |
Unrecognized Tax Benefits Reductions Resulting From Lapse Of Applicable Statute Of Limitations
UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
|
796000 | usd |
CY2022 | us-gaap |
Unrecognized Tax Benefits Reductions Resulting From Lapse Of Applicable Statute Of Limitations
UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
|
667000 | usd |
CY2023Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
2734000 | usd |
CY2022Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
3027000 | usd |
CY2023Q4 | us-gaap |
Unrecognized Tax Benefits That Would Impact Effective Tax Rate
UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate
|
1100000 | usd |
CY2023Q4 | us-gaap |
Unrecognized Tax Benefits Income Tax Penalties And Interest Accrued
UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
|
800000 | usd |
CY2022Q4 | us-gaap |
Unrecognized Tax Benefits Income Tax Penalties And Interest Accrued
UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
|
900000 | usd |
CY2023 | us-gaap |
Number Of Reportable Segments
NumberOfReportableSegments
|
3 | segment |
CY2023 | laws |
Number Of Branches
NumberOfBranches
|
14 | branch |
CY2023 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
1570402000 | usd |
CY2022 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
1151422000 | usd |
CY2023 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
42991000 | usd |
CY2022 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
41786000 | usd |
CY2023 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
1570402000 | usd |
CY2023 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
1570402000 | usd |
CY2022 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
1151422000 | usd |
CY2022 | us-gaap |
Revenue From Contract With Customer Excluding Assessed Tax
RevenueFromContractWithCustomerExcludingAssessedTax
|
1151422000 | usd |
CY2023Q4 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
874413000 | usd |
CY2022Q4 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
720067000 | usd |
CY2023Q4 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
874413000 | usd |
CY2022Q4 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
720067000 | usd |
CY2023 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
15337000 | usd |
CY2022 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
8307000 | usd |
CY2023 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
63588000 | usd |
CY2022 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
45186000 | usd |
CY2023Q4 | us-gaap |
Accrual For Environmental Loss Contingencies
AccrualForEnvironmentalLossContingencies
|
100000 | usd |
CY2023 | us-gaap |
Defined Contribution Plan Cost Recognized
DefinedContributionPlanCostRecognized
|
7200000 | usd |
CY2022 | us-gaap |
Defined Contribution Plan Cost Recognized
DefinedContributionPlanCostRecognized
|
5500000 | usd |
CY2023Q4 | ecd |
Non Rule10b51 Arr Adopted Flag
NonRule10b51ArrAdoptedFlag
|
false | |
CY2023Q4 | ecd |
Rule10b51 Arr Adopted Flag
Rule10b51ArrAdoptedFlag
|
false | |
CY2023Q4 | ecd |
Non Rule10b51 Arr Trmntd Flag
NonRule10b51ArrTrmntdFlag
|
false | |
CY2023Q4 | ecd |
Rule10b51 Arr Trmntd Flag
Rule10b51ArrTrmntdFlag
|
false |