Segment Information - Summary of Segment Information Reconciled to Consolidated Statements of Income (Parenthetical) (Detail) - USD ($) $ in Thousands |
3 Months Ended | 6 Months Ended | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Jun. 30, 2026 |
Jun. 30, 2025 |
Jun. 30, 2026 |
Jun. 30, 2025 |
|||||||||||||
| Segment Reporting Information [Line Items] | ||||||||||||||||
| Gross premiums earned | $ 320,824 | [1] | $ 302,628 | [2] | $ 647,030 | [3] | $ 603,011 | [4] | ||||||||
| Insurance Operation [Member] | ||||||||||||||||
| Segment Reporting Information [Line Items] | ||||||||||||||||
| Gross premiums earned | $ 1,280 | $ 3,376 | $ 2,479 | |||||||||||||
| Reciprocal Exchange Operation [Member] | ||||||||||||||||
| Segment Reporting Information [Line Items] | ||||||||||||||||
| Gross premiums earned | $ 1,974 | |||||||||||||||
| ||||||||||||||||