v3.26.1
Share-based compensation (Details) - USD ($)
$ in Millions
6 Months Ended 12 Months Ended
Jun. 30, 2026
Jun. 30, 2025
Dec. 31, 2025
Jun. 12, 2024
Jun. 11, 2020
Jun. 07, 2018
Share-Based Compensation            
Aggregate common stock reserved for issuance 7,048,080          
Share-based compensation arrangement by share based payment award percentage of fair market Person holding more then 10% voting stock 110.00%          
Intrinsic value of options outstanding $ 0.5   $ 10.0      
Intrinsic value of options unvested 0.0   $ 0.2      
Intrinsic value of options exercised $ 9.5 $ 1.3        
Tranche one            
Share-Based Compensation            
Option to purchase granted 136,652   68,490      
Vesting on First Anniversary of Grant            
Share-Based Compensation            
Options unvested 216,309          
Stock option vesting, percentage 50.00%          
Vesting on Second Anniversary of Grant            
Share-Based Compensation            
Stock option vesting, percentage 50.00%          
Options vested 50          
2018 Stock Incentive Plan            
Share-Based Compensation            
Common stock reserved for issuance           4,000,000
2020 Stock Incentive Plan            
Share-Based Compensation            
Common stock reserved for issuance         3,000,000  
2024 Stock Incentive Plan            
Share-Based Compensation            
Common stock reserved for issuance       3,000,000    
Stock Option Plan            
Share-Based Compensation            
Stock option vesting period 2 years          
Options granted under the Plans expire 10 years          
Option to purchase granted 147,495   675,939      
Stock Option Plan | Minimum            
Share-Based Compensation            
Expected lives 3 years          
Stock Option Plan | Maximum            
Share-Based Compensation            
Expected lives 10 years          
Incentive Stock Options            
Share-Based Compensation            
Options granted under the Plans expire 5 years          
Stock Appreciation Rights (SARs)            
Share-Based Compensation            
Stock option vesting period     2 years      
Option to purchase granted     67,500      
Options unvested 391,140          
Location, Statement of Income, Balance [Axis]: us-gaap:SellingGeneralAndAdministrativeExpense            
Share-Based Compensation            
Share-based compensation expense $ 0.8 $ 0.5