v3.26.1
Revenue Recognition from Contracts with Customers (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2026
Jun. 30, 2025
Jun. 30, 2026
Jun. 30, 2025
Disaggregation of Revenue [Line Items]        
Total Revenue $ 56,357 $ 49,323 $ 105,071 $ 93,624
Operating Segments        
Disaggregation of Revenue [Line Items]        
Total Revenue from Contracts with Customers 56,324 49,291 105,005 93,558
Other Regulated Revenues 245 107 313 169
Other Non-Regulated Revenues 127 120 247 240
Total Revenue 56,696 49,518 105,565 93,967
Operating Segments | Regulated Tariff Sales | Residential        
Disaggregation of Revenue [Line Items]        
Total Revenue from Contracts with Customers 28,905 26,248 53,092 49,362
Operating Segments | Regulated Tariff Sales | Commercial        
Disaggregation of Revenue [Line Items]        
Total Revenue from Contracts with Customers 8,736 7,463 15,603 14,048
Operating Segments | Regulated Tariff Sales | Industrial        
Disaggregation of Revenue [Line Items]        
Total Revenue from Contracts with Customers 4,046 3,404 7,648 6,403
Operating Segments | Regulated Tariff Sales | Fire Protection        
Disaggregation of Revenue [Line Items]        
Total Revenue from Contracts with Customers 4,159 3,998 7,991 7,720
Operating Segments | Regulated Tariff Sales | Wholesale        
Disaggregation of Revenue [Line Items]        
Total Revenue from Contracts with Customers 7,369 5,047 14,593 10,061
Operating Segments | Non-Regulated Contract Operations        
Disaggregation of Revenue [Line Items]        
Total Revenue from Contracts with Customers 3,109 3,131 6,078 5,964
Inter-segment Elimination        
Disaggregation of Revenue [Line Items]        
Total Revenue $ (339) $ (195) $ (494) $ (343)