v3.26.3
Net Income per Share - Summary of Antidilutive Securities Excluded From Computation Diluted Weighted Average Shares Outstanding (Details) - shares
3 Months Ended 9 Months Ended
Sep. 30, 2026
Sep. 30, 2025
Sep. 30, 2026
Sep. 30, 2025
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Antidilutive securities excluded from computation of earnings per share amount (in shares) 10,688,544 10,547,049 10,723,551 10,886,510
Options to purchase common stock        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Antidilutive securities excluded from computation of earnings per share amount (in shares) 168,600 5,130 203,607 991
Common shares issued in conjunction with acquisitions        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Antidilutive securities excluded from computation of earnings per share amount (in shares) 0 36,702 0 46,236
Shares to be issued under ESPP        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Antidilutive securities excluded from computation of earnings per share amount (in shares) 90,053 75,326 90,053 75,326
Convertible senior notes        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Antidilutive securities excluded from computation of earnings per share amount (in shares) 10,429,891 10,429,891 10,429,891 10,763,957