10-Q Filing
Filing Information
| Form Type | 10-Q |
| Accession Number | 0000930420-25-000181 |
| Period End Date | 20250630 |
| Filing Date | 20250730 |
| Fiscal Year | 2025 |
| Fiscal Period | Q2 |
| XBRL Instance | kfrc-20250630_htm.xml |
Filing Contents
This filing contains the following financial statements:
Balance Sheet
144 line items
| Line Item | Tag | Value | Unit | Period |
|---|---|---|---|---|
| Trade receivables, allowances |
AllowanceForDoubtfulAccountsReceivableCurrent
|
$1.45M | USD | Point-in-time |
| Trade receivables, allowances |
AllowanceForDoubtfulAccountsReceivableCurrent
|
$1.45M | USD | Point-in-time |
| Trade receivables, allowances |
AllowanceForDoubtfulAccountsReceivableCurrent
|
$1.56M | USD | Point-in-time |
| Trade receivables, allowances |
AllowanceForDoubtfulAccountsReceivableCurrent
|
$1.56M | USD | Point-in-time |
| Preferred stock, par value (in dollars per share) |
PreferredStockParOrStatedValuePerShare
|
$0.01 | USD | Point-in-time |
| Preferred stock, par value (in dollars per share) |
PreferredStockParOrStatedValuePerShare
|
$0.01 | USD | Point-in-time |
| Preferred stock, par value (in dollars per share) |
PreferredStockParOrStatedValuePerShare
|
$0.01 | USD | Point-in-time |
| Preferred stock, par value (in dollars per share) |
PreferredStockParOrStatedValuePerShare
|
$0.01 | USD | Point-in-time |
| Cash and cash equivalents |
CashAndCashEquivalentsAtCarryingValue
|
$2.47M | USD | Point-in-time |
| Cash and cash equivalents |
CashAndCashEquivalentsAtCarryingValue
|
$2.47M | USD | Point-in-time |
| Preferred stock, shares authorized (in shares) |
PreferredStockSharesAuthorized
|
15.00M | shares | Point-in-time |
| Preferred stock, shares authorized (in shares) |
PreferredStockSharesAuthorized
|
15.00M | shares | Point-in-time |
| Preferred stock, shares authorized (in shares) |
PreferredStockSharesAuthorized
|
15.00M | shares | Point-in-time |
| Preferred stock, shares authorized (in shares) |
PreferredStockSharesAuthorized
|
15.00M | shares | Point-in-time |
| Cash and cash equivalents |
CashAndCashEquivalentsAtCarryingValue
|
$349.00K | USD | Point-in-time |
| Cash and cash equivalents |
CashAndCashEquivalentsAtCarryingValue
|
$349.00K | USD | Point-in-time |
| Preferred stock, shares issued (in shares) |
PreferredStockSharesIssued
|
0.00 | shares | Point-in-time |
| Preferred stock, shares issued (in shares) |
PreferredStockSharesIssued
|
0.00 | shares | Point-in-time |
| Preferred stock, shares issued (in shares) |
PreferredStockSharesIssued
|
0.00 | shares | Point-in-time |
| Preferred stock, shares issued (in shares) |
PreferredStockSharesIssued
|
0.00 | shares | Point-in-time |
| Trade receivables, net of allowances of $1,446 and $1,560, respectively |
AccountsReceivableNetCurrent
|
$215.69M | USD | Point-in-time |
| Trade receivables, net of allowances of $1,446 and $1,560, respectively |
AccountsReceivableNetCurrent
|
$215.69M | USD | Point-in-time |
| Trade receivables, net of allowances of $1,446 and $1,560, respectively |
AccountsReceivableNetCurrent
|
$209.88M | USD | Point-in-time |
| Trade receivables, net of allowances of $1,446 and $1,560, respectively |
AccountsReceivableNetCurrent
|
$209.88M | USD | Point-in-time |
| Prepaid expenses and other current assets |
PrepaidExpenseAndOtherAssetsCurrent
|
$10.50M | USD | Point-in-time |
| Prepaid expenses and other current assets |
PrepaidExpenseAndOtherAssetsCurrent
|
$10.50M | USD | Point-in-time |
| Preferred stock, shares outstanding (in shares) |
PreferredStockSharesOutstanding
|
0.00 | shares | Point-in-time |
| Preferred stock, shares outstanding (in shares) |
PreferredStockSharesOutstanding
|
0.00 | shares | Point-in-time |
| Prepaid expenses and other current assets |
PrepaidExpenseAndOtherAssetsCurrent
|
$9.37M | USD | Point-in-time |
| Prepaid expenses and other current assets |
PrepaidExpenseAndOtherAssetsCurrent
|
$9.37M | USD | Point-in-time |
| Preferred stock, shares outstanding (in shares) |
PreferredStockSharesOutstanding
|
0.00 | shares | Point-in-time |
| Preferred stock, shares outstanding (in shares) |
PreferredStockSharesOutstanding
|
0.00 | shares | Point-in-time |
| Common stock, par value (in dollars per share) |
CommonStockParOrStatedValuePerShare
|
$0.01 | USD | Point-in-time |
| Common stock, par value (in dollars per share) |
CommonStockParOrStatedValuePerShare
|
$0.01 | USD | Point-in-time |
| Total current assets |
AssetsCurrent
|
$225.41M | USD | Point-in-time |
| Total current assets |
AssetsCurrent
|
$225.41M | USD | Point-in-time |
| Common stock, par value (in dollars per share) |
CommonStockParOrStatedValuePerShare
|
$0.01 | USD | Point-in-time |
| Common stock, par value (in dollars per share) |
CommonStockParOrStatedValuePerShare
|
$0.01 | USD | Point-in-time |
| Total current assets |
AssetsCurrent
|
$222.85M | USD | Point-in-time |
| Total current assets |
AssetsCurrent
|
$222.85M | USD | Point-in-time |
| Fixed assets, net |
PropertyPlantAndEquipmentNet
|
$6.64M | USD | Point-in-time |
| Fixed assets, net |
PropertyPlantAndEquipmentNet
|
$6.64M | USD | Point-in-time |
| Fixed assets, net |
PropertyPlantAndEquipmentNet
|
$7.72M | USD | Point-in-time |
| Fixed assets, net |
PropertyPlantAndEquipmentNet
|
$7.72M | USD | Point-in-time |
| Common stock, shares authorized (in shares) |
CommonStockSharesAuthorized
|
250.00M | shares | Point-in-time |
| Common stock, shares authorized (in shares) |
CommonStockSharesAuthorized
|
250.00M | shares | Point-in-time |
| Common stock, shares authorized (in shares) |
CommonStockSharesAuthorized
|
250.00M | shares | Point-in-time |
| Common stock, shares authorized (in shares) |
CommonStockSharesAuthorized
|
250.00M | shares | Point-in-time |
| Common stock, shares issued (in shares) |
CommonStockSharesIssued
|
73.83M | shares | Point-in-time |
| Common stock, shares issued (in shares) |
CommonStockSharesIssued
|
73.83M | shares | Point-in-time |
| Other assets, net |
OtherAssetsNoncurrent
|
$94.66M | USD | Point-in-time |
| Other assets, net |
OtherAssetsNoncurrent
|
$94.66M | USD | Point-in-time |
| Common stock, shares issued (in shares) |
CommonStockSharesIssued
|
73.89M | shares | Point-in-time |
| Common stock, shares issued (in shares) |
CommonStockSharesIssued
|
73.89M | shares | Point-in-time |
| Other assets, net |
OtherAssetsNoncurrent
|
$112.42M | USD | Point-in-time |
| Other assets, net |
OtherAssetsNoncurrent
|
$112.42M | USD | Point-in-time |
| Treasury stock, shares (in shares) |
TreasuryStockCommonShares
|
54.62M | shares | Point-in-time |
| Treasury stock, shares (in shares) |
TreasuryStockCommonShares
|
54.62M | shares | Point-in-time |
| Deferred tax assets, net |
DeferredIncomeTaxAssetsNet
|
$6.69M | USD | Point-in-time |
| Deferred tax assets, net |
DeferredIncomeTaxAssetsNet
|
$6.69M | USD | Point-in-time |
| Treasury stock, shares (in shares) |
TreasuryStockCommonShares
|
55.28M | shares | Point-in-time |
| Treasury stock, shares (in shares) |
TreasuryStockCommonShares
|
55.28M | shares | Point-in-time |
| Deferred tax assets, net |
DeferredIncomeTaxAssetsNet
|
$5.01M | USD | Point-in-time |
| Deferred tax assets, net |
DeferredIncomeTaxAssetsNet
|
$5.01M | USD | Point-in-time |
| Goodwill |
Goodwill
|
$25.04M | USD | Point-in-time |
| Goodwill |
Goodwill
|
$25.04M | USD | Point-in-time |
| Goodwill |
Goodwill
|
$25.04M | USD | Point-in-time |
| Goodwill |
Goodwill
|
$25.04M | USD | Point-in-time |
| Total assets |
Assets
|
$357.83M | USD | Point-in-time |
| Total assets |
Assets
|
$357.83M | USD | Point-in-time |
| Total assets |
Assets
|
$373.64M | USD | Point-in-time |
| Total assets |
Assets
|
$373.64M | USD | Point-in-time |
| Accounts payable and other accrued liabilities |
AccountsPayableAndAccruedLiabilitiesCurrent
|
$61.75M | USD | Point-in-time |
| Accounts payable and other accrued liabilities |
AccountsPayableAndAccruedLiabilitiesCurrent
|
$61.75M | USD | Point-in-time |
| Accounts payable and other accrued liabilities |
AccountsPayableAndAccruedLiabilitiesCurrent
|
$63.29M | USD | Point-in-time |
| Accounts payable and other accrued liabilities |
AccountsPayableAndAccruedLiabilitiesCurrent
|
$63.29M | USD | Point-in-time |
| Accrued payroll costs |
EmployeeRelatedLiabilitiesCurrent
|
$39.67M | USD | Point-in-time |
| Accrued payroll costs |
EmployeeRelatedLiabilitiesCurrent
|
$39.67M | USD | Point-in-time |
| Accrued payroll costs |
EmployeeRelatedLiabilitiesCurrent
|
$38.82M | USD | Point-in-time |
| Accrued payroll costs |
EmployeeRelatedLiabilitiesCurrent
|
$38.82M | USD | Point-in-time |
| Current portion of operating lease liabilities |
OperatingLeaseLiabilityCurrent
|
$3.01M | USD | Point-in-time |
| Current portion of operating lease liabilities |
OperatingLeaseLiabilityCurrent
|
$3.01M | USD | Point-in-time |
| Current portion of operating lease liabilities |
OperatingLeaseLiabilityCurrent
|
$3.04M | USD | Point-in-time |
| Current portion of operating lease liabilities |
OperatingLeaseLiabilityCurrent
|
$3.04M | USD | Point-in-time |
| Income taxes payable |
AccruedIncomeTaxesCurrent
|
$3.37M | USD | Point-in-time |
| Income taxes payable |
AccruedIncomeTaxesCurrent
|
$3.37M | USD | Point-in-time |
| Income taxes payable |
AccruedIncomeTaxesCurrent
|
$8.84M | USD | Point-in-time |
| Income taxes payable |
AccruedIncomeTaxesCurrent
|
$8.84M | USD | Point-in-time |
| Total current liabilities |
LiabilitiesCurrent
|
$109.33M | USD | Point-in-time |
| Total current liabilities |
LiabilitiesCurrent
|
$109.33M | USD | Point-in-time |
| Total current liabilities |
LiabilitiesCurrent
|
$112.46M | USD | Point-in-time |
| Total current liabilities |
LiabilitiesCurrent
|
$112.46M | USD | Point-in-time |
| Long-term debt credit facility |
LongTermLineOfCredit
|
$70.00M | USD | Point-in-time |
| Long-term debt credit facility |
LongTermLineOfCredit
|
$70.00M | USD | Point-in-time |
| Long-term debt credit facility |
LongTermLineOfCredit
|
$32.70M | USD | Point-in-time |
| Long-term debt credit facility |
LongTermLineOfCredit
|
$32.70M | USD | Point-in-time |
| Other long-term liabilities |
OtherLiabilitiesNoncurrent
|
$59.89M | USD | Point-in-time |
| Other long-term liabilities |
OtherLiabilitiesNoncurrent
|
$59.89M | USD | Point-in-time |
| Other long-term liabilities |
OtherLiabilitiesNoncurrent
|
$58.06M | USD | Point-in-time |
| Other long-term liabilities |
OtherLiabilitiesNoncurrent
|
$58.06M | USD | Point-in-time |
| Total liabilities |
Liabilities
|
$203.22M | USD | Point-in-time |
| Total liabilities |
Liabilities
|
$203.22M | USD | Point-in-time |
| Total liabilities |
Liabilities
|
$239.22M | USD | Point-in-time |
| Total liabilities |
Liabilities
|
$239.22M | USD | Point-in-time |
| Commitments and contingencies (Note J) |
CommitmentsAndContingencies
|
- | USD | Point-in-time |
| Commitments and contingencies (Note J) |
CommitmentsAndContingencies
|
- | USD | Point-in-time |
| Commitments and contingencies (Note J) |
CommitmentsAndContingencies
|
- | USD | Point-in-time |
| Commitments and contingencies (Note J) |
CommitmentsAndContingencies
|
- | USD | Point-in-time |
| Preferred stock, $0.01 par value; 15,000 shares authorized, none issued and outstanding |
PreferredStockValue
|
- | USD | Point-in-time |
| Preferred stock, $0.01 par value; 15,000 shares authorized, none issued and outstanding |
PreferredStockValue
|
- | USD | Point-in-time |
| Preferred stock, $0.01 par value; 15,000 shares authorized, none issued and outstanding |
PreferredStockValue
|
- | USD | Point-in-time |
| Preferred stock, $0.01 par value; 15,000 shares authorized, none issued and outstanding |
PreferredStockValue
|
- | USD | Point-in-time |
| Common stock, $0.01 par value; 250,000 shares authorized, 73,888 and 73,835 issued, respectively |
CommonStockValue
|
$738.00K | USD | Point-in-time |
| Common stock, $0.01 par value; 250,000 shares authorized, 73,888 and 73,835 issued, respectively |
CommonStockValue
|
$738.00K | USD | Point-in-time |
| Common stock, $0.01 par value; 250,000 shares authorized, 73,888 and 73,835 issued, respectively |
CommonStockValue
|
$739.00K | USD | Point-in-time |
| Common stock, $0.01 par value; 250,000 shares authorized, 73,888 and 73,835 issued, respectively |
CommonStockValue
|
$739.00K | USD | Point-in-time |
| Additional paid-in capital |
AdditionalPaidInCapital
|
$551.20M | USD | Point-in-time |
| Additional paid-in capital |
AdditionalPaidInCapital
|
$551.20M | USD | Point-in-time |
| Additional paid-in capital |
AdditionalPaidInCapital
|
$543.11M | USD | Point-in-time |
| Additional paid-in capital |
AdditionalPaidInCapital
|
$543.11M | USD | Point-in-time |
| Retained earnings |
RetainedEarningsAccumulatedDeficit
|
$550.14M | USD | Point-in-time |
| Retained earnings |
RetainedEarningsAccumulatedDeficit
|
$550.14M | USD | Point-in-time |
| Retained earnings |
RetainedEarningsAccumulatedDeficit
|
$546.20M | USD | Point-in-time |
| Retained earnings |
RetainedEarningsAccumulatedDeficit
|
$546.20M | USD | Point-in-time |
| Treasury stock, at cost; 55,277 and 54,619 shares, respectively |
TreasuryStockCommonValue
|
$935.43M | USD | Point-in-time |
| Treasury stock, at cost; 55,277 and 54,619 shares, respectively |
TreasuryStockCommonValue
|
$935.43M | USD | Point-in-time |
| Treasury stock, at cost; 55,277 and 54,619 shares, respectively |
TreasuryStockCommonValue
|
$967.66M | USD | Point-in-time |
| Treasury stock, at cost; 55,277 and 54,619 shares, respectively |
TreasuryStockCommonValue
|
$967.66M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$138.03M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$138.03M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$159.08M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$159.08M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$134.42M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$134.42M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$166.62M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$166.62M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$164.50M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$164.50M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$154.62M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$154.62M | USD | Point-in-time |
| Total liabilities and stockholders equity |
LiabilitiesAndStockholdersEquity
|
$357.83M | USD | Point-in-time |
| Total liabilities and stockholders equity |
LiabilitiesAndStockholdersEquity
|
$357.83M | USD | Point-in-time |
| Total liabilities and stockholders equity |
LiabilitiesAndStockholdersEquity
|
$373.64M | USD | Point-in-time |
| Total liabilities and stockholders equity |
LiabilitiesAndStockholdersEquity
|
$373.64M | USD | Point-in-time |
Income Statement
116 line items
| Line Item | Tag | Value | Unit | Period |
|---|---|---|---|---|
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$664.34M | USD | 2 Qtrs |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$664.34M | USD | 2 Qtrs |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$708.21M | USD | 2 Qtrs |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$708.21M | USD | 2 Qtrs |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$356.32M | USD | 1 Quarter |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$356.32M | USD | 1 Quarter |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$334.32M | USD | 1 Quarter |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$334.32M | USD | 1 Quarter |
| Direct costs |
CostOfRevenue
|
$485.44M | USD | 2 Qtrs |
| Direct costs |
CostOfRevenue
|
$485.44M | USD | 2 Qtrs |
| Direct costs |
CostOfRevenue
|
$257.35M | USD | 1 Quarter |
| Direct costs |
CostOfRevenue
|
$257.35M | USD | 1 Quarter |
| Direct costs |
CostOfRevenue
|
$513.98M | USD | 2 Qtrs |
| Direct costs |
CostOfRevenue
|
$513.98M | USD | 2 Qtrs |
| Direct costs |
CostOfRevenue
|
$243.67M | USD | 1 Quarter |
| Direct costs |
CostOfRevenue
|
$243.67M | USD | 1 Quarter |
| Gross profit |
GrossProfit
|
$194.22M | USD | 2 Qtrs |
| Gross profit |
GrossProfit
|
$194.22M | USD | 2 Qtrs |
| Gross profit |
GrossProfit
|
$90.65M | USD | 1 Quarter |
| Gross profit |
GrossProfit
|
$90.65M | USD | 1 Quarter |
| Gross profit |
GrossProfit
|
$98.97M | USD | 1 Quarter |
| Gross profit |
GrossProfit
|
$98.97M | USD | 1 Quarter |
| Gross profit |
GrossProfit
|
$178.91M | USD | 2 Qtrs |
| Gross profit |
GrossProfit
|
$178.91M | USD | 2 Qtrs |
| Selling, general and administrative expenses |
SellingGeneralAndAdministrativeExpense
|
$149.53M | USD | 2 Qtrs |
| Selling, general and administrative expenses |
SellingGeneralAndAdministrativeExpense
|
$149.53M | USD | 2 Qtrs |
| Selling, general and administrative expenses |
SellingGeneralAndAdministrativeExpense
|
$77.72M | USD | 1 Quarter |
| Selling, general and administrative expenses |
SellingGeneralAndAdministrativeExpense
|
$77.72M | USD | 1 Quarter |
| Selling, general and administrative expenses |
SellingGeneralAndAdministrativeExpense
|
$155.91M | USD | 2 Qtrs |
| Selling, general and administrative expenses |
SellingGeneralAndAdministrativeExpense
|
$155.91M | USD | 2 Qtrs |
| Selling, general and administrative expenses |
SellingGeneralAndAdministrativeExpense
|
$74.37M | USD | 1 Quarter |
| Selling, general and administrative expenses |
SellingGeneralAndAdministrativeExpense
|
$74.37M | USD | 1 Quarter |
| Depreciation and amortization |
DepreciationAndAmortization
|
$1.39M | USD | 1 Quarter |
| Depreciation and amortization |
DepreciationAndAmortization
|
$1.39M | USD | 1 Quarter |
| Depreciation and amortization |
DepreciationAndAmortization
|
$2.89M | USD | 2 Qtrs |
| Depreciation and amortization |
DepreciationAndAmortization
|
$2.89M | USD | 2 Qtrs |
| Depreciation and amortization |
DepreciationAndAmortization
|
$1.55M | USD | 1 Quarter |
| Depreciation and amortization |
DepreciationAndAmortization
|
$1.55M | USD | 1 Quarter |
| Depreciation and amortization |
DepreciationAndAmortization
|
$2.85M | USD | 2 Qtrs |
| Depreciation and amortization |
DepreciationAndAmortization
|
$2.85M | USD | 2 Qtrs |
| Income from operations |
OperatingIncomeLoss
|
$14.89M | USD | 1 Quarter |
| Income from operations |
OperatingIncomeLoss
|
$14.89M | USD | 1 Quarter |
| Income from operations |
OperatingIncomeLoss
|
$35.43M | USD | 2 Qtrs |
| Income from operations |
OperatingIncomeLoss
|
$35.43M | USD | 2 Qtrs |
| Income from operations |
OperatingIncomeLoss
|
$26.52M | USD | 2 Qtrs |
| Income from operations |
OperatingIncomeLoss
|
$26.52M | USD | 2 Qtrs |
| Income from operations |
OperatingIncomeLoss
|
$19.70M | USD | 1 Quarter |
| Income from operations |
OperatingIncomeLoss
|
$19.70M | USD | 1 Quarter |
| Other expense, net |
OtherNonoperatingIncomeExpense
|
$-1.16M | USD | 2 Qtrs |
| Other expense, net |
OtherNonoperatingIncomeExpense
|
$-1.16M | USD | 2 Qtrs |
| Other expense, net |
OtherNonoperatingIncomeExpense
|
$-504.00K | USD | 1 Quarter |
| Other expense, net |
OtherNonoperatingIncomeExpense
|
$-504.00K | USD | 1 Quarter |
| Other expense, net |
OtherNonoperatingIncomeExpense
|
$-1.03M | USD | 1 Quarter |
| Other expense, net |
OtherNonoperatingIncomeExpense
|
$-1.03M | USD | 1 Quarter |
| Other expense, net |
OtherNonoperatingIncomeExpense
|
$-1.59M | USD | 2 Qtrs |
| Other expense, net |
OtherNonoperatingIncomeExpense
|
$-1.59M | USD | 2 Qtrs |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$34.27M | USD | 2 Qtrs |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$34.27M | USD | 2 Qtrs |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$13.86M | USD | 1 Quarter |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$13.86M | USD | 1 Quarter |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$24.93M | USD | 2 Qtrs |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$24.93M | USD | 2 Qtrs |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$19.20M | USD | 1 Quarter |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$19.20M | USD | 1 Quarter |
| Income tax expense |
IncomeTaxExpenseBenefit
|
$5.04M | USD | 1 Quarter |
| Income tax expense |
IncomeTaxExpenseBenefit
|
$5.04M | USD | 1 Quarter |
| Income tax expense |
IncomeTaxExpenseBenefit
|
$9.12M | USD | 2 Qtrs |
| Income tax expense |
IncomeTaxExpenseBenefit
|
$9.12M | USD | 2 Qtrs |
| Income tax expense |
IncomeTaxExpenseBenefit
|
$3.41M | USD | 1 Quarter |
| Income tax expense |
IncomeTaxExpenseBenefit
|
$3.41M | USD | 1 Quarter |
| Income tax expense |
IncomeTaxExpenseBenefit
|
$6.33M | USD | 2 Qtrs |
| Income tax expense |
IncomeTaxExpenseBenefit
|
$6.33M | USD | 2 Qtrs |
| Net income |
NetIncomeLoss
|
$10.99M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$10.99M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$8.14M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$8.14M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$10.45M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$10.45M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$18.59M | USD | 2 Qtrs |
| Net income |
NetIncomeLoss
|
$18.59M | USD | 2 Qtrs |
| Net income |
NetIncomeLoss
|
$14.16M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$14.16M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$25.14M | USD | 2 Qtrs |
| Net income |
NetIncomeLoss
|
$25.14M | USD | 2 Qtrs |
| Earnings per share basic (in dollars per share) |
EarningsPerShareBasic
|
$0.76 | USD | 1 Quarter |
| Earnings per share basic (in dollars per share) |
EarningsPerShareBasic
|
$0.76 | USD | 1 Quarter |
| Earnings per share basic (in dollars per share) |
EarningsPerShareBasic
|
$1.34 | USD | 2 Qtrs |
| Earnings per share basic (in dollars per share) |
EarningsPerShareBasic
|
$1.34 | USD | 2 Qtrs |
| Earnings per share basic (in dollars per share) |
EarningsPerShareBasic
|
$1.04 | USD | 2 Qtrs |
| Earnings per share basic (in dollars per share) |
EarningsPerShareBasic
|
$1.04 | USD | 2 Qtrs |
| Earnings per share basic (in dollars per share) |
EarningsPerShareBasic
|
$0.59 | USD | 1 Quarter |
| Earnings per share basic (in dollars per share) |
EarningsPerShareBasic
|
$0.59 | USD | 1 Quarter |
| Earnings per share - diluted (in dollars per share) |
EarningsPerShareDiluted
|
$1.33 | USD | 2 Qtrs |
| Earnings per share - diluted (in dollars per share) |
EarningsPerShareDiluted
|
$1.33 | USD | 2 Qtrs |
| Earnings per share - diluted (in dollars per share) |
EarningsPerShareDiluted
|
$0.59 | USD | 1 Quarter |
| Earnings per share - diluted (in dollars per share) |
EarningsPerShareDiluted
|
$0.59 | USD | 1 Quarter |
| Earnings per share - diluted (in dollars per share) |
EarningsPerShareDiluted
|
$1.03 | USD | 2 Qtrs |
| Earnings per share - diluted (in dollars per share) |
EarningsPerShareDiluted
|
$1.03 | USD | 2 Qtrs |
| Earnings per share - diluted (in dollars per share) |
EarningsPerShareDiluted
|
$0.75 | USD | 1 Quarter |
| Earnings per share - diluted (in dollars per share) |
EarningsPerShareDiluted
|
$0.75 | USD | 1 Quarter |
| Weighted average shares outstanding basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
17.71M | shares | 1 Quarter |
| Weighted average shares outstanding basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
17.71M | shares | 1 Quarter |
| Weighted average shares outstanding basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
18.70M | shares | 1 Quarter |
| Weighted average shares outstanding basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
18.70M | shares | 1 Quarter |
| Weighted average shares outstanding basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
18.71M | shares | 2 Qtrs |
| Weighted average shares outstanding basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
18.71M | shares | 2 Qtrs |
| Weighted average shares outstanding basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
17.94M | shares | 2 Qtrs |
| Weighted average shares outstanding basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
17.94M | shares | 2 Qtrs |
| Weighted average shares outstanding diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
18.89M | shares | 1 Quarter |
| Weighted average shares outstanding diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
18.89M | shares | 1 Quarter |
| Weighted average shares outstanding diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
18.90M | shares | 2 Qtrs |
| Weighted average shares outstanding diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
18.90M | shares | 2 Qtrs |
| Weighted average shares outstanding diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
17.99M | shares | 2 Qtrs |
| Weighted average shares outstanding diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
17.99M | shares | 2 Qtrs |
| Weighted average shares outstanding diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
17.76M | shares | 1 Quarter |
| Weighted average shares outstanding diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
17.76M | shares | 1 Quarter |
Cash Flow Statement
146 line items
| Line Item | Tag | Value | Unit | Period |
|---|---|---|---|---|
| Net income |
NetIncomeLoss
|
$10.99M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$10.99M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$8.14M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$8.14M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$10.45M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$10.45M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$18.59M | USD | 2 Qtrs |
| Net income |
NetIncomeLoss
|
$18.59M | USD | 2 Qtrs |
| Net income |
NetIncomeLoss
|
$14.16M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$14.16M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$25.14M | USD | 2 Qtrs |
| Net income |
NetIncomeLoss
|
$25.14M | USD | 2 Qtrs |
| Deferred income tax provision, net |
DeferredIncomeTaxesAndTaxCredits
|
$-1.46M | USD | 2 Qtrs |
| Deferred income tax provision, net |
DeferredIncomeTaxesAndTaxCredits
|
$-1.46M | USD | 2 Qtrs |
| Deferred income tax provision, net |
DeferredIncomeTaxesAndTaxCredits
|
$-1.68M | USD | 2 Qtrs |
| Deferred income tax provision, net |
DeferredIncomeTaxesAndTaxCredits
|
$-1.68M | USD | 2 Qtrs |
| Provision for (recoveries of) credit losses |
ProvisionForDoubtfulAccounts
|
$-17.00K | USD | 2 Qtrs |
| Provision for (recoveries of) credit losses |
ProvisionForDoubtfulAccounts
|
$-17.00K | USD | 2 Qtrs |
| Provision for (recoveries of) credit losses |
ProvisionForDoubtfulAccounts
|
$62.00K | USD | 2 Qtrs |
| Provision for (recoveries of) credit losses |
ProvisionForDoubtfulAccounts
|
$62.00K | USD | 2 Qtrs |
| Depreciation and amortization |
DepreciationDepletionAndAmortization
|
$2.89M | USD | 2 Qtrs |
| Depreciation and amortization |
DepreciationDepletionAndAmortization
|
$2.89M | USD | 2 Qtrs |
| Depreciation and amortization |
DepreciationDepletionAndAmortization
|
$2.85M | USD | 2 Qtrs |
| Depreciation and amortization |
DepreciationDepletionAndAmortization
|
$2.85M | USD | 2 Qtrs |
| Stock-based compensation expense |
ShareBasedCompensation
|
$7.00M | USD | 2 Qtrs |
| Stock-based compensation expense |
ShareBasedCompensation
|
$7.00M | USD | 2 Qtrs |
| Stock-based compensation expense |
ShareBasedCompensation
|
$7.27M | USD | 2 Qtrs |
| Stock-based compensation expense |
ShareBasedCompensation
|
$7.27M | USD | 2 Qtrs |
| Noncash lease expense |
OperatingLeaseRightOfUseAssetAmortizationExpense
|
$1.89M | USD | 2 Qtrs |
| Noncash lease expense |
OperatingLeaseRightOfUseAssetAmortizationExpense
|
$1.89M | USD | 2 Qtrs |
| Noncash lease expense |
OperatingLeaseRightOfUseAssetAmortizationExpense
|
$1.85M | USD | 2 Qtrs |
| Noncash lease expense |
OperatingLeaseRightOfUseAssetAmortizationExpense
|
$1.85M | USD | 2 Qtrs |
| Other |
OtherNoncashIncomeExpense
|
$454.00K | USD | 2 Qtrs |
| Other |
OtherNoncashIncomeExpense
|
$454.00K | USD | 2 Qtrs |
| Other |
OtherNoncashIncomeExpense
|
$993.00K | USD | 2 Qtrs |
| Other |
OtherNoncashIncomeExpense
|
$993.00K | USD | 2 Qtrs |
| Trade receivables, net |
IncreaseDecreaseInAccountsReceivable
|
$-5.75M | USD | 2 Qtrs |
| Trade receivables, net |
IncreaseDecreaseInAccountsReceivable
|
$-5.75M | USD | 2 Qtrs |
| Trade receivables, net |
IncreaseDecreaseInAccountsReceivable
|
$-2.73M | USD | 2 Qtrs |
| Trade receivables, net |
IncreaseDecreaseInAccountsReceivable
|
$-2.73M | USD | 2 Qtrs |
| Other assets |
IncreaseDecreaseInOtherOperatingAssets
|
$10.81M | USD | 2 Qtrs |
| Other assets |
IncreaseDecreaseInOtherOperatingAssets
|
$10.81M | USD | 2 Qtrs |
| Other assets |
IncreaseDecreaseInOtherOperatingAssets
|
$395.00K | USD | 2 Qtrs |
| Other assets |
IncreaseDecreaseInOtherOperatingAssets
|
$395.00K | USD | 2 Qtrs |
| Accrued payroll costs |
IncreaseDecreaseInAccruedSalaries
|
$6.03M | USD | 2 Qtrs |
| Accrued payroll costs |
IncreaseDecreaseInAccruedSalaries
|
$6.03M | USD | 2 Qtrs |
| Accrued payroll costs |
IncreaseDecreaseInAccruedSalaries
|
$1.02M | USD | 2 Qtrs |
| Accrued payroll costs |
IncreaseDecreaseInAccruedSalaries
|
$1.02M | USD | 2 Qtrs |
| Other liabilities |
IncreaseDecreaseInOtherNoncurrentLiabilities
|
$-8.66M | USD | 2 Qtrs |
| Other liabilities |
IncreaseDecreaseInOtherNoncurrentLiabilities
|
$-8.66M | USD | 2 Qtrs |
| Other liabilities |
IncreaseDecreaseInOtherNoncurrentLiabilities
|
$-5.88M | USD | 2 Qtrs |
| Other liabilities |
IncreaseDecreaseInOtherNoncurrentLiabilities
|
$-5.88M | USD | 2 Qtrs |
| Cash provided by operating activities |
NetCashProvidedByUsedInOperatingActivities
|
$34.10M | USD | 2 Qtrs |
| Cash provided by operating activities |
NetCashProvidedByUsedInOperatingActivities
|
$34.10M | USD | 2 Qtrs |
| Cash provided by operating activities |
NetCashProvidedByUsedInOperatingActivities
|
$18.61M | USD | 2 Qtrs |
| Cash provided by operating activities |
NetCashProvidedByUsedInOperatingActivities
|
$18.61M | USD | 2 Qtrs |
| Capital expenditures |
PaymentsToAcquirePropertyPlantAndEquipment
|
$8.29M | USD | 2 Qtrs |
| Capital expenditures |
PaymentsToAcquirePropertyPlantAndEquipment
|
$8.29M | USD | 2 Qtrs |
| Capital expenditures |
PaymentsToAcquirePropertyPlantAndEquipment
|
$4.98M | USD | 2 Qtrs |
| Capital expenditures |
PaymentsToAcquirePropertyPlantAndEquipment
|
$4.98M | USD | 2 Qtrs |
| Payment to Acquire Life Insurance Policy, Investing Activities |
PaymentsToAcquireLifeInsurancePolicies
|
$1.15M | USD | 2 Qtrs |
| Payment to Acquire Life Insurance Policy, Investing Activities |
PaymentsToAcquireLifeInsurancePolicies
|
$1.15M | USD | 2 Qtrs |
| Payment to Acquire Life Insurance Policy, Investing Activities |
PaymentsToAcquireLifeInsurancePolicies
|
$686.00K | USD | 2 Qtrs |
| Payment to Acquire Life Insurance Policy, Investing Activities |
PaymentsToAcquireLifeInsurancePolicies
|
$686.00K | USD | 2 Qtrs |
| Cash used in investing activities |
NetCashProvidedByUsedInInvestingActivities
|
$-3.75M | USD | 2 Qtrs |
| Cash used in investing activities |
NetCashProvidedByUsedInInvestingActivities
|
$-3.75M | USD | 2 Qtrs |
| Cash used in investing activities |
NetCashProvidedByUsedInInvestingActivities
|
$-7.59M | USD | 2 Qtrs |
| Cash used in investing activities |
NetCashProvidedByUsedInInvestingActivities
|
$-7.59M | USD | 2 Qtrs |
| Proceeds from credit facility |
ProceedsFromLinesOfCredit
|
$141.60M | USD | 2 Qtrs |
| Proceeds from credit facility |
ProceedsFromLinesOfCredit
|
$141.60M | USD | 2 Qtrs |
| Proceeds from credit facility |
ProceedsFromLinesOfCredit
|
$323.50M | USD | 2 Qtrs |
| Proceeds from credit facility |
ProceedsFromLinesOfCredit
|
$323.50M | USD | 2 Qtrs |
| Payments on credit facility |
RepaymentsOfLinesOfCredit
|
$286.20M | USD | 2 Qtrs |
| Payments on credit facility |
RepaymentsOfLinesOfCredit
|
$286.20M | USD | 2 Qtrs |
| Payments on credit facility |
RepaymentsOfLinesOfCredit
|
$146.50M | USD | 2 Qtrs |
| Payments on credit facility |
RepaymentsOfLinesOfCredit
|
$146.50M | USD | 2 Qtrs |
| Repurchases of common stock |
PaymentsForRepurchaseOfCommonStock
|
$11.23M | USD | 2 Qtrs |
| Repurchases of common stock |
PaymentsForRepurchaseOfCommonStock
|
$11.23M | USD | 2 Qtrs |
| Repurchases of common stock |
PaymentsForRepurchaseOfCommonStock
|
$32.24M | USD | 2 Qtrs |
| Repurchases of common stock |
PaymentsForRepurchaseOfCommonStock
|
$32.24M | USD | 2 Qtrs |
| Cash dividends |
PaymentsOfDividendsCommonStock
|
$13.95M | USD | 2 Qtrs |
| Cash dividends |
PaymentsOfDividendsCommonStock
|
$13.95M | USD | 2 Qtrs |
| Cash dividends |
PaymentsOfDividendsCommonStock
|
$14.23M | USD | 2 Qtrs |
| Cash dividends |
PaymentsOfDividendsCommonStock
|
$14.23M | USD | 2 Qtrs |
| Other |
ProceedsFromPaymentsForOtherFinancingActivities
|
$-4.00K | USD | 2 Qtrs |
| Other |
ProceedsFromPaymentsForOtherFinancingActivities
|
$-4.00K | USD | 2 Qtrs |
| Other |
ProceedsFromPaymentsForOtherFinancingActivities
|
$-4.00K | USD | 2 Qtrs |
| Other |
ProceedsFromPaymentsForOtherFinancingActivities
|
$-4.00K | USD | 2 Qtrs |
| Cash used in financing activities |
NetCashProvidedByUsedInFinancingActivities
|
$-8.90M | USD | 2 Qtrs |
| Cash used in financing activities |
NetCashProvidedByUsedInFinancingActivities
|
$-8.90M | USD | 2 Qtrs |
| Cash used in financing activities |
NetCashProvidedByUsedInFinancingActivities
|
$-30.36M | USD | 2 Qtrs |
| Cash used in financing activities |
NetCashProvidedByUsedInFinancingActivities
|
$-30.36M | USD | 2 Qtrs |
| Change in cash and cash equivalents |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
$2.12M | USD | 2 Qtrs |
| Change in cash and cash equivalents |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
$2.12M | USD | 2 Qtrs |
| Change in cash and cash equivalents |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
$-9.00K | USD | 2 Qtrs |
| Change in cash and cash equivalents |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
$-9.00K | USD | 2 Qtrs |
| Cash and cash equivalents, beginning of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$2.47M | USD | Point-in-time |
| Cash and cash equivalents, beginning of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$2.47M | USD | Point-in-time |
| Cash and cash equivalents, beginning of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$349.00K | USD | Point-in-time |
| Cash and cash equivalents, beginning of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$349.00K | USD | Point-in-time |
| Cash and cash equivalents, beginning of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$110.00K | USD | Point-in-time |
| Cash and cash equivalents, beginning of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$110.00K | USD | Point-in-time |
| Cash and cash equivalents, beginning of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$119.00K | USD | Point-in-time |
| Cash and cash equivalents, beginning of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$119.00K | USD | Point-in-time |
| Cash and cash equivalents, end of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$2.47M | USD | Point-in-time |
| Cash and cash equivalents, end of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$2.47M | USD | Point-in-time |
| Cash and cash equivalents, end of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$349.00K | USD | Point-in-time |
| Cash and cash equivalents, end of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$349.00K | USD | Point-in-time |
| Cash and cash equivalents, end of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$110.00K | USD | Point-in-time |
| Cash and cash equivalents, end of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$110.00K | USD | Point-in-time |
| Cash and cash equivalents, end of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$119.00K | USD | Point-in-time |
| Cash and cash equivalents, end of period |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$119.00K | USD | Point-in-time |
| Income taxes, net |
IncomeTaxesPaid
|
$13.52M | USD | 2 Qtrs |
| Income taxes, net |
IncomeTaxesPaid
|
$13.52M | USD | 2 Qtrs |
| Income taxes, net |
IncomeTaxesPaid
|
$8.59M | USD | 2 Qtrs |
| Income taxes, net |
IncomeTaxesPaid
|
$8.59M | USD | 2 Qtrs |
| Operating lease liabilities |
OperatingLeasePayments
|
$2.48M | USD | 2 Qtrs |
| Operating lease liabilities |
OperatingLeasePayments
|
$2.48M | USD | 2 Qtrs |
| Operating lease liabilities |
OperatingLeasePayments
|
$2.35M | USD | 2 Qtrs |
| Operating lease liabilities |
OperatingLeasePayments
|
$2.35M | USD | 2 Qtrs |
| Interest, net |
InterestPaidNet
|
$1.88M | USD | 2 Qtrs |
| Interest, net |
InterestPaidNet
|
$1.88M | USD | 2 Qtrs |
| Interest, net |
InterestPaidNet
|
$1.10M | USD | 2 Qtrs |
| Interest, net |
InterestPaidNet
|
$1.10M | USD | 2 Qtrs |
| ROU assets obtained from operating leases |
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
$3.43M | USD | 2 Qtrs |
| ROU assets obtained from operating leases |
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
$3.43M | USD | 2 Qtrs |
| ROU assets obtained from operating leases |
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
$1.82M | USD | 2 Qtrs |
| ROU assets obtained from operating leases |
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
$1.82M | USD | 2 Qtrs |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$204.00K | USD | 1 Quarter |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$204.00K | USD | 1 Quarter |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$202.00K | USD | 1 Quarter |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$202.00K | USD | 1 Quarter |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$406.00K | USD | 2 Qtrs |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$406.00K | USD | 2 Qtrs |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$175.00K | USD | 2 Qtrs |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$175.00K | USD | 2 Qtrs |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$175.00K | USD | 1 Quarter |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$175.00K | USD | 1 Quarter |
| Unsettled repurchases of common stock |
StockRepurchasesIncurredButNotYetPaid
|
- | USD | 2 Qtrs |
| Unsettled repurchases of common stock |
StockRepurchasesIncurredButNotYetPaid
|
- | USD | 2 Qtrs |
| Unsettled repurchases of common stock |
StockRepurchasesIncurredButNotYetPaid
|
$400.00K | USD | 2 Qtrs |
| Unsettled repurchases of common stock |
StockRepurchasesIncurredButNotYetPaid
|
$400.00K | USD | 2 Qtrs |
| Proceeds from Life Insurance Policy |
ProceedsFromLifeInsurancePolicies
|
$1.38M | USD | 2 Qtrs |
| Proceeds from Life Insurance Policy |
ProceedsFromLifeInsurancePolicies
|
$1.38M | USD | 2 Qtrs |
| Proceeds from Life Insurance Policy |
ProceedsFromLifeInsurancePolicies
|
$2.38M | USD | 2 Qtrs |
| Proceeds from Life Insurance Policy |
ProceedsFromLifeInsurancePolicies
|
$2.38M | USD | 2 Qtrs |
Stockholders Equity
106 line items
| Line Item | Tag | Value | Unit | Period |
|---|---|---|---|---|
| Dividend (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.39 | USD | 1 Quarter |
| Dividend (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.39 | USD | 1 Quarter |
| Dividend (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.38 | USD | 1 Quarter |
| Dividend (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.38 | USD | 1 Quarter |
| Dividend (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.39 | USD | 1 Quarter |
| Dividend (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.39 | USD | 1 Quarter |
| Dividend (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.38 | USD | 1 Quarter |
| Dividend (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.38 | USD | 1 Quarter |
| Beginning of period |
StockholdersEquity
|
$138.03M | USD | Point-in-time |
| Beginning of period |
StockholdersEquity
|
$138.03M | USD | Point-in-time |
| Beginning of period |
StockholdersEquity
|
$159.08M | USD | Point-in-time |
| Beginning of period |
StockholdersEquity
|
$159.08M | USD | Point-in-time |
| Beginning of period |
StockholdersEquity
|
$134.42M | USD | Point-in-time |
| Beginning of period |
StockholdersEquity
|
$134.42M | USD | Point-in-time |
| Beginning of period |
StockholdersEquity
|
$166.62M | USD | Point-in-time |
| Beginning of period |
StockholdersEquity
|
$166.62M | USD | Point-in-time |
| Beginning of period |
StockholdersEquity
|
$164.50M | USD | Point-in-time |
| Beginning of period |
StockholdersEquity
|
$164.50M | USD | Point-in-time |
| Beginning of period |
StockholdersEquity
|
$154.62M | USD | Point-in-time |
| Beginning of period |
StockholdersEquity
|
$154.62M | USD | Point-in-time |
| Beginning of period (in shares) |
TreasuryStockCommonShares
|
54.62M | shares | Point-in-time |
| Beginning of period (in shares) |
TreasuryStockCommonShares
|
54.62M | shares | Point-in-time |
| Beginning of period (in shares) |
TreasuryStockCommonShares
|
55.28M | shares | Point-in-time |
| Beginning of period (in shares) |
TreasuryStockCommonShares
|
55.28M | shares | Point-in-time |
| Net income |
NetIncomeLoss
|
$10.99M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$10.99M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$8.14M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$8.14M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$10.45M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$10.45M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$18.59M | USD | 2 Qtrs |
| Net income |
NetIncomeLoss
|
$18.59M | USD | 2 Qtrs |
| Net income |
NetIncomeLoss
|
$14.16M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$14.16M | USD | 1 Quarter |
| Net income |
NetIncomeLoss
|
$25.14M | USD | 2 Qtrs |
| Net income |
NetIncomeLoss
|
$25.14M | USD | 2 Qtrs |
| Issuance for stock-based compensation and dividends, net of forfeitures |
SharesIssuedValueShareBasedPaymentArrangementAndDividendsAfterForfeiture
|
- | USD | 1 Quarter |
| Issuance for stock-based compensation and dividends, net of forfeitures |
SharesIssuedValueShareBasedPaymentArrangementAndDividendsAfterForfeiture
|
- | USD | 1 Quarter |
| Issuance for stock-based compensation and dividends, net of forfeitures |
SharesIssuedValueShareBasedPaymentArrangementAndDividendsAfterForfeiture
|
- | USD | 1 Quarter |
| Issuance for stock-based compensation and dividends, net of forfeitures |
SharesIssuedValueShareBasedPaymentArrangementAndDividendsAfterForfeiture
|
- | USD | 1 Quarter |
| Stock-based compensation expense |
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
$3.50M | USD | 1 Quarter |
| Stock-based compensation expense |
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
$3.50M | USD | 1 Quarter |
| Stock-based compensation expense |
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
$3.62M | USD | 1 Quarter |
| Stock-based compensation expense |
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
$3.62M | USD | 1 Quarter |
| Stock-based compensation expense |
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
$3.66M | USD | 1 Quarter |
| Stock-based compensation expense |
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
$3.66M | USD | 1 Quarter |
| Stock-based compensation expense |
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
$3.50M | USD | 1 Quarter |
| Stock-based compensation expense |
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
$3.50M | USD | 1 Quarter |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$204.00K | USD | 1 Quarter |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$204.00K | USD | 1 Quarter |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$202.00K | USD | 1 Quarter |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$202.00K | USD | 1 Quarter |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$406.00K | USD | 2 Qtrs |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$406.00K | USD | 2 Qtrs |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$175.00K | USD | 2 Qtrs |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$175.00K | USD | 2 Qtrs |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$175.00K | USD | 1 Quarter |
| Employee stock purchase plan |
StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
|
$175.00K | USD | 1 Quarter |
| Dividends |
DividendsCommonStock
|
$7.05M | USD | 1 Quarter |
| Dividends |
DividendsCommonStock
|
$7.05M | USD | 1 Quarter |
| Dividends |
DividendsCommonStock
|
$6.90M | USD | 1 Quarter |
| Dividends |
DividendsCommonStock
|
$6.90M | USD | 1 Quarter |
| Dividends |
DividendsCommonStock
|
$7.10M | USD | 1 Quarter |
| Dividends |
DividendsCommonStock
|
$7.10M | USD | 1 Quarter |
| Dividends |
DividendsCommonStock
|
$7.13M | USD | 1 Quarter |
| Dividends |
DividendsCommonStock
|
$7.13M | USD | 1 Quarter |
| Repurchases of common stock |
TreasuryStockValueAcquiredCostMethod
|
$10.78M | USD | 1 Quarter |
| Repurchases of common stock |
TreasuryStockValueAcquiredCostMethod
|
$10.78M | USD | 1 Quarter |
| Repurchases of common stock |
TreasuryStockValueAcquiredCostMethod
|
$8.64M | USD | 1 Quarter |
| Repurchases of common stock |
TreasuryStockValueAcquiredCostMethod
|
$8.64M | USD | 1 Quarter |
| Repurchases of common stock |
TreasuryStockValueAcquiredCostMethod
|
$21.51M | USD | 1 Quarter |
| Repurchases of common stock |
TreasuryStockValueAcquiredCostMethod
|
$21.51M | USD | 1 Quarter |
| Repurchases of common stock |
TreasuryStockValueAcquiredCostMethod
|
$2.14M | USD | 1 Quarter |
| Repurchases of common stock |
TreasuryStockValueAcquiredCostMethod
|
$2.14M | USD | 1 Quarter |
| Other |
StockholdersEquityOther
|
$4.00K | USD | 1 Quarter |
| Other |
StockholdersEquityOther
|
$4.00K | USD | 1 Quarter |
| Other |
StockholdersEquityOther
|
$-1.00K | USD | 1 Quarter |
| Other |
StockholdersEquityOther
|
$-1.00K | USD | 1 Quarter |
| End of period |
StockholdersEquity
|
$138.03M | USD | Point-in-time |
| End of period |
StockholdersEquity
|
$138.03M | USD | Point-in-time |
| End of period |
StockholdersEquity
|
$159.08M | USD | Point-in-time |
| End of period |
StockholdersEquity
|
$159.08M | USD | Point-in-time |
| End of period |
StockholdersEquity
|
$134.42M | USD | Point-in-time |
| End of period |
StockholdersEquity
|
$134.42M | USD | Point-in-time |
| End of period |
StockholdersEquity
|
$166.62M | USD | Point-in-time |
| End of period |
StockholdersEquity
|
$166.62M | USD | Point-in-time |
| End of period |
StockholdersEquity
|
$164.50M | USD | Point-in-time |
| End of period |
StockholdersEquity
|
$164.50M | USD | Point-in-time |
| End of period |
StockholdersEquity
|
$154.62M | USD | Point-in-time |
| End of period |
StockholdersEquity
|
$154.62M | USD | Point-in-time |
| End of period (in shares) |
TreasuryStockCommonShares
|
54.62M | shares | Point-in-time |
| End of period (in shares) |
TreasuryStockCommonShares
|
54.62M | shares | Point-in-time |
| End of period (in shares) |
TreasuryStockCommonShares
|
55.28M | shares | Point-in-time |
| End of period (in shares) |
TreasuryStockCommonShares
|
55.28M | shares | Point-in-time |
| Dividends declared per share (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.39 | USD | 1 Quarter |
| Dividends declared per share (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.39 | USD | 1 Quarter |
| Dividends declared per share (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.38 | USD | 1 Quarter |
| Dividends declared per share (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.38 | USD | 1 Quarter |
| Dividends declared per share (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.39 | USD | 1 Quarter |
| Dividends declared per share (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.39 | USD | 1 Quarter |
| Dividends declared per share (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.38 | USD | 1 Quarter |
| Dividends declared per share (in dollars per share) |
CommonStockDividendsPerShareDeclared
|
$0.38 | USD | 1 Quarter |
| Issuance for stock-based compensation and dividends, net of forfeitures |
StockIssuedDuringPeriodValueShareBasedCompensation
|
- | USD | 1 Quarter |
| Issuance for stock-based compensation and dividends, net of forfeitures |
StockIssuedDuringPeriodValueShareBasedCompensation
|
- | USD | 1 Quarter |
| Issuance for stock-based compensation and dividends, net of forfeitures |
StockIssuedDuringPeriodValueShareBasedCompensation
|
- | USD | 1 Quarter |
| Issuance for stock-based compensation and dividends, net of forfeitures |
StockIssuedDuringPeriodValueShareBasedCompensation
|
- | USD | 1 Quarter |
Data is extracted from SEC EDGAR XBRL filings. Values shown are as reported in the filing.