Annual report pursuant to Section 13 and 15(d)

Revenue Recognition - Disaggregation (Details)

v3.24.0.1
Revenue Recognition - Disaggregation (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Revenue Recognition      
Net sales $ 5,194,694 $ 5,008,744 $ 3,486,207
Insulation and accessories      
Revenue Recognition      
Net sales 4,329,553 4,159,066 2,805,130
Glass and windows      
Revenue Recognition      
Net sales 251,001 227,318 183,808
Gutters      
Revenue Recognition      
Net sales 260,252 266,357 213,489
All other      
Revenue Recognition      
Net sales 353,888 356,003 283,780
Residential      
Revenue Recognition      
Net sales 3,350,003 3,272,001 2,597,293
Commercial and Industrial      
Revenue Recognition      
Net sales 1,844,691 1,736,743 888,914
Operating Segment | Installation      
Revenue Recognition      
Net sales 3,188,232 2,969,978 2,378,401
Operating Segment | Installation | Insulation and accessories      
Revenue Recognition      
Net sales 2,529,186 2,344,807 1,880,309
Operating Segment | Installation | Glass and windows      
Revenue Recognition      
Net sales 251,001 227,318 183,808
Operating Segment | Installation | Gutters      
Revenue Recognition      
Net sales 114,293 106,969 88,856
Operating Segment | Installation | All other      
Revenue Recognition      
Net sales 293,752 290,884 225,428
Operating Segment | Installation | Residential      
Revenue Recognition      
Net sales 2,672,152 2,503,123 1,919,336
Operating Segment | Installation | Commercial and Industrial      
Revenue Recognition      
Net sales 516,080 466,855 459,065
Operating Segment | Specialty Distribution      
Revenue Recognition      
Net sales 2,268,339 2,278,261 1,287,176
Operating Segment | Specialty Distribution | Insulation and accessories      
Revenue Recognition      
Net sales 2,028,467 2,019,108 1,074,377
Operating Segment | Specialty Distribution | Gutters      
Revenue Recognition      
Net sales 175,765 189,800 149,730
Operating Segment | Specialty Distribution | All other      
Revenue Recognition      
Net sales 64,107 69,353 63,069
Operating Segment | Specialty Distribution | Residential      
Revenue Recognition      
Net sales 897,783 967,687 825,233
Operating Segment | Specialty Distribution | Commercial and Industrial      
Revenue Recognition      
Net sales 1,370,556 1,310,574 461,943
Eliminations      
Revenue Recognition      
Net sales (261,877) (239,495) (179,370)
Eliminations | Insulation and accessories      
Revenue Recognition      
Net sales (228,100) (204,849) (149,556)
Eliminations | Gutters      
Revenue Recognition      
Net sales (29,806) (30,412) (25,097)
Eliminations | All other      
Revenue Recognition      
Net sales (3,971) (4,234) (4,717)
Eliminations | Residential      
Revenue Recognition      
Net sales (219,932) (198,809) (147,276)
Eliminations | Commercial and Industrial      
Revenue Recognition      
Net sales $ (41,945) $ (40,686) $ (32,094)