Revenue 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 |
|
| Contract Assets | ||||
| Beginning of period balance | $ 18,297 | $ 13,147 | $ 17,947 | $ 12,088 |
| Additions to contract assets | 2,924 | 2,589 | 6,751 | 5,773 |
| Amortization or satisfaction of outstanding performance obligation of capitalized contract assets | (3,436) | (2,262) | (6,913) | (4,387) |
| End of period balance | 17,785 | 13,474 | 17,785 | 13,474 |
| Contract Liabilities | ||||
| Beginning of period balance | 31,843 | 27,524 | 29,884 | 26,559 |
| Revenue deferred in period | 9,883 | 7,445 | 21,292 | 15,711 |
| Revenue recognized from amounts included in contract liabilities | (9,912) | (7,728) | (19,362) | (15,029) |
| End of period balance | $ 31,814 | $ 27,241 | $ 31,814 | $ 27,241 |
| X | ||||||||||
- Definition Change In Contract With Customer, Asset [Roll Forward] No definition available.
|
| X | ||||||||||
- Definition Change In Contract With Customer, Liability [Roll Forward] No definition available.
|
| X | ||||||||||
- Definition Contract With Customer, Liability, Revenue Deferred During Period No definition available.
|
| X | ||||||||||
- Definition Amount of amortization expense for asset recognized from cost incurred to obtain or fulfill contract with customer. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Amount of increase from purchase of right to consideration in exchange for good or service transferred to customer when right is conditioned on passage of time. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|