| Share-Based Payment Arrangement, Option, Activity [Table Text Block] |
| | Shares | | | Weighted Average Exercise Price | | | Weighted Average Remaining Contractual Term in Years | | | Intrinsic Value | |
Options outstanding at January 1, 2025 | | | 131,847 | | | $ | 22.58 | | | | | | | | | |
Options exercised | | | (45,505 | ) | | | 22.64 | | | | | | | | | |
Options cancelled | | | (3,200 | ) | | | 22.19 | | | | | | | | | |
Options outstanding at December 31, 2025 | | | 83,142 | | | $ | 22.56 | | | | | | | | | |
Options cancelled | | | (2,400 | ) | | $ | 24.40 | | | | | | | | | |
Options exercised | | | (50,450 | ) | | | 23.13 | | | | | | | | | |
Options outstanding at September 30, 2026 | | | 30,292 | | | $ | 21.45 | | | | 1.1 | | | $ | 1,205,925 | |
Options exercisable at September 30, 2026 | | | 30,292 | | | $ | 21.45 | | | | 1.1 | | | $ | 1,205,925 | |
| | Shares | | | Weighted Average Exercise Price | | | Weighted Average Remaining Contractual Term in Years | | | Intrinsic Value | |
Options outstanding at January 1, 2025 | | | 210,200 | | | $ | 32.55 | | | | | | | | | |
Options granted | | | 30,803 | | | | 31.09 | | | | | | | | | |
Options cancelled | | | (21,980 | ) | | | 32.41 | | | | | | | | | |
Options exercised | | | (5,100 | ) | | | 31.36 | | | | | | | | | |
Options outstanding at December 31, 2025 | | | 213,923 | | | $ | 32.38 | | | | | | | | | |
Options granted | | | 80,500 | | | | 50.30 | | | | | | | | | |
Options cancelled | | | (11,160 | ) | | | 43.67 | | | | | | | | | |
Options exercised | | | (15,577 | ) | | | 31.70 | | | | | | | | | |
Options outstanding at September 30, 2026 | | | 267,686 | | | $ | 37.34 | | | | 7.1 | | | $ | 6,403,476 | |
Options exercisable at September 30, 2026 | | | 126,786 | | | $ | 31.84 | | | | 6.1 | | | $ | 3,730,050 | |
Options expected to vest after September 30, 2026 | | | 140,900 | | | $ | 42.29 | | | | 8.1 | | | $ | 2,369,725 | |
|
| Share-Based Payment Arrangement, Cost by Plan [Table Text Block] |
| | 2026 | | | 2025 | |
Fair value of options vested | | $ | 159,000 | | | $ | 191,000 | |
Intrinsic value of options exercised | | $ | 131,000 | | | $ | 260,000 | |
Cash received from option exercises | | $ | 81,000 | | | $ | 353,000 | |
Tax benefit from option exercises | | $ | 8,000 | | | $ | 24,000 | |
Compensation cost | | $ | 138,000 | | | $ | 93,000 | |
Tax benefit associated with compensation cost | | $ | 9,000 | | | $ | 5,000 | |
| | 2026 | | | 2025 | |
Fair value of options vested | | $ | 332,000 | | | $ | 384,000 | |
Intrinsic value of options exercised | | $ | 1,656,000 | | | $ | 874,000 | |
Cash received from option exercises | | $ | 1,569,000 | | | $ | 936,000 | |
Tax benefit from option exercises | | $ | 149,000 | | | $ | 43,000 | |
Compensation cost | | $ | 389,000 | | | $ | 256,000 | |
Tax benefit associated with compensation cost | | $ | 23,000 | | | $ | 14,000 | |
|