XML 18 R11.htm IDEA: XBRL DOCUMENT
v3.25.3

Earnings per Share | 9 Months Ended
--- | ---
Sep. 30, 2025
Earnings Per Share [Abstract] |
Earnings per Share | NOTE 2 – Earnings per Share Earnings per share (“EPS”) is calculated by dividing net income attributable to common stockholders by the weighted-average number of shares of Common Stock outstanding during the period. Diluted EPS is calculated similarly but includes potential dilution from the exercise of stock options and stock awards, except when the effect would be anti-dilutive. No dividends were paid on our Common Stock in any of the periods presented in this report. The table below sets forth the reconciliation between net income and the weighted average shares outstanding used for calculating basic and diluted EPS:
| Three Months Ended |  |  | Nine Months Ended |
| September 30, |  |  | September 30, |
| 2025 |  |  | 2024 |  |  | 2025 |  |  | 2024 |
Earnings (numerator) |  |  |  |  |  |  |  |  |  |  |
Net income attributable to common stockholders | $ | 14,278 |  |  | $ | 13,745 |  |  | $ | 55,939 |  |  | $ | 35,783 |
Shares (denominator) |  |  |  |  |  |  |  |  |  |  |
Weighted average common shares outstanding (basic) |  | 46,383 |  |  |  | 46,331 |  |  |  | 46,384 |  |  |  | 46,166 |
Dilutive effect of stock options and stock awards outstanding |  | 54 |  |  |  | 111 |  |  |  | 70 |  |  |  | 212 |
Adjusted weighted average common shares outstanding (diluted) |  | 46,437 |  |  |  | 46,442 |  |  |  | 46,454 |  |  |  | 46,378 |
Earnings per share attributable to common stockholders |  |  |  |  |  |  |  |  |  |  |
Basic | $ | 0.31 |  |  | $ | 0.30 |  |  | $ | 1.21 |  |  | $ | 0.78 |
Diluted | $ | 0.31 |  |  | $ | 0.30 |  |  | $ | 1.20 |  |  | $ | 0.77 |
Stock options and stock awards excluded from EPS calculation because the effect would be anti-dilutive |  | 273 |  |  |  | 125 |  |  |  | 674 |  |  |  | 241 |

X
- References No definition available. + Details
Name: | us-gaap_EarningsPerShareAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The entire disclosure for earnings per share. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -Name Accounting Standards Codification -Publisher FASB -URI https://asc.fasb.org/260/tableOfContent Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-2 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-3 + Details
Name: | us-gaap_EarningsPerShareTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration