2024 Q3 Form 10-K Financial Statement
#000143774924028638 Filed on September 06, 2024
Income Statement
Concept | 2024 Q3 | 2024 Q2 | 2024 |
---|---|---|---|
Revenue | $72.90M | $84.42M | $295.1M |
YoY Change | 14.7% | 0.59% | 6.56% |
Cost Of Revenue | $53.58M | $59.33M | $211.8M |
YoY Change | 14.18% | 0.26% | 4.53% |
Gross Profit | $19.32M | $25.09M | $83.32M |
YoY Change | 16.14% | 1.37% | 12.09% |
Gross Profit Margin | 26.51% | 29.72% | 28.23% |
Selling, General & Admin | $19.49M | $20.36M | $71.62M |
YoY Change | 15.19% | 22.95% | 15.07% |
% of Gross Profit | 100.85% | 81.14% | 85.96% |
Research & Development | $2.629M | ||
YoY Change | 6.96% | ||
% of Gross Profit | 3.16% | ||
Depreciation & Amortization | $3.238M | $2.484M | $9.981M |
YoY Change | 30.14% | 2.52% | 6.65% |
% of Gross Profit | 16.76% | 9.9% | 11.98% |
Operating Expenses | $19.49M | $20.36M | $71.62M |
YoY Change | 15.19% | 22.96% | 23.28% |
Operating Profit | -$165.0K | $4.730M | $11.70M |
YoY Change | -41.07% | -42.25% | -27.96% |
Interest Expense | -$1.980M | -$394.0K | -$1.443M |
YoY Change | -602.54% | -31.0% | -35.95% |
% of Operating Profit | -8.33% | -12.34% | |
Other Income/Expense, Net | -$1.344M | $4.685M | $5.331M |
YoY Change | -1081.02% | 87.93% | 710.18% |
Pretax Income | -$2.145M | $9.010M | $15.37M |
YoY Change | 299.44% | -11.18% | 6.24% |
Income Tax | $627.0K | $1.515M | $4.121M |
% Of Pretax Income | 16.81% | 26.82% | |
Net Earnings | -$2.765M | $7.410M | $10.99M |
YoY Change | 135.72% | -13.8% | 5.86% |
Net Earnings / Revenue | -3.79% | 8.78% | 3.72% |
Basic Earnings Per Share | -$0.20 | $0.80 | |
Diluted Earnings Per Share | -$0.20 | $0.53 | $0.79 |
COMMON SHARES | |||
Basic Shares Outstanding | 14.11M | 14.00M | 13.68M |
Diluted Shares Outstanding | 13.78M | 13.88M |
Balance Sheet
Concept | 2024 Q3 | 2024 Q2 | 2024 |
---|---|---|---|
SHORT-TERM ASSETS | |||
Cash & Short-Term Investments | $16.71M | $20.07M | $20.07M |
YoY Change | -18.08% | 51.32% | 51.32% |
Cash & Equivalents | $16.71M | $20.07M | |
Short-Term Investments | |||
Other Short-Term Assets | $18.16M | $16.87M | $16.87M |
YoY Change | 107.21% | -14.6% | -14.6% |
Inventory | $143.9M | $130.5M | $130.5M |
Prepaid Expenses | $8.656M | ||
Receivables | $51.51M | $52.21M | $52.21M |
Other Receivables | $0.00 | $0.00 | $0.00 |
Total Short-Term Assets | $230.2M | $219.6M | $219.6M |
YoY Change | 10.06% | -0.03% | -0.03% |
LONG-TERM ASSETS | |||
Property, Plant & Equipment | $58.96M | $74.70M | $74.70M |
YoY Change | 47.16% | 44.25% | 44.25% |
Goodwill | |||
YoY Change | |||
Intangibles | $12.29M | $12.69M | |
YoY Change | 6.72% | 0.39% | |
Long-Term Investments | |||
YoY Change | |||
Other Assets | $2.676M | $5.045M | $5.045M |
YoY Change | -7.53% | -0.2% | -0.2% |
Total Long-Term Assets | $93.30M | $92.43M | $92.43M |
YoY Change | 35.66% | 33.04% | 33.04% |
TOTAL ASSETS | |||
Total Short-Term Assets | $230.2M | $219.6M | $219.6M |
Total Long-Term Assets | $93.30M | $92.43M | $92.43M |
Total Assets | $323.5M | $312.1M | $312.1M |
YoY Change | 16.39% | 7.91% | 7.91% |
SHORT-TERM LIABILITIES | |||
YoY Change | |||
Accounts Payable | $31.11M | $32.59M | $32.59M |
YoY Change | 5.14% | -10.72% | -10.72% |
Accrued Expenses | $70.26M | $64.93M | $64.93M |
YoY Change | 15.88% | 5.43% | 5.43% |
Deferred Revenue | $26.54M | ||
YoY Change | 15.71% | ||
Short-Term Debt | $0.00 | $0.00 | $0.00 |
YoY Change | |||
Long-Term Debt Due | $2.000M | $2.000M | $2.000M |
YoY Change | -0.1% | -0.5% | -0.5% |
Total Short-Term Liabilities | $103.4M | $99.52M | $99.52M |
YoY Change | 12.09% | -0.58% | -0.58% |
LONG-TERM LIABILITIES | |||
Long-Term Debt | $27.79M | $23.81M | $23.81M |
YoY Change | 41.41% | 43.29% | 43.29% |
Other Long-Term Liabilities | $6.241M | $28.34M | $28.34M |
YoY Change | 8.56% | 19.71% | 19.71% |
Total Long-Term Liabilities | $34.04M | $52.15M | $52.15M |
YoY Change | 33.97% | 29.43% | 29.43% |
TOTAL LIABILITIES | |||
Total Short-Term Liabilities | $103.4M | $99.52M | $99.52M |
Total Long-Term Liabilities | $34.04M | $52.15M | $52.15M |
Total Liabilities | $165.5M | $157.4M | $157.4M |
YoY Change | 20.12% | 9.21% | 9.21% |
SHAREHOLDERS EQUITY | |||
Retained Earnings | $126.3M | $129.6M | |
YoY Change | 5.99% | 7.72% | |
Common Stock | $39.90M | $41.80M | |
YoY Change | 1.17% | -2.47% | |
Preferred Stock | |||
YoY Change | |||
Treasury Stock (at cost) | |||
YoY Change | |||
Treasury Stock Shares | |||
Shareholders Equity | $157.5M | $154.7M | $154.7M |
YoY Change | |||
Total Liabilities & Shareholders Equity | $323.5M | $312.1M | $312.1M |
YoY Change | 16.39% | 7.91% | 7.91% |
Cashflow Statement
Concept | 2024 Q3 | 2024 Q2 | 2024 |
---|---|---|---|
OPERATING ACTIVITIES | |||
Net Income | -$2.765M | $7.410M | $10.99M |
YoY Change | 135.72% | -13.8% | 5.86% |
Depreciation, Depletion And Amortization | $3.238M | $2.484M | $9.981M |
YoY Change | 30.14% | 2.52% | 6.65% |
Cash From Operating Activities | -$4.344M | $11.44M | $33.72M |
YoY Change | -144.32% | -28.66% | 47.24% |
INVESTING ACTIVITIES | |||
Capital Expenditures | $2.362M | $1.109M | $8.707M |
YoY Change | -35.99% | -2.29% | 9.96% |
Acquisitions | |||
YoY Change | |||
Other Investing Activities | $369.0K | -$23.19M | -$23.36M |
YoY Change | -920.0% | -17409.7% | -411.08% |
Cash From Investing Activities | -$2.722M | -$24.30M | -$32.07M |
YoY Change | -25.32% | 2327.97% | 7760.05% |
FINANCING ACTIVITIES | |||
Cash Dividend Paid | |||
YoY Change | |||
Common Stock Issuance & Retirement, Net | |||
YoY Change | |||
Debt Paid & Issued, Net | |||
YoY Change | |||
Cash From Financing Activities | $934.0K | 7.837M | 2.754M |
YoY Change | 45.26% | -158.83% | -114.12% |
NET CHANGE | |||
Cash From Operating Activities | -$4.344M | 11.44M | 33.72M |
Cash From Investing Activities | -$2.722M | -24.30M | -32.07M |
Cash From Financing Activities | $934.0K | 7.837M | 2.754M |
Net Change In Cash | -$3.359M | -5.024M | 4.401M |
YoY Change | -146.88% | -392.77% | 47.73% |
FREE CASH FLOW | |||
Cash From Operating Activities | -$4.344M | $11.44M | $33.72M |
Capital Expenditures | $2.362M | $1.109M | $8.707M |
Free Cash Flow | -$6.706M | $10.33M | $25.01M |
YoY Change | -209.72% | -30.66% | 66.95% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
CY2024 | dei |
Amendment Flag
AmendmentFlag
|
false | |
CY2024 | dei |
Current Fiscal Year End Date
CurrentFiscalYearEndDate
|
--06-30 | |
CY2024 | dei |
Document Fiscal Period Focus
DocumentFiscalPeriodFocus
|
FY | |
CY2024 | dei |
Document Fiscal Year Focus
DocumentFiscalYearFocus
|
2024 | |
CY2024 | ecd |
Rule10b51 Arr Trmntd Flag
Rule10b51ArrTrmntdFlag
|
false | |
CY2024 | ecd |
Rule10b51 Arr Adopted Flag
Rule10b51ArrAdoptedFlag
|
false | |
CY2024 | ecd |
Non Rule10b51 Arr Trmntd Flag
NonRule10b51ArrTrmntdFlag
|
false | |
CY2024 | ecd |
Non Rule10b51 Arr Adopted Flag
NonRule10b51ArrAdoptedFlag
|
false | |
CY2024Q2 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
200000 | |
CY2023Q2 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
200000 | |
CY2024Q2 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2023Q2 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2024Q2 | us-gaap |
Preferred Stock No Par Value
PreferredStockNoParValue
|
0 | |
CY2023Q2 | us-gaap |
Preferred Stock No Par Value
PreferredStockNoParValue
|
0 | |
CY2024Q2 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
30000000 | |
CY2023Q2 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
30000000 | |
CY2024Q2 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
14632802 | |
CY2023Q2 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
14632802 | |
CY2024Q2 | us-gaap |
Common Stock No Par Value
CommonStockNoParValue
|
0 | |
CY2023Q2 | us-gaap |
Common Stock No Par Value
CommonStockNoParValue
|
0 | |
CY2024Q2 | us-gaap |
Treasury Stock Common Shares
TreasuryStockCommonShares
|
637778 | |
CY2023Q2 | us-gaap |
Treasury Stock Common Shares
TreasuryStockCommonShares
|
814734 | |
CY2024 | us-gaap |
Other Comprehensive Income Loss Amortization Adjustment From Aoci Pension And Other Postretirement Benefit Plans For Net Prior Service Cost Credit Tax
OtherComprehensiveIncomeLossAmortizationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetPriorServiceCostCreditTax
|
8000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Loss Amortization Adjustment From Aoci Pension And Other Postretirement Benefit Plans For Net Prior Service Cost Credit Tax
OtherComprehensiveIncomeLossAmortizationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetPriorServiceCostCreditTax
|
21000 | usd |
CY2024 | us-gaap |
Other Comprehensive Income Loss Cash Flow Hedge Gain Loss After Reclassification Tax
OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax
|
0 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Loss Cash Flow Hedge Gain Loss After Reclassification Tax
OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax
|
0 | usd |
CY2023 | us-gaap |
Tangible Asset Impairment Charges
TangibleAssetImpairmentCharges
|
0 | usd |
CY2023Q2 | us-gaap |
Operating Lease Right Of Use Asset Statement Of Financial Position Extensible List
OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#OperatingLeaseRightOfUseAsset | |
CY2024Q2 | us-gaap |
Operating Lease Right Of Use Asset Statement Of Financial Position Extensible List
OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#OperatingLeaseRightOfUseAsset | |
CY2024Q2 | us-gaap |
Finance Lease Right Of Use Asset Statement Of Financial Position Extensible List
FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#PropertyPlantAndEquipmentNet | |
CY2023Q2 | us-gaap |
Finance Lease Right Of Use Asset Statement Of Financial Position Extensible List
FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#PropertyPlantAndEquipmentNet | |
CY2024Q2 | us-gaap |
Operating Lease Liability Current Statement Of Financial Position Extensible List
OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#AccruedLiabilitiesCurrent | |
CY2023Q2 | us-gaap |
Operating Lease Liability Current Statement Of Financial Position Extensible List
OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#AccruedLiabilitiesCurrent | |
CY2024Q2 | us-gaap |
Operating Lease Liability Noncurrent Statement Of Financial Position Extensible List
OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#OperatingLeaseLiabilityNoncurrent | |
CY2023Q2 | us-gaap |
Operating Lease Liability Noncurrent Statement Of Financial Position Extensible List
OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#OperatingLeaseLiabilityNoncurrent | |
CY2024Q2 | us-gaap |
Finance Lease Liability Current Statement Of Financial Position Extensible List
FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#AccruedLiabilitiesCurrent | |
CY2023Q2 | us-gaap |
Finance Lease Liability Current Statement Of Financial Position Extensible List
FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#AccruedLiabilitiesCurrent | |
CY2023Q2 | us-gaap |
Finance Lease Liability Noncurrent Statement Of Financial Position Extensible List
FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#OtherLiabilitiesNoncurrent | |
CY2024Q2 | us-gaap |
Finance Lease Liability Noncurrent Statement Of Financial Position Extensible List
FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2024#OtherLiabilitiesNoncurrent | |
CY2024Q2 | us-gaap |
Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
|
P8Y8M12D | |
CY2024 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
0 | |
CY2023 | us-gaap |
Treasury Stock Shares Acquired
TreasuryStockSharesAcquired
|
0 | |
CY2023Q2 | us-gaap |
Stock Repurchase Program Remaining Number Of Shares Authorized To Be Repurchased
StockRepurchaseProgramRemainingNumberOfSharesAuthorizedToBeRepurchased
|
315000 | |
CY2024Q2 | twin |
Accumulated Other Comprehensive Income Loss Defined Benefit Plan Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPlanTax
|
-141000 | usd |
CY2023Q2 | twin |
Accumulated Other Comprehensive Income Loss Defined Benefit Plan Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPlanTax
|
-133000 | usd |
CY2024Q2 | twin |
Aoci Cash Flow Hedge Cumulative Gain Loss Tax
AOCICashFlowHedgeCumulativeGainLossTax
|
-210000 | usd |
CY2023Q2 | twin |
Aoci Cash Flow Hedge Cumulative Gain Loss Tax
AOCICashFlowHedgeCumulativeGainLossTax
|
-210000 | usd |
CY2024Q2 | twin |
Aoci Net Investment Hedge Cumulative Gain Loss Tax
AOCINetInvestmentHedgeCumulativeGainLossTax
|
103000 | usd |
CY2023Q2 | twin |
Aoci Net Investment Hedge Cumulative Gain Loss Tax
AOCINetInvestmentHedgeCumulativeGainLossTax
|
103000 | usd |
CY2024 | us-gaap |
Number Of Reportable Segments
NumberOfReportableSegments
|
2 | pure |
CY2024 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.21 | pure |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.21 | pure |
CY2024Q2 | us-gaap |
Derivative Asset Current Statement Of Financial Position Extensible Enumeration
DerivativeAssetCurrentStatementOfFinancialPositionExtensibleEnumeration
|
http://fasb.org/us-gaap/2024#OtherAssetsCurrent | |
CY2024Q2 | us-gaap |
Derivative Asset Noncurrent Statement Of Financial Position Extensible Enumeration
DerivativeAssetNoncurrentStatementOfFinancialPositionExtensibleEnumeration
|
http://fasb.org/us-gaap/2024#OtherAssetsNoncurrent | |
CY2024 | dei |
Document Annual Report
DocumentAnnualReport
|
true | |
CY2024 | dei |
Document Period End Date
DocumentPeriodEndDate
|
2024-06-30 | |
CY2024 | dei |
Document Transition Report
DocumentTransitionReport
|
false | |
CY2024 | dei |
Entity File Number
EntityFileNumber
|
1-7635 | |
CY2024 | dei |
Entity Incorporation State Country Code
EntityIncorporationStateCountryCode
|
WI | |
CY2024 | dei |
Entity Tax Identification Number
EntityTaxIdentificationNumber
|
39-0667110 | |
CY2024 | dei |
Entity Address Address Line1
EntityAddressAddressLine1
|
222 East Erie Street, Suite 400 | |
CY2024 | dei |
Entity Address City Or Town
EntityAddressCityOrTown
|
Milwaukee | |
CY2024 | dei |
Entity Address State Or Province
EntityAddressStateOrProvince
|
WI | |
CY2024 | dei |
Entity Address Postal Zip Code
EntityAddressPostalZipCode
|
53202 | |
CY2024 | dei |
City Area Code
CityAreaCode
|
262 | |
CY2024 | dei |
Local Phone Number
LocalPhoneNumber
|
638-4000 | |
CY2024 | dei |
Security12b Title
Security12bTitle
|
Common Stock (No Par Value) | |
CY2024 | dei |
Trading Symbol
TradingSymbol
|
TWIN | |
CY2024 | dei |
Security Exchange Name
SecurityExchangeName
|
NASDAQ | |
CY2024 | dei |
Entity Well Known Seasoned Issuer
EntityWellKnownSeasonedIssuer
|
No | |
CY2024 | dei |
Entity Voluntary Filers
EntityVoluntaryFilers
|
No | |
CY2024 | dei |
Entity Current Reporting Status
EntityCurrentReportingStatus
|
Yes | |
CY2024 | dei |
Entity Interactive Data Current
EntityInteractiveDataCurrent
|
Yes | |
CY2024 | dei |
Entity Filer Category
EntityFilerCategory
|
Accelerated Filer | |
CY2024 | dei |
Entity Small Business
EntitySmallBusiness
|
true | |
CY2024 | dei |
Entity Emerging Growth Company
EntityEmergingGrowthCompany
|
false | |
CY2024 | dei |
Icfr Auditor Attestation Flag
IcfrAuditorAttestationFlag
|
true | |
CY2024 | dei |
Document Fin Stmt Error Correction Flag
DocumentFinStmtErrorCorrectionFlag
|
false | |
CY2024 | dei |
Entity Shell Company
EntityShellCompany
|
false | |
CY2023Q4 | dei |
Entity Public Float
EntityPublicFloat
|
179313320 | usd |
CY2024Q3 | dei |
Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
|
14106669 | |
CY2024 | dei |
Auditor Firm
AuditorFirmId
|
49 | |
CY2024 | dei |
Auditor Name
AuditorName
|
RSM US LLP | |
CY2024 | dei |
Auditor Location
AuditorLocation
|
Milwaukee, Wisconsin | |
CY2024Q2 | us-gaap |
Cash
Cash
|
20070000 | usd |
CY2023Q2 | us-gaap |
Cash
Cash
|
13263000 | usd |
CY2024Q2 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
52207000 | usd |
CY2023Q2 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
54760000 | usd |
CY2024Q2 | us-gaap |
Inventory Net
InventoryNet
|
130484000 | usd |
CY2023Q2 | us-gaap |
Inventory Net
InventoryNet
|
131930000 | usd |
CY2024Q2 | us-gaap |
Assets Held For Sale Not Part Of Disposal Group Current
AssetsHeldForSaleNotPartOfDisposalGroupCurrent
|
0 | usd |
CY2023Q2 | us-gaap |
Assets Held For Sale Not Part Of Disposal Group Current
AssetsHeldForSaleNotPartOfDisposalGroupCurrent
|
2968000 | usd |
CY2024Q2 | us-gaap |
Prepaid Expense Current
PrepaidExpenseCurrent
|
8656000 | usd |
CY2023Q2 | us-gaap |
Prepaid Expense Current
PrepaidExpenseCurrent
|
8459000 | usd |
CY2024Q2 | us-gaap |
Other Assets Current
OtherAssetsCurrent
|
8214000 | usd |
CY2023Q2 | us-gaap |
Other Assets Current
OtherAssetsCurrent
|
8326000 | usd |
CY2024Q2 | us-gaap |
Assets Current
AssetsCurrent
|
219631000 | usd |
CY2023Q2 | us-gaap |
Assets Current
AssetsCurrent
|
219706000 | usd |
CY2024Q2 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
58074000 | usd |
CY2023Q2 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
38650000 | usd |
CY2024Q2 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
16622000 | usd |
CY2023Q2 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
13133000 | usd |
CY2024Q2 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
12686000 | usd |
CY2023Q2 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
12637000 | usd |
CY2024Q2 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
2339000 | usd |
CY2023Q2 | us-gaap |
Deferred Income Tax Assets Net
DeferredIncomeTaxAssetsNet
|
2244000 | usd |
CY2024Q2 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
2706000 | usd |
CY2023Q2 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
2811000 | usd |
CY2024Q2 | us-gaap |
Assets
Assets
|
312058000 | usd |
CY2023Q2 | us-gaap |
Assets
Assets
|
289181000 | usd |
CY2024Q2 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
2000000 | usd |
CY2023Q2 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
2010000 | usd |
CY2024Q2 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
32586000 | usd |
CY2023Q2 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
36499000 | usd |
CY2024Q2 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
64930000 | usd |
CY2023Q2 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
61586000 | usd |
CY2024Q2 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
99516000 | usd |
CY2023Q2 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
100095000 | usd |
CY2024Q2 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
23811000 | usd |
CY2023Q2 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
16617000 | usd |
CY2024Q2 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
14376000 | usd |
CY2023Q2 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
10811000 | usd |
CY2024Q2 | us-gaap |
Postemployment Benefits Liability Noncurrent
PostemploymentBenefitsLiabilityNoncurrent
|
7854000 | usd |
CY2023Q2 | us-gaap |
Postemployment Benefits Liability Noncurrent
PostemploymentBenefitsLiabilityNoncurrent
|
7608000 | usd |
CY2024Q2 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
5340000 | usd |
CY2023Q2 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
3280000 | usd |
CY2024Q2 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
6107000 | usd |
CY2023Q2 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
5253000 | usd |
CY2024Q2 | us-gaap |
Liabilities
Liabilities
|
157004000 | usd |
CY2023Q2 | us-gaap |
Liabilities
Liabilities
|
143664000 | usd |
CY2024Q2 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | usd |
CY2023Q2 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | usd |
CY2024Q2 | us-gaap |
Common Stock Value
CommonStockValue
|
41798000 | usd |
CY2023Q2 | us-gaap |
Common Stock Value
CommonStockValue
|
42855000 | usd |
CY2024Q2 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
129592000 | usd |
CY2023Q2 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
120299000 | usd |
CY2024Q2 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-6905000 | usd |
CY2023Q2 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-5570000 | usd |
CY2024Q2 | us-gaap |
Stockholders Equity Before Treasury Stock
StockholdersEquityBeforeTreasuryStock
|
164485000 | usd |
CY2023Q2 | us-gaap |
Stockholders Equity Before Treasury Stock
StockholdersEquityBeforeTreasuryStock
|
157584000 | usd |
CY2024Q2 | us-gaap |
Treasury Stock Common Value
TreasuryStockCommonValue
|
9783000 | usd |
CY2023Q2 | us-gaap |
Treasury Stock Common Value
TreasuryStockCommonValue
|
12491000 | usd |
CY2024Q2 | us-gaap |
Stockholders Equity
StockholdersEquity
|
154702000 | usd |
CY2023Q2 | us-gaap |
Stockholders Equity
StockholdersEquity
|
145093000 | usd |
CY2024Q2 | us-gaap |
Minority Interest
MinorityInterest
|
352000 | usd |
CY2023Q2 | us-gaap |
Minority Interest
MinorityInterest
|
424000 | usd |
CY2024Q2 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
155054000 | usd |
CY2023Q2 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
145517000 | usd |
CY2024Q2 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
312058000 | usd |
CY2023Q2 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
289181000 | usd |
CY2024 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
295127000 | usd |
CY2023 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
276960000 | usd |
CY2024 | us-gaap |
Gross Profit
GrossProfit
|
83319000 | usd |
CY2023 | us-gaap |
Gross Profit
GrossProfit
|
74332000 | usd |
CY2024 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
71622000 | usd |
CY2023 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
62243000 | usd |
CY2024 | us-gaap |
Restructuring Charges
RestructuringCharges
|
218000 | usd |
CY2023 | us-gaap |
Restructuring Charges
RestructuringCharges
|
177000 | usd |
CY2024 | us-gaap |
Other Operating Income Expense Net
OtherOperatingIncomeExpenseNet
|
-0 | usd |
CY2023 | us-gaap |
Other Operating Income Expense Net
OtherOperatingIncomeExpenseNet
|
4148000 | usd |
CY2024 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
11479000 | usd |
CY2023 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
16060000 | usd |
CY2024 | us-gaap |
Interest Expense Nonoperating
InterestExpenseNonoperating
|
1443000 | usd |
CY2023 | us-gaap |
Interest Expense Nonoperating
InterestExpenseNonoperating
|
2253000 | usd |
CY2024 | us-gaap |
Business Combination Bargain Purchase Gain Recognized Amount
BusinessCombinationBargainPurchaseGainRecognizedAmount
|
3724000 | usd |
CY2023 | us-gaap |
Business Combination Bargain Purchase Gain Recognized Amount
BusinessCombinationBargainPurchaseGainRecognizedAmount
|
0 | usd |
CY2024 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
1607000 | usd |
CY2023 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
658000 | usd |
CY2024 | us-gaap |
Interest Income Expense Nonoperating Net
InterestIncomeExpenseNonoperatingNet
|
3888000 | usd |
CY2023 | us-gaap |
Interest Income Expense Nonoperating Net
InterestIncomeExpenseNonoperatingNet
|
-1595000 | usd |
CY2024 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
15367000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
14465000 | usd |
CY2024 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
4121000 | usd |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
3788000 | usd |
CY2024 | us-gaap |
Profit Loss
ProfitLoss
|
11246000 | usd |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
10677000 | usd |
CY2024 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
258000 | usd |
CY2023 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
297000 | usd |
CY2024 | us-gaap |
Net Income Loss
NetIncomeLoss
|
10988000 | usd |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
10380000 | usd |
CY2024 | us-gaap |
Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
|
0.12 | |
CY2023 | us-gaap |
Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
|
0 | |
CY2024 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.8 | |
CY2023 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.77 | |
CY2024 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.79 | |
CY2023 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.75 | |
CY2024 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
13683000 | |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
13468000 | |
CY2024 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
13877000 | |
CY2023 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
13811000 | |
CY2024 | us-gaap |
Profit Loss
ProfitLoss
|
11246000 | usd |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
10677000 | usd |
CY2024 | us-gaap |
Other Comprehensive Income Loss Reclassification Adjustment From Aoci Pension And Other Postretirement Benefit Plans Net Of Tax
OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax
|
-2114000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Loss Reclassification Adjustment From Aoci Pension And Other Postretirement Benefit Plans Net Of Tax
OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax
|
666000 | usd |
CY2024 | us-gaap |
Other Comprehensive Income Loss Foreign Currency Transaction And Translation Adjustment Net Of Tax
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
657000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Loss Foreign Currency Transaction And Translation Adjustment Net Of Tax
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
635000 | usd |
CY2024 | us-gaap |
Other Comprehensive Income Loss Cash Flow Hedge Gain Loss After Reclassification And Tax
OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
|
46000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Loss Cash Flow Hedge Gain Loss After Reclassification And Tax
OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
|
54000 | usd |
CY2024 | us-gaap |
Comprehensive Income Net Of Tax Including Portion Attributable To Noncontrolling Interest
ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
|
9835000 | usd |
CY2023 | us-gaap |
Comprehensive Income Net Of Tax Including Portion Attributable To Noncontrolling Interest
ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
|
12032000 | usd |
CY2024 | us-gaap |
Comprehensive Income Net Of Tax Attributable To Noncontrolling Interest
ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
|
183000 | usd |
CY2023 | us-gaap |
Comprehensive Income Net Of Tax Attributable To Noncontrolling Interest
ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest
|
248000 | usd |
CY2024 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
9652000 | usd |
CY2023 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
11784000 | usd |
CY2024 | us-gaap |
Profit Loss
ProfitLoss
|
11246000 | usd |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
10677000 | usd |
CY2024 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
9981000 | usd |
CY2023 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
9359000 | usd |
CY2024 | us-gaap |
Gain Loss On Disposition Of Assets1
GainLossOnDispositionOfAssets1
|
91000 | usd |
CY2023 | us-gaap |
Gain Loss On Disposition Of Assets1
GainLossOnDispositionOfAssets1
|
4264000 | usd |
CY2024 | us-gaap |
Restructuring Costs
RestructuringCosts
|
-82000 | usd |
CY2023 | us-gaap |
Restructuring Costs
RestructuringCosts
|
137000 | usd |
CY2024 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-560000 | usd |
CY2023 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-634000 | usd |
CY2024 | us-gaap |
Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
|
3449000 | usd |
CY2023 | us-gaap |
Employee Benefits And Share Based Compensation
EmployeeBenefitsAndShareBasedCompensation
|
2996000 | usd |
CY2024 | us-gaap |
Other Operating Activities Cash Flow Statement
OtherOperatingActivitiesCashFlowStatement
|
387000 | usd |
CY2023 | us-gaap |
Other Operating Activities Cash Flow Statement
OtherOperatingActivitiesCashFlowStatement
|
201000 | usd |
CY2024 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
-9540000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
8393000 | usd |
CY2024 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
-6015000 | usd |
CY2023 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
2750000 | usd |
CY2024 | us-gaap |
Increase Decrease In Other Current Assets
IncreaseDecreaseInOtherCurrentAssets
|
-2041000 | usd |
CY2023 | us-gaap |
Increase Decrease In Other Current Assets
IncreaseDecreaseInOtherCurrentAssets
|
-476000 | usd |
CY2024 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
-5166000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
7136000 | usd |
CY2024 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
-755000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
9785000 | usd |
CY2024 | us-gaap |
Increase Decrease In Pension And Postretirement Obligations
IncreaseDecreaseInPensionAndPostretirementObligations
|
-1664000 | usd |
CY2023 | us-gaap |
Increase Decrease In Pension And Postretirement Obligations
IncreaseDecreaseInPensionAndPostretirementObligations
|
-1828000 | usd |
CY2024 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
33716000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
22898000 | usd |
CY2024 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
8707000 | usd |
CY2023 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
7918000 | usd |
CY2024 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
0 | usd |
CY2023 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
7177000 | usd |
CY2024 | us-gaap |
Payments For Proceeds From Other Investing Activities
PaymentsForProceedsFromOtherInvestingActivities
|
184000 | usd |
CY2023 | us-gaap |
Payments For Proceeds From Other Investing Activities
PaymentsForProceedsFromOtherInvestingActivities
|
-333000 | usd |
CY2024 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-32069000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-408000 | usd |
CY2024 | us-gaap |
Proceeds From Long Term Lines Of Credit
ProceedsFromLongTermLinesOfCredit
|
90534000 | usd |
CY2023 | us-gaap |
Proceeds From Long Term Lines Of Credit
ProceedsFromLongTermLinesOfCredit
|
81620000 | usd |
CY2024 | us-gaap |
Repayments Of Lines Of Credit
RepaymentsOfLinesOfCredit
|
81109000 | usd |
CY2023 | us-gaap |
Repayments Of Lines Of Credit
RepaymentsOfLinesOfCredit
|
97774000 | usd |
CY2024 | us-gaap |
Repayments Of Other Long Term Debt
RepaymentsOfOtherLongTermDebt
|
2010000 | usd |
CY2023 | us-gaap |
Repayments Of Other Long Term Debt
RepaymentsOfOtherLongTermDebt
|
2037000 | usd |
CY2024 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
921000 | usd |
CY2023 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
621000 | usd |
CY2024 | us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
1695000 | usd |
CY2023 | us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
-0 | usd |
CY2024 | us-gaap |
Payments Of Dividends Minority Interest
PaymentsOfDividendsMinorityInterest
|
254000 | usd |
CY2023 | us-gaap |
Payments Of Dividends Minority Interest
PaymentsOfDividendsMinorityInterest
|
236000 | usd |
CY2024 | us-gaap |
Payments Related To Tax Withholding For Share Based Compensation
PaymentsRelatedToTaxWithholdingForShareBasedCompensation
|
1791000 | usd |
CY2023 | us-gaap |
Payments Related To Tax Withholding For Share Based Compensation
PaymentsRelatedToTaxWithholdingForShareBasedCompensation
|
463000 | usd |
CY2024 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
2754000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-19511000 | usd |
CY2024 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
2406000 | usd |
CY2023 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
-2237000 | usd |
CY2024 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
6807000 | usd |
CY2023 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
742000 | usd |
CY2023Q2 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
13263000 | usd |
CY2022Q2 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
12521000 | usd |
CY2024Q2 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
20070000 | usd |
CY2023Q2 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
13263000 | usd |
CY2024 | us-gaap |
Interest Paid Net
InterestPaidNet
|
1378000 | usd |
CY2023 | us-gaap |
Interest Paid Net
InterestPaidNet
|
2162000 | usd |
CY2024 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
1724000 | usd |
CY2023 | us-gaap |
Income Taxes Paid Net
IncomeTaxesPaidNet
|
3592000 | usd |
CY2022Q2 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
131188000 | usd |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
10677000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Loss Foreign Currency Transaction And Translation Adjustment Net Of Tax
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
635000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Adjustment Net Of Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
|
-666000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Loss Cash Flow Hedge Gain Loss After Reclassification And Tax
OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
|
54000 | usd |
CY2023 | us-gaap |
Minority Interest Decrease From Distributions To Noncontrolling Interest Holders
MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders
|
236000 | usd |
CY2023 | twin |
Compensation Expense And Windfall Tax Benefits
CompensationExpenseAndWindfallTaxBenefits
|
2996000 | usd |
CY2023 | twin |
Shares Acquired Issued Net
SharesAcquiredIssuedNet
|
-463000 | usd |
CY2023Q2 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
145517000 | usd |
CY2024 | us-gaap |
Profit Loss
ProfitLoss
|
11246000 | usd |
CY2024 | us-gaap |
Dividends
Dividends
|
1949000 | usd |
CY2024 | us-gaap |
Other Comprehensive Income Loss Foreign Currency Transaction And Translation Adjustment Net Of Tax
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
657000 | usd |
CY2024 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Adjustment Net Of Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
|
2114000 | usd |
CY2024 | us-gaap |
Other Comprehensive Income Loss Cash Flow Hedge Gain Loss After Reclassification And Tax
OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
|
46000 | usd |
CY2024 | twin |
Compensation Expense And Windfall Tax Benefits
CompensationExpenseAndWindfallTaxBenefits
|
3449000 | usd |
CY2024 | twin |
Shares Acquired Issued Net
SharesAcquiredIssuedNet
|
-1798000 | usd |
CY2024Q2 | us-gaap |
Stockholders Equity Including Portion Attributable To Noncontrolling Interest
StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
|
155054000 | usd |
CY2024 | us-gaap |
Foreign Currency Transaction Gain Loss Before Tax
ForeignCurrencyTransactionGainLossBeforeTax
|
-377000 | usd |
CY2023 | us-gaap |
Foreign Currency Transaction Gain Loss Before Tax
ForeignCurrencyTransactionGainLossBeforeTax
|
-373000 | usd |
CY2024Q2 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
1383000 | usd |
CY2023Q2 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
1221000 | usd |
CY2023 | us-gaap |
Impairment Of Long Lived Assets To Be Disposed Of
ImpairmentOfLongLivedAssetsToBeDisposedOf
|
4100000 | usd |
CY2024Q2 | twin |
Permanently Idled Number Of Facilities
PermanentlyIdledNumberOfFacilities
|
1 | pure |
CY2024 | us-gaap |
Number Of Operating Segments
NumberOfOperatingSegments
|
2 | pure |
CY2022Q2 | us-gaap |
Contract With Customer Asset Net Current
ContractWithCustomerAssetNetCurrent
|
45452000 | usd |
CY2022Q2 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
17021000 | usd |
CY2023Q2 | us-gaap |
Contract With Customer Asset Net Current
ContractWithCustomerAssetNetCurrent
|
54760000 | usd |
CY2023Q2 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
22937000 | usd |
CY2024Q2 | us-gaap |
Contract With Customer Asset Net Current
ContractWithCustomerAssetNetCurrent
|
52207000 | usd |
CY2024Q2 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
26540000 | usd |
CY2024Q2 | us-gaap |
Inventory Finished Goods Net Of Reserves
InventoryFinishedGoodsNetOfReserves
|
60166000 | usd |
CY2023Q2 | us-gaap |
Inventory Finished Goods Net Of Reserves
InventoryFinishedGoodsNetOfReserves
|
66956000 | usd |
CY2024Q2 | us-gaap |
Inventory Work In Process Net Of Reserves
InventoryWorkInProcessNetOfReserves
|
23096000 | usd |
CY2023Q2 | us-gaap |
Inventory Work In Process Net Of Reserves
InventoryWorkInProcessNetOfReserves
|
23374000 | usd |
CY2024Q2 | us-gaap |
Inventory Raw Materials Net Of Reserves
InventoryRawMaterialsNetOfReserves
|
47222000 | usd |
CY2023Q2 | us-gaap |
Inventory Raw Materials Net Of Reserves
InventoryRawMaterialsNetOfReserves
|
41600000 | usd |
CY2024Q2 | us-gaap |
Inventory Net
InventoryNet
|
130484000 | usd |
CY2023Q2 | us-gaap |
Inventory Net
InventoryNet
|
131930000 | usd |
CY2024Q2 | us-gaap |
Percentage Of Lifo Inventory
PercentageOfLIFOInventory
|
0.31 | pure |
CY2023Q2 | us-gaap |
Percentage Of Lifo Inventory
PercentageOfLIFOInventory
|
0.33 | pure |
CY2024Q2 | us-gaap |
Excess Of Replacement Or Current Costs Over Stated Lifo Value
ExcessOfReplacementOrCurrentCostsOverStatedLIFOValue
|
30680000 | usd |
CY2023Q2 | us-gaap |
Excess Of Replacement Or Current Costs Over Stated Lifo Value
ExcessOfReplacementOrCurrentCostsOverStatedLIFOValue
|
30646000 | usd |
CY2024 | us-gaap |
Effect Of Lifo Inventory Liquidation On Income
EffectOfLIFOInventoryLiquidationOnIncome
|
1553000 | usd |
CY2023 | us-gaap |
Effect Of Lifo Inventory Liquidation On Income
EffectOfLIFOInventoryLiquidationOnIncome
|
3685000 | usd |
CY2024Q2 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
12693000 | usd |
CY2023Q2 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
12858000 | usd |
CY2024Q2 | us-gaap |
Land
Land
|
3062000 | usd |
CY2023Q2 | us-gaap |
Land
Land
|
2148000 | usd |
CY2024Q2 | us-gaap |
Buildings And Improvements Gross
BuildingsAndImprovementsGross
|
44833000 | usd |
CY2023Q2 | us-gaap |
Buildings And Improvements Gross
BuildingsAndImprovementsGross
|
26349000 | usd |
CY2024Q2 | us-gaap |
Machinery And Equipment Gross
MachineryAndEquipmentGross
|
189913000 | usd |
CY2023Q2 | us-gaap |
Machinery And Equipment Gross
MachineryAndEquipmentGross
|
148088000 | usd |
CY2024Q2 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
237808000 | usd |
CY2023Q2 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
176585000 | usd |
CY2024Q2 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
179734000 | usd |
CY2023Q2 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
137935000 | usd |
CY2024Q2 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
58074000 | usd |
CY2023Q2 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
38650000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
5210000 | usd |
CY2023Q2 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
4427000 | usd |
CY2024 | us-gaap |
Depreciation
Depreciation
|
6707000 | usd |
CY2023 | us-gaap |
Depreciation
Depreciation
|
6400000 | usd |
CY2024Q2 | twin |
Permanently Idled Number Of Facilities
PermanentlyIdledNumberOfFacilities
|
1 | pure |
CY2024 | us-gaap |
Tangible Asset Impairment Charges
TangibleAssetImpairmentCharges
|
0 | usd |
CY2022Q2 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
39845000 | usd |
CY2022Q2 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
26835000 | usd |
CY2022Q2 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
13010000 | usd |
CY2023 | twin |
Finitelived Intangible Assets Other Additions Gross
FinitelivedIntangibleAssetsOtherAdditionsGross
|
2204000 | usd |
CY2023 | twin |
Finitelived Intangible Assets Acquired Other
FinitelivedIntangibleAssetsAcquiredOther
|
2204000 | usd |
CY2023 | twin |
Finitelived Intangible Assets Reductions Gross
FinitelivedIntangibleAssetsReductionsGross
|
10506000 | usd |
CY2023 | twin |
Finitelived Intangible Assets Accumulated Amortization Decrease
FinitelivedIntangibleAssetsAccumulatedAmortizationDecrease
|
10506000 | usd |
CY2023 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
2959000 | usd |
CY2023 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
2959000 | usd |
CY2023 | twin |
Finite Lived Intangible Assets Foreign Currency Translation Gain Loss Gross
FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLossGross
|
-382000 | usd |
CY2023 | us-gaap |
Finite Lived Intangible Assets Foreign Currency Translation Gain Loss
FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss
|
382000 | usd |
CY2023Q2 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
31925000 | usd |
CY2023Q2 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
19288000 | usd |
CY2023Q2 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
12637000 | usd |
CY2024 | twin |
Finitelived Intangible Assets Other Additions Gross
FinitelivedIntangibleAssetsOtherAdditionsGross
|
3488000 | usd |
CY2024 | twin |
Finitelived Intangible Assets Acquired Other
FinitelivedIntangibleAssetsAcquiredOther
|
3488000 | usd |
CY2024 | twin |
Finitelived Intangible Assets Reductions Gross
FinitelivedIntangibleAssetsReductionsGross
|
714000 | usd |
CY2024 | twin |
Finitelived Intangible Assets Accumulated Amortization Decrease
FinitelivedIntangibleAssetsAccumulatedAmortizationDecrease
|
714000 | usd |
CY2024 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
3273000 | usd |
CY2024 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
3273000 | usd |
CY2024 | twin |
Finite Lived Intangible Assets Foreign Currency Translation Gain Loss Gross
FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLossGross
|
-166000 | usd |
CY2024 | us-gaap |
Finite Lived Intangible Assets Foreign Currency Translation Gain Loss
FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss
|
-166000 | usd |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
34533000 | usd |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
21847000 | usd |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
12686000 | usd |
CY2024 | us-gaap |
Acquired Finite Lived Intangible Assets Weighted Average Useful Life
AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
|
P6Y | |
CY2024 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
3273000 | usd |
CY2023 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
2959000 | usd |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Next Twelve Months
FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
|
3476000 | usd |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Two
FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
|
2530000 | usd |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Three
FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
|
2000000 | usd |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Four
FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
|
1642000 | usd |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Five
FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
|
1350000 | usd |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Amortization Expense After Year Five
FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
|
1688000 | usd |
CY2024Q2 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
26540000 | usd |
CY2023Q2 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
22937000 | usd |
CY2024Q2 | us-gaap |
Accrued Salaries Current
AccruedSalariesCurrent
|
14186000 | usd |
CY2023Q2 | us-gaap |
Accrued Salaries Current
AccruedSalariesCurrent
|
10102000 | usd |
CY2024Q2 | us-gaap |
Product Warranty Accrual Classified Current
ProductWarrantyAccrualClassifiedCurrent
|
3341000 | usd |
CY2023Q2 | us-gaap |
Product Warranty Accrual Classified Current
ProductWarrantyAccrualClassifiedCurrent
|
2970000 | usd |
CY2024Q2 | twin |
Accrued Distributor Rebates
AccruedDistributorRebates
|
3931000 | usd |
CY2023Q2 | twin |
Accrued Distributor Rebates
AccruedDistributorRebates
|
3620000 | usd |
CY2024Q2 | us-gaap |
Pension And Other Postretirement And Postemployment Benefit Plans Liabilities Current
PensionAndOtherPostretirementAndPostemploymentBenefitPlansLiabilitiesCurrent
|
1831000 | usd |
CY2023Q2 | us-gaap |
Pension And Other Postretirement And Postemployment Benefit Plans Liabilities Current
PensionAndOtherPostretirementAndPostemploymentBenefitPlansLiabilitiesCurrent
|
1693000 | usd |
CY2024Q2 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
15101000 | usd |
CY2023Q2 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
20264000 | usd |
CY2024Q2 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
64930000 | usd |
CY2023Q2 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
61586000 | usd |
CY2023Q2 | us-gaap |
Product Warranty Accrual
ProductWarrantyAccrual
|
3476000 | usd |
CY2022Q2 | us-gaap |
Product Warranty Accrual
ProductWarrantyAccrual
|
3329000 | usd |
CY2024 | twin |
Product Warranty Expense Benefit
ProductWarrantyExpenseBenefit
|
5850000 | usd |
CY2023 | twin |
Product Warranty Expense Benefit
ProductWarrantyExpenseBenefit
|
2451000 | usd |
CY2024 | us-gaap |
Product Warranty Accrual Payments
ProductWarrantyAccrualPayments
|
5102000 | usd |
CY2023 | us-gaap |
Product Warranty Accrual Payments
ProductWarrantyAccrualPayments
|
2268000 | usd |
CY2024 | us-gaap |
Standard And Extended Product Warranty Accrual Foreign Currency Translation Gain Loss
StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss
|
4000 | usd |
CY2023 | us-gaap |
Standard And Extended Product Warranty Accrual Foreign Currency Translation Gain Loss
StandardAndExtendedProductWarrantyAccrualForeignCurrencyTranslationGainLoss
|
36000 | usd |
CY2024Q2 | us-gaap |
Product Warranty Accrual
ProductWarrantyAccrual
|
4220000 | usd |
CY2023Q2 | us-gaap |
Product Warranty Accrual
ProductWarrantyAccrual
|
3476000 | usd |
CY2024Q2 | us-gaap |
Product Warranty Accrual Classified Current
ProductWarrantyAccrualClassifiedCurrent
|
3341000 | usd |
CY2023Q2 | us-gaap |
Product Warranty Accrual Classified Current
ProductWarrantyAccrualClassifiedCurrent
|
2970000 | usd |
CY2024Q2 | us-gaap |
Product Warranty Accrual Noncurrent
ProductWarrantyAccrualNoncurrent
|
879000 | usd |
CY2023Q2 | us-gaap |
Product Warranty Accrual Noncurrent
ProductWarrantyAccrualNoncurrent
|
506000 | usd |
CY2024Q2 | us-gaap |
Long Term Debt
LongTermDebt
|
25811000 | usd |
CY2023Q2 | us-gaap |
Long Term Debt
LongTermDebt
|
18627000 | usd |
CY2024Q2 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
2000000 | usd |
CY2023Q2 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
2010000 | usd |
CY2024Q2 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
23811000 | usd |
CY2023Q2 | us-gaap |
Long Term Debt Noncurrent
LongTermDebtNoncurrent
|
16617000 | usd |
CY2024Q2 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Next Twelve Months
LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
|
2000000 | usd |
CY2024Q2 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Two
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
|
2000000 | usd |
CY2024Q2 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Three
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
|
21788000 | usd |
CY2024Q2 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Four
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
|
0 | usd |
CY2024Q2 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Five
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
|
0 | usd |
CY2024Q2 | us-gaap |
Long Term Debt Maturities Repayments Of Principal After Year Five
LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
|
23000 | usd |
CY2024Q2 | us-gaap |
Long Term Debt
LongTermDebt
|
25811000 | usd |
CY2024Q2 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
16622000 | usd |
CY2023Q2 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
13133000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
5210000 | usd |
CY2023Q2 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
4427000 | usd |
CY2024Q2 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
2352000 | usd |
CY2023Q2 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
2343000 | usd |
CY2024Q2 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
14376000 | usd |
CY2023Q2 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
10811000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
|
882000 | usd |
CY2023Q2 | us-gaap |
Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
|
643000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
|
4795000 | usd |
CY2023Q2 | us-gaap |
Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
|
4314000 | usd |
CY2024 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
3447000 | usd |
CY2023 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
3282000 | usd |
CY2024 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
308000 | usd |
CY2023 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
267000 | usd |
CY2024 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
921000 | usd |
CY2023 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
621000 | usd |
CY2024 | us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
6069000 | usd |
CY2023 | us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
2917000 | usd |
CY2024 | us-gaap |
Right Of Use Asset Obtained In Exchange For Finance Lease Liability
RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
|
1383000 | usd |
CY2023 | us-gaap |
Right Of Use Asset Obtained In Exchange For Finance Lease Liability
RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
|
522000 | usd |
CY2024Q2 | us-gaap |
Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
|
P8Y4M24D | |
CY2023Q2 | us-gaap |
Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
|
P8Y9M18D | |
CY2023Q2 | us-gaap |
Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
|
P11Y3M18D | |
CY2024Q2 | us-gaap |
Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
|
0.083 | pure |
CY2023Q2 | us-gaap |
Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
|
0.072 | pure |
CY2024Q2 | us-gaap |
Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
|
0.062 | pure |
CY2023Q2 | us-gaap |
Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
|
0.052 | pure |
CY2024Q2 | us-gaap |
Lessee Operating Lease Liability Payments Due Next Twelve Months
LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
|
3789000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Liability Payments Due Next Twelve Months
FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
|
1039000 | usd |
CY2024Q2 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Two
LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
|
3197000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Liability Payments Due Year Two
FinanceLeaseLiabilityPaymentsDueYearTwo
|
988000 | usd |
CY2024Q2 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Three
LesseeOperatingLeaseLiabilityPaymentsDueYearThree
|
2816000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Liability Payments Due Year Three
FinanceLeaseLiabilityPaymentsDueYearThree
|
918000 | usd |
CY2024Q2 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Four
LesseeOperatingLeaseLiabilityPaymentsDueYearFour
|
2270000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Liability Payments Due Year Four
FinanceLeaseLiabilityPaymentsDueYearFour
|
820000 | usd |
CY2024Q2 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Five
LesseeOperatingLeaseLiabilityPaymentsDueYearFive
|
2201000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Liability Payments Due Year Five
FinanceLeaseLiabilityPaymentsDueYearFive
|
619000 | usd |
CY2024Q2 | us-gaap |
Lessee Operating Lease Liability Payments Due After Year Five
LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
|
9724000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Liability Payments Due After Year Five
FinanceLeaseLiabilityPaymentsDueAfterYearFive
|
2791000 | usd |
CY2024Q2 | us-gaap |
Lessee Operating Lease Liability Payments Due
LesseeOperatingLeaseLiabilityPaymentsDue
|
23997000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Liability Payments Due
FinanceLeaseLiabilityPaymentsDue
|
7175000 | usd |
CY2024Q2 | us-gaap |
Lessee Operating Lease Liability Undiscounted Excess Amount
LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
|
7269000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Liability Undiscounted Excess Amount
FinanceLeaseLiabilityUndiscountedExcessAmount
|
1497000 | usd |
CY2024Q2 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
16728000 | usd |
CY2024Q2 | us-gaap |
Finance Lease Liability
FinanceLeaseLiability
|
5678000 | usd |
CY2024Q2 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
13995024 | |
CY2023Q2 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
13818068 | |
CY2024Q2 | us-gaap |
Treasury Stock Common Shares
TreasuryStockCommonShares
|
637778 | |
CY2023Q2 | us-gaap |
Treasury Stock Common Shares
TreasuryStockCommonShares
|
814734 | |
CY2024 | us-gaap |
Stock Issued During Period Shares Share Based Compensation
StockIssuedDuringPeriodSharesShareBasedCompensation
|
176956 | |
CY2023 | us-gaap |
Stock Issued During Period Shares Share Based Compensation
StockIssuedDuringPeriodSharesShareBasedCompensation
|
145725 | |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Forfeited In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
|
2413 | |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Forfeited In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
|
0 | |
CY2024Q2 | us-gaap |
Stock Repurchase Program Remaining Number Of Shares Authorized To Be Repurchased
StockRepurchaseProgramRemainingNumberOfSharesAuthorizedToBeRepurchased
|
315000 | |
CY2024 | us-gaap |
Common Stock Dividends Per Share Cash Paid
CommonStockDividendsPerShareCashPaid
|
0.12 | |
CY2023 | us-gaap |
Common Stock Dividends Per Share Cash Paid
CommonStockDividendsPerShareCashPaid
|
0 | |
CY2024Q2 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
200000 | |
CY2024Q2 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2024Q2 | us-gaap |
Preferred Stock Capital Shares Reserved For Future Issuance
PreferredStockCapitalSharesReservedForFutureIssuance
|
150000 | |
CY2024Q2 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-849000 | usd |
CY2023Q2 | us-gaap |
Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
|
-1582000 | usd |
CY2024Q2 | us-gaap |
Accumulated Other Comprehensive Income Loss Defined Benefit Pension And Other Postretirement Plans Net Of Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
|
-8062000 | usd |
CY2023Q2 | us-gaap |
Accumulated Other Comprehensive Income Loss Defined Benefit Pension And Other Postretirement Plans Net Of Tax
AccumulatedOtherComprehensiveIncomeLossDefinedBenefitPensionAndOtherPostretirementPlansNetOfTax
|
-5948000 | usd |
CY2024Q2 | us-gaap |
Aoci Loss Cash Flow Hedge Cumulative Gain Loss After Tax
AociLossCashFlowHedgeCumulativeGainLossAfterTax
|
504000 | usd |
CY2023Q2 | us-gaap |
Aoci Loss Cash Flow Hedge Cumulative Gain Loss After Tax
AociLossCashFlowHedgeCumulativeGainLossAfterTax
|
688000 | usd |
CY2024Q2 | twin |
Aoci Net Investment Hedge Cumulative Gain Loss After Tax
AOCINetInvestmentHedgeCumulativeGainLossAfterTax
|
1502000 | usd |
CY2023Q2 | twin |
Aoci Net Investment Hedge Cumulative Gain Loss After Tax
AOCINetInvestmentHedgeCumulativeGainLossAfterTax
|
1272000 | usd |
CY2024Q2 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-6905000 | usd |
CY2023Q2 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-5570000 | usd |
CY2024 | twin |
Reconciliation For The Changes In Accumulated Other Comprehensive Income Loss Net Of Tax By Component Tabletextblock
ReconciliationForTheChangesInAccumulatedOtherComprehensiveIncomeLossNetOfTaxByComponentTabletextblock
|
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: "Times New Roman", Times, serif; text-indent: 0px;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt;"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Translation</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Benefit Plan</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Cash Flow</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Net Investment</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt;"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Adjustment</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Adjustment</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Hedges</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Hedges</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; width: 52%;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at June 30, 2022</p> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(2,266</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(6,614</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">356</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,550</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Other comprehensive loss before reclassifications</p> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">684</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">-</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">-</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">-</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Plan merger remeasurement adjustment</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"><em style="font: inherit;"> </em></td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(1,115</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">)</td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"><em style="font: inherit;"> </em></td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"><em style="font: inherit;"> </em></td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Amounts reclassified from accumulated other comprehensive loss</p> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; text-align: right; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,781</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">332</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(278</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net current period other comprehensive income (loss)</p> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">684</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">666</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">332</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(278</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at June 30, 2023</p> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">(1,582</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">(5,948</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">688</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,272</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: "Times New Roman", Times, serif; text-indent: 0px;"><tbody><tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt;"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Translation</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Benefit Plan</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Cash Flow</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Net Investment</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt;"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Adjustment</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Adjustment</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Hedges</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td colspan="2" style="text-align: center; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">Hedges</p> </td><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at June 30, 2023</p> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(1,582</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(5,948</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">688</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,272</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Other comprehensive loss before reclassifications</p> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">733</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">-</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">-</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">-</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Amounts reclassified from accumulated other comprehensive loss</p> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(2,114</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(184</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">230</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net current period other comprehensive income (loss)</p> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">733</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(2,114</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(184</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">230</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: "Times New Roman", Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: "Times New Roman", Times, serif; font-size: 10pt;"> <p style="font-family: "Times New Roman", Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at June 30, 2024</p> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">(849</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">(8,062</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">)</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">504</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); margin-left: 0pt;"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 9%; font-family: "Times New Roman", Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,502</td><td style="width: 1%; font-family: "Times New Roman", Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> | |
CY2024 | us-gaap |
Defined Benefit Plan Actuarial Gain Loss
DefinedBenefitPlanActuarialGainLoss
|
-2079000 | usd |
CY2023 | twin |
Other Comprehensive Income Loss Defined Benefit Plan Benefit Plan Mark To Market Adjustment
OtherComprehensiveIncomeLossDefinedBenefitPlanBenefitPlanMarkToMarketAdjustment
|
2430000 | usd |
CY2024 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
295127000 | usd |
CY2023 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
276960000 | usd |
CY2024 | twin |
Intra Segment Sales Revenue Net
IntraSegmentSalesRevenueNet
|
22635000 | usd |
CY2024 | twin |
Inter Segment Sales Revenue Net
InterSegmentSalesRevenueNet
|
82091000 | usd |
CY2023 | twin |
Intra Segment Sales Revenue Net
IntraSegmentSalesRevenueNet
|
22037000 | usd |
CY2023 | twin |
Inter Segment Sales Revenue Net
InterSegmentSalesRevenueNet
|
67057000 | usd |
CY2024 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
295127000 | usd |
CY2023 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
276960000 | usd |
CY2024 | us-gaap |
Net Income Loss
NetIncomeLoss
|
10988000 | usd |
CY2023 | us-gaap |
Net Income Loss
NetIncomeLoss
|
10380000 | usd |
CY2024 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
64000 | usd |
CY2024 | us-gaap |
Interest Expense
InterestExpense
|
1443000 | usd |
CY2024 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
4121000 | usd |
CY2024 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
9981000 | usd |
CY2024Q2 | us-gaap |
Assets
Assets
|
312058000 | usd |
CY2024 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
8707000 | usd |
CY2023 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
33000 | usd |
CY2023 | us-gaap |
Interest Expense
InterestExpense
|
2253000 | usd |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
3788000 | usd |
CY2023 | twin |
Depreciation Depletion And Amortization Including Amortization Of Inventory Fair Value Step Up
DepreciationDepletionAndAmortizationIncludingAmortizationOfInventoryFairValueStepUp
|
9359000 | usd |
CY2023Q2 | us-gaap |
Assets
Assets
|
289181000 | usd |
CY2023 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
7918000 | usd |
CY2024 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
295127000 | usd |
CY2023 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
276960000 | usd |
CY2024Q2 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
77402000 | usd |
CY2023Q2 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
54594000 | usd |
CY2024 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
295127000 | usd |
CY2023 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
276960000 | usd |
CY2024Q2 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Number Of Shares Authorized
ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
|
238698 | |
CY2023Q2 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Number Of Shares Authorized
ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
|
234166 | |
CY2024 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Grants In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
|
118544 | |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Grants In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
|
179959 | |
CY2024 | us-gaap |
Research And Development Expense
ResearchAndDevelopmentExpense
|
2629000 | usd |
CY2023 | us-gaap |
Research And Development Expense
ResearchAndDevelopmentExpense
|
2458000 | usd |
CY2024 | twin |
Engineering And Development Costs
EngineeringAndDevelopmentCosts
|
9843000 | usd |
CY2023 | twin |
Engineering And Development Costs
EngineeringAndDevelopmentCosts
|
8741000 | usd |
CY2024Q2 | twin |
Defined Benefit Plan Net Liability Expected Amount
DefinedBenefitPlanNetLiabilityExpectedAmount
|
1500000 | usd |
CY2024Q2 | twin |
Defined Benefit Plan Measured Amount
DefinedBenefitPlanMeasuredAmount
|
2600000 | usd |
CY2024Q2 | twin |
Defined Benefit Plan Cost Of Premium For Health Coverage Plan Percentage
DefinedBenefitPlanCostOfPremiumForHealthCoveragePlanPercentage
|
1 | pure |
CY2024Q2 | us-gaap |
Defined Benefit Plan Accumulated Benefit Obligation
DefinedBenefitPlanAccumulatedBenefitObligation
|
68110000 | usd |
CY2023Q2 | us-gaap |
Defined Benefit Plan Accumulated Benefit Obligation
DefinedBenefitPlanAccumulatedBenefitObligation
|
72242000 | usd |
CY2024Q2 | twin |
Defined Benefit Plan Projected And Accumulated Benefit Obligation
DefinedBenefitPlanProjectedAndAccumulatedBenefitObligation
|
64286000 | usd |
CY2023Q2 | twin |
Defined Benefit Plan Projected And Accumulated Benefit Obligation
DefinedBenefitPlanProjectedAndAccumulatedBenefitObligation
|
67808000 | usd |
CY2024Q2 | us-gaap |
Defined Benefit Plan Pension Plans With Accumulated Benefit Obligations In Excess Of Plan Assets Aggregate Fair Value Of Plan Assets
DefinedBenefitPlanPensionPlansWithAccumulatedBenefitObligationsInExcessOfPlanAssetsAggregateFairValueOfPlanAssets
|
58839000 | usd |
CY2023Q2 | us-gaap |
Defined Benefit Plan Pension Plans With Accumulated Benefit Obligations In Excess Of Plan Assets Aggregate Fair Value Of Plan Assets
DefinedBenefitPlanPensionPlansWithAccumulatedBenefitObligationsInExcessOfPlanAssetsAggregateFairValueOfPlanAssets
|
62876000 | usd |
CY2024Q2 | twin |
Defined Benefit Plan Weighted Average Healthcare Cost Trend Rate
DefinedBenefitPlanWeightedAverageHealthcareCostTrendRate
|
0.083 | pure |
CY2021Q2 | twin |
Defined Benefit Plan Weighted Average Healthcare Cost Trend Rate
DefinedBenefitPlanWeightedAverageHealthcareCostTrendRate
|
0.05 | pure |
CY2024Q2 | us-gaap |
Defined Benefit Plan Plan Assets Target Allocation Percentage
DefinedBenefitPlanPlanAssetsTargetAllocationPercentage
|
1 | pure |
CY2024Q2 | us-gaap |
Defined Benefit Plan Weighted Average Asset Allocations
DefinedBenefitPlanWeightedAverageAssetAllocations
|
1 | pure |
CY2023Q2 | us-gaap |
Defined Benefit Plan Weighted Average Asset Allocations
DefinedBenefitPlanWeightedAverageAssetAllocations
|
1 | pure |
CY2024 | us-gaap |
Defined Contribution Plan Cost Recognized
DefinedContributionPlanCostRecognized
|
2447000 | usd |
CY2023 | us-gaap |
Defined Contribution Plan Cost Recognized
DefinedContributionPlanCostRecognized
|
2260000 | usd |
CY2024 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
-6213000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
683000 | usd |
CY2024 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
21580000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
13782000 | usd |
CY2024 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
15367000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
14465000 | usd |
CY2024 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
7000 | usd |
CY2023 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
72000 | usd |
CY2024 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
66000 | usd |
CY2023 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
-5000 | usd |
CY2024 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
4608000 | usd |
CY2023 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
4355000 | usd |
CY2024 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
4681000 | usd |
CY2023 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
4422000 | usd |
CY2024 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
10000 | usd |
CY2023 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
0 | usd |
CY2024 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-2000 | usd |
CY2023 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-47000 | usd |
CY2024 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
-568000 | usd |
CY2023 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
-587000 | usd |
CY2024 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-560000 | usd |
CY2023 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-634000 | usd |
CY2024 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
4121000 | usd |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
3788000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Postretirement Benefits
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPostretirementBenefits
|
4683000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Postretirement Benefits
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPostretirementBenefits
|
4234000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Tax Credit Carryforwards Foreign
DeferredTaxAssetsTaxCreditCarryforwardsForeign
|
8347000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Tax Credit Carryforwards Foreign
DeferredTaxAssetsTaxCreditCarryforwardsForeign
|
7983000 | usd |
CY2024Q2 | twin |
Deferred Tax Assets Tax Credit Carryforwards Federal
DeferredTaxAssetsTaxCreditCarryforwardsFederal
|
1683000 | usd |
CY2023Q2 | twin |
Deferred Tax Assets Tax Credit Carryforwards Federal
DeferredTaxAssetsTaxCreditCarryforwardsFederal
|
1724000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards State And Local
DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal
|
2226000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards State And Local
DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal
|
2143000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards Domestic
DeferredTaxAssetsOperatingLossCarryforwardsDomestic
|
4042000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards Domestic
DeferredTaxAssetsOperatingLossCarryforwardsDomestic
|
4489000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Reserves
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves
|
931000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Reserves
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves
|
774000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
|
93000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
|
0 | usd |
CY2024Q2 | twin |
Deferred Tax Asset Research And Development Capitalization
DeferredTaxAssetResearchAndDevelopmentCapitalization
|
816000 | usd |
CY2023Q2 | twin |
Deferred Tax Asset Research And Development Capitalization
DeferredTaxAssetResearchAndDevelopmentCapitalization
|
588000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards Foreign
DeferredTaxAssetsOperatingLossCarryforwardsForeign
|
52000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards Foreign
DeferredTaxAssetsOperatingLossCarryforwardsForeign
|
0 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Accrued Liabilities
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
|
1081000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Accrued Liabilities
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
|
936000 | usd |
CY2024Q2 | twin |
Deferred Tax Assets Operating Lease Right Of Use Asset
DeferredTaxAssetsOperatingLeaseRightOfUseAsset
|
4038000 | usd |
CY2023Q2 | twin |
Deferred Tax Assets Operating Lease Right Of Use Asset
DeferredTaxAssetsOperatingLeaseRightOfUseAsset
|
3501000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Asset Interest Carryforward
DeferredTaxAssetInterestCarryforward
|
1384000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Asset Interest Carryforward
DeferredTaxAssetInterestCarryforward
|
1062000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Capital Loss Carryforwards
DeferredTaxAssetsCapitalLossCarryforwards
|
108000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Capital Loss Carryforwards
DeferredTaxAssetsCapitalLossCarryforwards
|
108000 | usd |
CY2024Q2 | twin |
Deferred Tax Assets Translation Adjustment
DeferredTaxAssetsTranslationAdjustment
|
565000 | usd |
CY2023Q2 | twin |
Deferred Tax Assets Translation Adjustment
DeferredTaxAssetsTranslationAdjustment
|
494000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Other
DeferredTaxAssetsOther
|
108000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Other
DeferredTaxAssetsOther
|
115000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
30157000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
28151000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
24035000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
22345000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
6122000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
5806000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Liabilities Deferred Expense Capitalized Inventory Costs
DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts
|
0 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Liabilities Deferred Expense Capitalized Inventory Costs
DeferredTaxLiabilitiesDeferredExpenseCapitalizedInventoryCosts
|
96000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
673000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
850000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
|
1010000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
|
1561000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Liabilities Leasing Arrangements
DeferredTaxLiabilitiesLeasingArrangements
|
4034000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Liabilities Leasing Arrangements
DeferredTaxLiabilitiesLeasingArrangements
|
3427000 | usd |
CY2024Q2 | twin |
Deferred Tax Liabilities Hedge
DeferredTaxLiabilitiesHedge
|
445000 | usd |
CY2023Q2 | twin |
Deferred Tax Liabilities Hedge
DeferredTaxLiabilitiesHedge
|
435000 | usd |
CY2024Q2 | twin |
Deferred Tax Liabilities Stepup On Fair Value Adjustment
DeferredTaxLiabilitiesStepupOnFairValueAdjustment
|
2530000 | usd |
CY2023Q2 | twin |
Deferred Tax Liabilities Stepup On Fair Value Adjustment
DeferredTaxLiabilitiesStepupOnFairValueAdjustment
|
0 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Liabilities Other
DeferredTaxLiabilitiesOther
|
431000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Liabilities Other
DeferredTaxLiabilitiesOther
|
473000 | usd |
CY2024Q2 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
9123000 | usd |
CY2023Q2 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
6842000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Liabilities Net
DeferredTaxAssetsLiabilitiesNet
|
3001000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Liabilities Net
DeferredTaxAssetsLiabilitiesNet
|
1036000 | usd |
CY2024Q2 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
24035000 | usd |
CY2023Q2 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
22345000 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
3227000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
3038000 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation Tax Contingencies Foreign
IncomeTaxReconciliationTaxContingenciesForeign
|
463000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Tax Contingencies Foreign
IncomeTaxReconciliationTaxContingenciesForeign
|
67000 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation Foreign Income Tax Rate Differential
IncomeTaxReconciliationForeignIncomeTaxRateDifferential
|
555000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Foreign Income Tax Rate Differential
IncomeTaxReconciliationForeignIncomeTaxRateDifferential
|
739000 | usd |
CY2024 | twin |
Income Tax Rate Reconciliation Foreign Permanent Items
IncomeTaxRateReconciliationForeignPermanentItems
|
127000 | usd |
CY2023 | twin |
Income Tax Rate Reconciliation Foreign Permanent Items
IncomeTaxRateReconciliationForeignPermanentItems
|
20000 | usd |
CY2024 | twin |
Income Tax Rate Reconciliation Foreign Prior Period Adjustment
IncomeTaxRateReconciliationForeignPriorPeriodAdjustment
|
118000 | usd |
CY2023 | twin |
Income Tax Rate Reconciliation Foreign Prior Period Adjustment
IncomeTaxRateReconciliationForeignPriorPeriodAdjustment
|
166000 | usd |
CY2024 | twin |
Income Tax Rate Reconciliation Other Foreign Adjustments
IncomeTaxRateReconciliationOtherForeignAdjustments
|
3000 | usd |
CY2023 | twin |
Income Tax Rate Reconciliation Other Foreign Adjustments
IncomeTaxRateReconciliationOtherForeignAdjustments
|
-90000 | usd |
CY2024 | twin |
Income Tax Rate Reconciliation Foreign Bargain Purchase Gain
IncomeTaxRateReconciliationForeignBargainPurchaseGain
|
-782000 | usd |
CY2023 | twin |
Income Tax Rate Reconciliation Foreign Bargain Purchase Gain
IncomeTaxRateReconciliationForeignBargainPurchaseGain
|
0 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation Tax Settlements Foreign
IncomeTaxReconciliationTaxSettlementsForeign
|
-786000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Tax Settlements Foreign
IncomeTaxReconciliationTaxSettlementsForeign
|
0 | usd |
CY2024 | twin |
Income Tax Rate Reconciliation Foreign Uncollectible Tax Receivable
IncomeTaxRateReconciliationForeignUncollectibleTaxReceivable
|
238000 | usd |
CY2023 | twin |
Income Tax Rate Reconciliation Foreign Uncollectible Tax Receivable
IncomeTaxRateReconciliationForeignUncollectibleTaxReceivable
|
0 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
-144000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
69000 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation Prior Year Income Taxes
IncomeTaxReconciliationPriorYearIncomeTaxes
|
96000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Prior Year Income Taxes
IncomeTaxReconciliationPriorYearIncomeTaxes
|
-113000 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation Tax Credits Research
IncomeTaxReconciliationTaxCreditsResearch
|
47000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Tax Credits Research
IncomeTaxReconciliationTaxCreditsResearch
|
127000 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation Tax Credits Foreign
IncomeTaxReconciliationTaxCreditsForeign
|
480000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Tax Credits Foreign
IncomeTaxReconciliationTaxCreditsForeign
|
-0 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation Tax Contingencies
IncomeTaxReconciliationTaxContingencies
|
3000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Tax Contingencies
IncomeTaxReconciliationTaxContingencies
|
64000 | usd |
CY2024 | twin |
Effective Income Tax Rate Reconciliation Sharebased Compensation Amount
EffectiveIncomeTaxRateReconciliationSharebasedCompensationAmount
|
-445000 | usd |
CY2023 | twin |
Effective Income Tax Rate Reconciliation Sharebased Compensation Amount
EffectiveIncomeTaxRateReconciliationSharebasedCompensationAmount
|
-13000 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation Change In Enacted Tax Rate
IncomeTaxReconciliationChangeInEnactedTaxRate
|
0 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Change In Enacted Tax Rate
IncomeTaxReconciliationChangeInEnactedTaxRate
|
-39000 | usd |
CY2024 | twin |
Effective Income Tax Rate Reconciliation Deferred Tax Basis Adjustment Amount
EffectiveIncomeTaxRateReconciliationDeferredTaxBasisAdjustmentAmount
|
132000 | usd |
CY2023 | twin |
Effective Income Tax Rate Reconciliation Deferred Tax Basis Adjustment Amount
EffectiveIncomeTaxRateReconciliationDeferredTaxBasisAdjustmentAmount
|
41000 | usd |
CY2024 | twin |
Effective Income Tax Rate Reconciliation Executive Compensation
EffectiveIncomeTaxRateReconciliationExecutiveCompensation
|
471000 | usd |
CY2023 | twin |
Effective Income Tax Rate Reconciliation Executive Compensation
EffectiveIncomeTaxRateReconciliationExecutiveCompensation
|
219000 | usd |
CY2024 | us-gaap |
Effective Income Tax Rate Reconciliation Gilti Amount
EffectiveIncomeTaxRateReconciliationGiltiAmount
|
0 | usd |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Gilti Amount
EffectiveIncomeTaxRateReconciliationGiltiAmount
|
97000 | usd |
CY2024 | us-gaap |
Effective Income Tax Rate Reconciliation Fdii Amount
EffectiveIncomeTaxRateReconciliationFdiiAmount
|
0 | usd |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Fdii Amount
EffectiveIncomeTaxRateReconciliationFdiiAmount
|
0 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation Change In Deferred Tax Assets Valuation Allowance
IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
1110000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Change In Deferred Tax Assets Valuation Allowance
IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
|
-426000 | usd |
CY2024 | us-gaap |
Income Tax Reconciliation Other Reconciling Items
IncomeTaxReconciliationOtherReconcilingItems
|
262000 | usd |
CY2023 | us-gaap |
Income Tax Reconciliation Other Reconciling Items
IncomeTaxReconciliationOtherReconcilingItems
|
76000 | usd |
CY2024 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
4121000 | usd |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
3788000 | usd |
CY2024Q2 | us-gaap |
Undistributed Earnings Of Foreign Subsidiaries
UndistributedEarningsOfForeignSubsidiaries
|
20977000 | usd |
CY2023Q2 | us-gaap |
Undistributed Earnings Of Foreign Subsidiaries
UndistributedEarningsOfForeignSubsidiaries
|
24612000 | usd |
CY2024Q2 | us-gaap |
Unrecognized Tax Benefits That Would Impact Effective Tax Rate
UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate
|
766000 | usd |
CY2023Q2 | us-gaap |
Unrecognized Tax Benefits That Would Impact Effective Tax Rate
UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate
|
774000 | usd |
CY2023Q2 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
774000 | usd |
CY2022Q2 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
716000 | usd |
CY2024 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
|
0 | usd |
CY2023 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
|
22000 | usd |
CY2024 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Current Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
|
8000 | usd |
CY2023 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Current Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
|
36000 | usd |
CY2024 | us-gaap |
Unrecognized Tax Benefits Decreases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
|
16000 | usd |
CY2023 | us-gaap |
Unrecognized Tax Benefits Decreases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
|
-0 | usd |
CY2024 | us-gaap |
Unrecognized Tax Benefits Reductions Resulting From Lapse Of Applicable Statute Of Limitations
UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
|
-0 | usd |
CY2023 | us-gaap |
Unrecognized Tax Benefits Reductions Resulting From Lapse Of Applicable Statute Of Limitations
UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
|
-0 | usd |
CY2024 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Settlements With Taxing Authorities
UnrecognizedTaxBenefitsIncreasesResultingFromSettlementsWithTaxingAuthorities
|
0 | usd |
CY2023 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Settlements With Taxing Authorities
UnrecognizedTaxBenefitsIncreasesResultingFromSettlementsWithTaxingAuthorities
|
0 | usd |
CY2024Q2 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
766000 | usd |
CY2023Q2 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
774000 | usd |
CY2024Q2 | us-gaap |
Unrecognized Tax Benefits Income Tax Penalties Accrued
UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued
|
68000 | usd |
CY2023Q2 | us-gaap |
Unrecognized Tax Benefits Income Tax Penalties Accrued
UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued
|
52000 | usd |
CY2024 | us-gaap |
Profit Loss
ProfitLoss
|
11246000 | usd |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
10677000 | usd |
CY2024 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
258000 | usd |
CY2023 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
297000 | usd |
CY2024 | us-gaap |
Undistributed Earnings Loss Allocated To Participating Securities Basic
UndistributedEarningsLossAllocatedToParticipatingSecuritiesBasic
|
-0 | usd |
CY2023 | us-gaap |
Undistributed Earnings Loss Allocated To Participating Securities Basic
UndistributedEarningsLossAllocatedToParticipatingSecuritiesBasic
|
-0 | usd |
CY2024 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
10988000 | usd |
CY2023 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
10380000 | usd |
CY2024 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
13683000 | |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
13468000 | |
CY2024 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.8 | |
CY2023 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.77 | |
CY2024 | us-gaap |
Profit Loss
ProfitLoss
|
11246000 | usd |
CY2023 | us-gaap |
Profit Loss
ProfitLoss
|
10677000 | usd |
CY2024 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
258000 | usd |
CY2023 | us-gaap |
Net Income Loss Attributable To Noncontrolling Interest
NetIncomeLossAttributableToNoncontrollingInterest
|
297000 | usd |
CY2024 | us-gaap |
Undistributed Earnings Loss Allocated To Participating Securities Basic
UndistributedEarningsLossAllocatedToParticipatingSecuritiesBasic
|
-0 | usd |
CY2023 | us-gaap |
Undistributed Earnings Loss Allocated To Participating Securities Basic
UndistributedEarningsLossAllocatedToParticipatingSecuritiesBasic
|
-0 | usd |
CY2024 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
10988000 | usd |
CY2023 | us-gaap |
Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
|
10380000 | usd |
CY2024 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
13683000 | |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
13468000 | |
CY2024 | us-gaap |
Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
|
194000 | |
CY2023 | us-gaap |
Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
|
343000 | |
CY2024 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
13877000 | |
CY2023 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
13811000 | |
CY2024 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.79 | |
CY2023 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.75 | |
CY2024 | us-gaap |
Cash Flow Hedge Gain Loss To Be Reclassified Within Twelve Months
CashFlowHedgeGainLossToBeReclassifiedWithinTwelveMonths
|
218000 | usd |