Condensed Consolidated Statements of Changes in Redeemable Non-Controlling Interests and Stockholders' Equity - USD ($) $ in Thousands |
Total |
Class A Common Stock |
Class B Common Stock |
Common Stock
Class A Common Stock
|
Common Stock
Class B Common Stock
|
Additional Paid-in Capital |
Retained Earnings |
Accumulated Other Comprehensive Loss |
Treasury Stock |
Non-controlling Interest |
Redeemable non-controlling interests, beginning balance at Dec. 31, 2020 |
$ 38,850
|
|
|
|
|
|
|
|
|
|
Increase (Decrease) in Temporary Equity [Roll Forward] |
|
|
|
|
|
|
|
|
|
|
Contributions from non-controlling interest |
2,251
|
|
|
|
|
|
|
|
|
|
Distributions to redeemable non-controlling interests |
(828)
|
|
|
|
|
|
|
|
|
|
Accretion of tax equity financing fees |
89
|
|
|
|
|
|
|
|
|
|
Investment fund call option exercise |
(3,759)
|
|
|
|
|
|
|
|
|
|
Net income |
8,345
|
|
|
|
|
|
|
|
|
|
Redeemable non-controlling interests, ending balance at Sep. 30, 2021 |
44,948
|
|
|
|
|
|
|
|
|
|
Beginning balance (in shares) at Dec. 31, 2020 |
|
|
|
30,224,654
|
18,000,000
|
|
|
|
|
|
Treasury stock, beginning balance (in shares) at Dec. 31, 2020 |
|
|
|
|
|
|
|
|
2,101,795
|
|
Beginning balance at Dec. 31, 2020 |
492,813
|
|
|
$ 3
|
$ 2
|
$ 145,496
|
$ 368,390
|
$ (9,290)
|
$ (11,788)
|
$ 0
|
Increase (Decrease) in Stockholders' Equity [Roll Forward] |
|
|
|
|
|
|
|
|
|
|
Equity offering cost adjustment (in shares) |
|
|
|
2,875,000
|
|
|
|
|
|
|
Equity offering cost adjustment |
120,084
|
|
|
|
|
120,084
|
|
|
|
|
Exercise of stock options (in shares) |
|
|
|
444,509
|
|
|
|
|
|
|
Exercise of stock options |
4,230
|
|
|
|
|
4,230
|
|
|
|
|
Stock-based compensation expense |
4,280
|
|
|
|
|
4,280
|
|
|
|
|
Employee stock purchase plan (in shares) |
|
|
|
15,297
|
|
|
|
|
|
|
Employee stock purchase plan |
653
|
|
|
|
|
653
|
|
|
|
|
Unrealized gain from interest rate hedges, net |
2,081
|
|
|
|
|
|
|
2,081
|
|
|
Foreign currency translation adjustment |
(227)
|
|
|
|
|
|
|
(227)
|
|
|
Accretion of tax equity financing fees |
(89)
|
|
|
|
|
|
(89)
|
|
|
|
Investment fund call option exercise |
2,759
|
|
|
|
|
2,759
|
|
|
|
|
Net income |
42,252
|
|
|
|
|
|
42,252
|
|
|
|
Ending balance (in shares) at Sep. 30, 2021 |
|
|
|
33,559,460
|
18,000,000
|
|
|
|
|
|
Treasury stock, ending balance (in shares) at Sep. 30, 2021 |
|
|
|
|
|
|
|
|
2,101,795
|
|
Ending balance at Sep. 30, 2021 |
668,836
|
|
|
$ 3
|
$ 2
|
277,502
|
410,553
|
(7,436)
|
$ (11,788)
|
0
|
Redeemable non-controlling interests, beginning balance at Jun. 30, 2021 |
46,003
|
|
|
|
|
|
|
|
|
|
Increase (Decrease) in Temporary Equity [Roll Forward] |
|
|
|
|
|
|
|
|
|
|
Distributions to redeemable non-controlling interests |
(180)
|
|
|
|
|
|
|
|
|
|
Accretion of tax equity financing fees |
27
|
|
|
|
|
|
|
|
|
|
Investment fund call option exercise |
(3,759)
|
|
|
|
|
|
|
|
|
|
Net income |
2,857
|
|
|
|
|
|
|
|
|
|
Redeemable non-controlling interests, ending balance at Sep. 30, 2021 |
44,948
|
|
|
|
|
|
|
|
|
|
Beginning balance (in shares) at Jun. 30, 2021 |
|
|
|
33,382,331
|
18,000,000
|
|
|
|
|
|
Treasury stock, beginning balance (in shares) at Jun. 30, 2021 |
|
|
|
|
|
|
|
|
2,101,795
|
|
Beginning balance at Jun. 30, 2021 |
645,575
|
|
|
$ 3
|
$ 2
|
270,955
|
393,157
|
(6,754)
|
$ (11,788)
|
0
|
Increase (Decrease) in Stockholders' Equity [Roll Forward] |
|
|
|
|
|
|
|
|
|
|
Equity offering cost adjustment |
3
|
|
|
|
|
3
|
|
|
|
|
Exercise of stock options (in shares) |
|
|
|
177,129
|
|
|
|
|
|
|
Exercise of stock options |
1,619
|
|
|
|
|
1,619
|
|
|
|
|
Stock-based compensation expense |
2,166
|
|
|
|
|
2,166
|
|
|
|
|
Unrealized gain from interest rate hedges, net |
436
|
|
|
|
|
|
|
436
|
|
|
Foreign currency translation adjustment |
(1,118)
|
|
|
|
|
|
|
(1,118)
|
|
|
Accretion of tax equity financing fees |
(27)
|
|
|
|
|
|
(27)
|
|
|
|
Investment fund call option exercise |
2,759
|
|
|
|
|
2,759
|
|
|
|
|
Net income |
17,423
|
|
|
|
|
|
17,423
|
|
|
|
Ending balance (in shares) at Sep. 30, 2021 |
|
|
|
33,559,460
|
18,000,000
|
|
|
|
|
|
Treasury stock, ending balance (in shares) at Sep. 30, 2021 |
|
|
|
|
|
|
|
|
2,101,795
|
|
Ending balance at Sep. 30, 2021 |
668,836
|
|
|
$ 3
|
$ 2
|
277,502
|
410,553
|
(7,436)
|
$ (11,788)
|
0
|
Redeemable non-controlling interests, beginning balance at Dec. 31, 2021 |
46,182
|
|
|
|
|
|
|
|
|
|
Increase (Decrease) in Temporary Equity [Roll Forward] |
|
|
|
|
|
|
|
|
|
|
Contributions from non-controlling interest |
16,844
|
|
|
|
|
|
|
|
|
16,844
|
Distributions to redeemable non-controlling interests |
(863)
|
|
|
|
|
|
|
|
|
|
Accretion of tax equity financing fees |
81
|
|
|
|
|
|
|
|
|
|
Investment fund call option exercise |
(238)
|
|
|
|
|
|
|
|
|
|
Net income |
2,915
|
|
|
|
|
|
|
|
|
|
Redeemable non-controlling interests, ending balance at Sep. 30, 2022 |
$ 48,077
|
|
|
|
|
|
|
|
|
|
Beginning balance (in shares) at Dec. 31, 2021 |
|
33,716,309
|
18,000,000
|
33,716,309
|
18,000,000
|
|
|
|
|
|
Treasury stock, beginning balance (in shares) at Dec. 31, 2021 |
2,101,795
|
|
|
|
|
|
|
|
2,101,795
|
|
Beginning balance at Dec. 31, 2021 |
$ 704,264
|
|
|
$ 3
|
$ 2
|
283,982
|
438,732
|
(6,667)
|
$ (11,788)
|
0
|
Increase (Decrease) in Stockholders' Equity [Roll Forward] |
|
|
|
|
|
|
|
|
|
|
Exercise of stock options (in shares) |
|
|
|
180,888
|
|
|
|
|
|
|
Exercise of stock options |
3,482
|
|
|
|
|
3,482
|
|
|
|
|
Stock-based compensation expense |
10,837
|
|
|
|
|
10,837
|
|
|
|
|
Employee stock purchase plan (in shares) |
|
|
|
16,996
|
|
|
|
|
|
|
Employee stock purchase plan |
948
|
|
|
|
|
948
|
|
|
|
|
Unrealized gain from interest rate hedges, net |
6,033
|
|
|
|
|
|
|
6,033
|
|
|
Foreign currency translation adjustment |
(5,016)
|
|
|
|
|
|
|
(5,016)
|
|
|
Accretion of tax equity financing fees |
(81)
|
|
|
|
|
|
(81)
|
|
|
|
Investment fund call option exercise |
238
|
|
|
|
|
238
|
|
|
|
|
Net income |
$ 76,991
|
|
|
|
|
|
76,991
|
|
|
|
Ending balance (in shares) at Sep. 30, 2022 |
|
33,914,193
|
18,000,000
|
33,914,193
|
18,000,000
|
|
|
|
|
|
Treasury stock, ending balance (in shares) at Sep. 30, 2022 |
2,101,795
|
|
|
|
|
|
|
|
2,101,795
|
|
Ending balance at Sep. 30, 2022 |
$ 814,540
|
|
|
$ 3
|
$ 2
|
299,487
|
515,642
|
(5,650)
|
$ (11,788)
|
16,844
|
Redeemable non-controlling interests, beginning balance at Jun. 30, 2022 |
47,918
|
|
|
|
|
|
|
|
|
|
Increase (Decrease) in Temporary Equity [Roll Forward] |
|
|
|
|
|
|
|
|
|
|
Contributions from non-controlling interest |
1,658
|
|
|
|
|
|
|
|
|
1,658
|
Distributions to redeemable non-controlling interests |
(212)
|
|
|
|
|
|
|
|
|
|
Accretion of tax equity financing fees |
27
|
|
|
|
|
|
|
|
|
|
Net income |
344
|
|
|
|
|
|
|
|
|
|
Redeemable non-controlling interests, ending balance at Sep. 30, 2022 |
48,077
|
|
|
|
|
|
|
|
|
|
Beginning balance (in shares) at Jun. 30, 2022 |
|
|
|
33,833,893
|
18,000,000
|
|
|
|
|
|
Treasury stock, beginning balance (in shares) at Jun. 30, 2022 |
|
|
|
|
|
|
|
|
2,101,795
|
|
Beginning balance at Jun. 30, 2022 |
781,567
|
|
|
$ 3
|
$ 2
|
294,240
|
488,278
|
(4,354)
|
$ (11,788)
|
15,186
|
Increase (Decrease) in Stockholders' Equity [Roll Forward] |
|
|
|
|
|
|
|
|
|
|
Exercise of stock options (in shares) |
|
|
|
80,300
|
|
|
|
|
|
|
Exercise of stock options |
1,616
|
|
|
|
|
1,616
|
|
|
|
|
Stock-based compensation expense |
3,631
|
|
|
|
|
3,631
|
|
|
|
|
Unrealized gain from interest rate hedges, net |
1,757
|
|
|
|
|
|
|
1,757
|
|
|
Foreign currency translation adjustment |
(3,053)
|
|
|
|
|
|
|
(3,053)
|
|
|
Accretion of tax equity financing fees |
(27)
|
|
|
|
|
|
(27)
|
|
|
|
Net income |
$ 27,391
|
|
|
|
|
|
27,391
|
|
|
|
Ending balance (in shares) at Sep. 30, 2022 |
|
33,914,193
|
18,000,000
|
33,914,193
|
18,000,000
|
|
|
|
|
|
Treasury stock, ending balance (in shares) at Sep. 30, 2022 |
2,101,795
|
|
|
|
|
|
|
|
2,101,795
|
|
Ending balance at Sep. 30, 2022 |
$ 814,540
|
|
|
$ 3
|
$ 2
|
$ 299,487
|
$ 515,642
|
$ (5,650)
|
$ (11,788)
|
$ 16,844
|