<SEC-DOCUMENT>0001831651-26-000026.txt : 20260226
<SEC-HEADER>0001831651-26-000026.hdr.sgml : 20260226
<ACCEPTANCE-DATETIME>20260225193007
ACCESSION NUMBER:		0001831651-26-000026
CONFORMED SUBMISSION TYPE:	S-8
PUBLIC DOCUMENT COUNT:		16
REFERENCES 429:			333-252579
FILED AS OF DATE:		20260226
DATE AS OF CHANGE:		20260225
EFFECTIVENESS DATE:		20260226

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			Shoals Technologies Group, Inc.
		CENTRAL INDEX KEY:			0001831651
		STANDARD INDUSTRIAL CLASSIFICATION:	SEMICONDUCTORS & RELATED DEVICES [3674]
		ORGANIZATION NAME:           	04 Manufacturing
		EIN:				000000000
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		S-8
		SEC ACT:		1933 Act
		SEC FILE NUMBER:	333-293766
		FILM NUMBER:		26681025

	BUSINESS ADDRESS:	
		STREET 1:		1500 SHOALS WAY
		CITY:			PORTLAND
		STATE:			TN
		BUSINESS PHONE:		615-451-1400

	MAIL ADDRESS:	
		STREET 1:		1500 SHOALS WAY
		CITY:			PORTLAND
		STATE:			TN
</SEC-HEADER>
<DOCUMENT>
<TYPE>S-8
<SEQUENCE>1
<FILENAME>shlsforms-8february2026200.htm
<DESCRIPTION>S-8
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2026 Workiva -->
<title>Document</title></head><body><div id="i1b0ab788c0934af2a8a399222e6a8b35_1"></div><div style="min-height:0pt;width:100%"><div style="-sec-extract:summary;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:700;line-height:120%">As filed with the Securities and Exchange Commission on February 25, 2026</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:700;line-height:120%">&#160;&#160;&#160;&#160;File No. 333-________</font></div></div><div style="text-align:center"><font><br></font></div><div style="text-align:center"><font><br></font></div><div style="-sec-extract:summary;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">________________________________________________<br></font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">UNITED STATES</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">SECURITIES AND EXCHANGE COMMISSION</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Washington, D.C. 20549</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:120%">       _______________________________________&#160;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">&#160;&#160;&#160;&#160;</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">FORM S-8</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">REGISTRATION STATEMENT UNDER THE SECURITIES ACT OF 1933</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">_______________________________________&#160;</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">SHOALS TECHNOLOGIES GROUP, INC.</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Exact name of registrant as specified in its charter)</font></div><div style="margin-top:0.05pt;text-align:center"><font><br></font></div><div style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.089%"><tr><td style="width:1.0%"></td><td style="width:51.482%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:46.318%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:0.05pt;padding-left:1.38pt;padding-right:1.38pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Delaware</font></div><div style="margin-top:0.05pt;padding-left:1.38pt;padding-right:1.38pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(State or other jurisdiction of incorporation or organization)</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:0.05pt;padding-left:6.89pt;padding-right:6.89pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">85-3774438 </font></div><div style="margin-top:0.05pt;padding-left:6.89pt;padding-right:6.89pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(I.R.S Employer Identification No.)</font></div></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"><div style="margin-top:0.05pt;padding-left:6.89pt;padding-right:6.89pt;text-align:center"><font><br></font></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="padding-left:2.77pt;padding-right:2.77pt;text-align:center"><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">1500 Shoals Way</font></div><div style="padding-left:2.77pt;padding-right:2.77pt;text-align:center"><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Portland, Tennessee</font></div><div style="padding-left:2.77pt;padding-right:2.77pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Address of Principal Executive Offices)</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="padding-left:2.77pt;padding-right:2.77pt;text-align:center"><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">37148</font></div><div style="padding-left:2.77pt;padding-right:2.77pt;text-align:center"><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Zip Code)</font></div></td></tr></table></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Shoals Technologies Group, Inc. </font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">2021 Long-Term Incentive Plan </font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Full title of the plan)</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">______________________</font></div><div style="margin-top:0.05pt;text-align:center"><font><br></font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Bobbie L. King, Jr.</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Chief Legal Officer and Corporate Secretary </font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Shoals Technologies Group, Inc.</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">1500 Shoals Way</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Portland, TN 37148</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Tel&#58; (615) 451-1400  </font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Name, address, and telephone number, including area code, of agent for service)</font></div><div style="margin-top:0.05pt;text-align:center"><font><br></font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">With a copy of all communications to&#58;</font></div><div style="margin-top:0.05pt;text-align:center"><font><br></font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Michael Kessler</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Kerry T. Wenzel</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Alston&#160;&#38; Bird LLP</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">90 Park Avenue</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">15</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:7.15pt;font-weight:700;line-height:120%;position:relative;top:-3.85pt;vertical-align:baseline">th</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%"> Floor</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">New York, NY 10016</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Tel&#58; (212)&#160;210-9400</font></div><div><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">______________________</font></div><div style="margin-bottom:12pt;margin-top:6pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company or an emerging growth company. See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company&#8221; and &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act.</font></div><div style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.238%"><tr><td style="width:1.0%"></td><td style="width:32.181%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.618%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:32.181%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.620%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.77pt;padding-right:2.77pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Large accelerated filer</font></div></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%">&#9744;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.77pt;padding-right:2.77pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Accelerated filer</font></div></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%">&#9746;</font></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.77pt;padding-right:2.77pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Non-accelerated filer</font></div></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%">&#9744;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.77pt;padding-right:2.77pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Smaller reporting company</font></div></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%">&#9744;</font></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.77pt;padding-right:2.77pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Emerging growth company</font></div></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%">&#9744;</font></div></td></tr></table></div><div style="margin-bottom:12pt;margin-top:6pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 7(a)(2)(B) of the Securities Act.&#160;&#160;&#160;&#160;</font><font style="font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%"></font></div><div style="margin-bottom:10pt"><font><br></font></div><div style="height:18pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:0pt;width:100%"><div><font><br></font></div></div><div style="margin-top:0.05pt;text-align:center"><font><br></font></div><div style="margin-top:0.05pt;text-align:center"><font><br></font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">EXPLANATORY NOTE</font></div><div style="margin-top:0.05pt;text-align:center"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Shoals Technologies Group, Inc. (the &#8220;Company&#8221; or the &#8220;Registrant&#8221;) has filed this Registration Statement on Form S-8 (this &#8220;Registration Statement&#8221;) with the Securities and Exchange Commission (the &#8220;Commission&#8221;) under the Securities Act of 1933, as amended (the &#8220;Securities Act&#8221;), to register (i) 7,208,912 shares of the Company&#8217;s Class A common stock, par value $0.00001 per share (&#8220;Common Stock&#8221;), that may be issued under the Shoals Technologies Group, Inc. 2021 Long-Term Incentive Plan (the &#8220;Plan&#8221;) as a result of the annual evergreen increase on January 1, 2026 under the Plan&#59; and (ii) such additional shares that may become issuable in accordance with the adjustment and anti-dilution provisions of the Plan. Shares available for issuance under the Plan were previously registered on a Registration Statement on Form S-8 filed with the Securities and Exchange Commission (the &#8220;SEC&#8221;) on January 29, 2021 (Registration No. 333-252579).</font></div><div style="margin-top:0.05pt;text-align:center"><font><br></font></div><div style="margin-bottom:10pt"><font><br></font></div><div style="height:18pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:0pt;width:100%"><div><font><br></font></div></div><div style="margin-top:0.05pt;text-align:center"><font><br></font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">PART I</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">INFORMATION REQUIRED IN THE SECTION 10(a) PROSPECTUS</font></div><div style="margin-top:0.05pt;text-align:center"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Items 1 and 2. Plan Information&#59; Registrant Information and Employee Plan Annual Information</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">.</font></div><div style="margin-top:0.05pt;text-align:center"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">(a)&#160;&#160;&#160;&#160;The documents containing the information specified in Part I of Form S-8 will be delivered to participants in the Plan as specified by Rule 428(b)(1) under the Securities Act of 1933, as amended (the &#8220;Securities Act&#8221;). In accordance with the instructions of Part I of Form&#160;S-8,&#160;such documents are not being filed with the SEC either as part of this Registration Statement or as prospectuses or prospectus supplements pursuant to Rule 424 of the Securities Act.&#160;These documents and the documents incorporated by reference in this Registration Statement pursuant to Item 3 of Part II of Form S-8, taken together, constitute a prospectus that meets the requirements of Section 10(a) of the Securities Act.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">(b)&#160;&#160;&#160;&#160;Upon written or oral request, we will provide, without charge, the documents incorporated by reference in Item 3 of Part II of this Registration Statement. The documents are incorporated by reference in the Section 10(a) prospectus. We will also provide, without charge, upon written or oral request, other documents required to be delivered to participants pursuant to Rule 428(b). Requests for the above-mentioned information should be directed to the Chief Legal Officer and Corporate Secretary at the address and telephone number on the cover of this Registration Statement.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">PART II</font></div><div style="margin-top:0.05pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">INFORMATION REQUIRED IN THE REGISTRATION STATEMENT</font></div><div style="margin-top:0.05pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Item 3.</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Incorporation of Documents by Reference.</font></div><div><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">The SEC allows us to &#8220;incorporate by reference&#8221; into this Registration Statement information we file with the SEC in other documents. This means that we can disclose important information to you by referring to another document we have filed with the SEC. The information relating to us contained in this Registration Statement should be read together with the information in the documents incorporated by reference.</font></div><div style="margin-top:12pt;text-align:justify;text-indent:36pt"><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">We incorporate by reference, as of their respective dates of filing, the documents listed below (excluding any portions of such documents that have been &#8220;furnished&#8221; but not &#8220;filed&#8221; for purposes of the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;))&#58;</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:12pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#8226;</font><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;padding-left:14.15pt">our Annual Report on Form 10-K for the fiscal year ended December 31, 2025, filed with the SEC on February 24, 2026&#59;</font></div><div style="margin-top:12pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#8226;</font><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;padding-left:14.15pt">the description of registered securities in Exhibit 4.1 of our Annual Report on Form 10-K for the year ended December 31, 2024, filed with the SEC on February 25, 2025, including any amendment or report filed with the SEC for the purpose of updating this description&#59; and</font></div><div style="margin-top:12pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#8226;</font><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;padding-left:14.15pt">all documents filed by us with the SEC pursuant to Sections 13(a) or 15(d) of the Exchange Act prior to the filing of a post-effective amendment to this Registration Statement that indicates that all securities offered have been sold or that deregisters all securities that remain unsold.</font></div><div style="padding-left:72pt;text-align:justify;text-indent:-33.6pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Any statement contained in a document incorporated or deemed incorporated herein by reference shall be deemed to be modified or superseded for the purpose of this Registration Statement to the extent that a statement contained herein or in any subsequently filed document which also is, or is deemed to be, incorporated herein by reference modifies or supersedes such statement. Any such information so modified or superseded shall not be deemed, except as so modified or superseded, to constitute part of this Registration Statement.</font></div><div style="margin-top:0.05pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Item 4.&#160;&#160;&#160;&#160;Description of Securities.</font></div><div style="margin-top:0.05pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;Not applicable.</font></div><div style="margin-top:0.05pt;text-align:justify;text-indent:36pt"><font><br></font></div><div style="margin-top:0.05pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Item 5.&#160;&#160;&#160;&#160;Interests of Named Experts and Counsel.</font></div><div style="margin-top:0.05pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="height:18pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:0pt;width:100%"><div><font><br></font></div></div><div style="margin-top:0.05pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Not applicable.</font></div><div style="margin-top:0.05pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Item 6.&#160;&#160;&#160;&#160;Indemnification of Directors and Officers.</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Section 145 of the General Corporation Law of the State of Delaware, or DGCL, provides as follows&#58;</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">A corporation shall have power to indemnify any person who was or is a party or is threatened to be made a party to any threatened, pending or completed action, suit or proceeding, whether civil, criminal, administrative or investigative (other than an action by or in the right of the corporation) by reason of the fact that the person is or was a director, officer, employee or agent of the corporation, or is or was serving at the request of the corporation as a director, officer, employee or agent of another corporation, partnership, joint venture, trust or other enterprise, against expenses (including attorneys&#8217; fees), judgments, fines and amounts paid in settlement actually and reasonably incurred by the person in connection with such action, suit or proceeding if the person acted in good faith and in a manner the person reasonably believed to be in or not opposed to the best interests of the corporation, and, with respect to any criminal action or proceeding, had no reasonable cause to believe the person&#8217;s conduct was unlawful. The termination of any action, suit or proceeding by judgment, order, settlement, conviction, or upon a plea of nolo contendere or its equivalent, shall not, of itself, create a presumption that the person did not act in good faith and in a manner which the person reasonably believed to be in or not opposed to the best interests of the corporation, and, with respect to any criminal action or proceeding, had reasonable cause to believe that the person&#8217;s conduct was unlawful.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">A corporation shall have power to indemnify any person who was or is a party or is threatened to be made a party to any threatened, pending or completed action or suit by or in the right of the corporation to procure a judgment in its favor by reason of the fact that the person is or was a director, officer, employee or agent of the corporation, or is or was serving at the request of the corporation as a director, officer, employee or agent of another corporation, partnership, joint venture, trust or other enterprise against expenses (including attorneys&#8217; fees) actually and reasonably incurred by the person in connection with the defense or settlement of such action or suit if the person acted in good faith and in a manner the person reasonably believed to be in or not opposed to the best interests of the corporation and except that no indemnification shall be made in respect of any claim, issue or matter as to which such person shall have been adjudged to be liable to the corporation unless and only to the extent that the Court of Chancery or the court in which such action or suit was brought shall determine upon application that, despite the adjudication of liability but in view of all the circumstances of the case, such person is fairly and reasonably entitled to indemnity for such expenses which the Court of Chancery or such other court shall deem proper.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">As permitted by the DGCL, we have included in our certificate of incorporation a provision to eliminate the personal liability of our directors and officers for monetary damages for breach of their fiduciary duties as directors or officers, subject to certain exceptions. In addition, our bylaws provide that we are required to indemnify our officers and directors under certain circumstances, including those circumstances in which indemnification would otherwise be discretionary, and we are required to advance expenses to our officers and directors as incurred in connection with proceedings against them for which they may be indemnified.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">We have entered into indemnification agreements with our directors and officers. These agreements provide broader indemnity rights than those provided under the DGCL, and our certificate of incorporation and bylaws. The indemnification agreements are not intended to deny or otherwise limit third-party or derivative suits against us or our directors or officers, but to the extent a director or officer were entitled to indemnity or contribution under the indemnification agreement, the financial burden of a third-party suit would be borne by us, and we would not benefit from derivative recoveries against the director or officer. Such recoveries would accrue to our benefit but would be offset by our obligations to the director or officer under the indemnification agreement.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">We maintain directors&#8217; and officers&#8217; liability insurance for the benefit of our directors and officers.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> </font><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">The policy insures our directors and officers against unindemnified losses arising from certain wrongful acts in their capacities as directors and officers and reimburses us for those losses for which we have lawfully indemnified the directors and officers. The policy contains various exclusions that are normal and customary for policies of this type.</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Item 7.&#160;&#160;&#160;&#160;Exemption From Registration Claimed.&#160;</font></div><div style="height:18pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:0pt;width:100%"><div><font><br></font></div></div><div style="margin-top:0.05pt;text-indent:36pt"><font><br></font></div><div style="margin-top:0.05pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Not applicable.</font></div><div style="margin-top:0.05pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Item 8.&#160;&#160;&#160;&#160;Exhibits.</font></div><div style="margin-top:0.05pt"><font><br></font></div><div style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:12.739%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:85.061%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 2.38pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:10pt;padding-left:1.38pt;padding-right:1.38pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:133%;text-decoration:underline">Exhibit Number</font></div></td><td colspan="3" style="padding:2px 1pt 2px 3.77pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt;padding-left:2.77pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:133%;text-decoration:underline">Description</font></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">3.1</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:0.05pt;padding-left:2.77pt;padding-right:2.77pt;text-align:justify"><font style="color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="https://www.sec.gov/Archives/edgar/data/1831651/000119312521022637/d78730dex31.htm" style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline">Amended and Restated Certificate of Incorporation of Shoals Technologies Group, Inc., dated January 28, 2021, which is incorporated by reference to Exhibit 3.1 of the Company&#8217;s Current Report on Form 8-K, filed with the Commission on January 29, 2021.</a></font></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">3.2</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt;text-align:justify"><font style="color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="https://www.sec.gov/Archives/edgar/data/1831651/000183165124000098/exhibit32certificateofamen.htm" style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline">Certificate of Amendment to the Amended and Restated Certificate of Incorporation of Shoals Technologies Group, Inc., dated January 28, 2021, which is incorporated by reference to Exhibit 3.2 of the Company&#8217;s Quarterly Report on Form 10-Q for the period ended June 30, 2024, filed with the Commission on August 6, 2024.</a></font></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">3.3</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt;text-align:justify"><font style="color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="https://www.sec.gov/Archives/edgar/data/1831651/000183165125000019/exhibit33shoalstechnologie.htm" style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline">Second Amended and Restated Bylaws of Shoals Technologies Group, Inc. dated February 20, 2025, which is incorporated by reference to Exhibit 3.3 of the Company&#8217;s Annual Report on Form 10-K for the fiscal year ended December 31, 2024, filed with the Commission on February 25, 2025.</a></font></div></td></tr><tr><td colspan="3" style="padding:2px 2.38pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-left:1.38pt;padding-right:1.38pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">5.1*</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-top:0.05pt;padding-left:2.77pt;padding-right:2.77pt;text-align:justify"><font style="color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="alstonbirdllpletter.htm" style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline">Opinion of Alston &#38; Bird LLP.</a></font><font style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.15pt;font-weight:400;line-height:120%;position:relative;text-decoration:underline;top:-3.85pt;vertical-align:baseline"><a href="alstonbirdllpletter.htm" style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:7.15pt;font-weight:400;line-height:120%;position:relative;text-decoration:underline;top:-3.85pt;vertical-align:baseline"> </a></font></div></td></tr><tr><td colspan="3" style="padding:2px 2.38pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-left:1.38pt;padding-right:1.38pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">23.1*</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt;text-align:justify"><font style="color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="eyconsent.htm" style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline">Consent of Ernst &#38; Young LLP</a></font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">. </font></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">23.2*</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt;text-align:justify"><font style="color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="bdoconsent.htm" style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline">Consent of BDO USA, P.C.</a></font></div></td></tr><tr><td colspan="3" style="padding:2px 2.38pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-left:1.38pt;padding-right:1.38pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">23.3*</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt;text-align:justify"><font style="color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="alstonbirdllpletter.htm" style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline">Consent of Alston &#38; Bird LLP (included in Exhibit 5.1).</a></font></div></td></tr><tr><td colspan="3" style="padding:2px 2.38pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-left:1.38pt;padding-right:1.38pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">24.1*</font></div></td><td colspan="3" style="padding:2px 3.77pt 2px 1pt;text-align:justify;vertical-align:top"><div style="margin-bottom:10pt;padding-right:2.77pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">Power of Attorney (included on signature page).</font></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">99.1</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt;text-align:justify"><font style="color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="https://www.sec.gov/Archives/edgar/data/1831651/000119312521022796/d115799dex101.htm" style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline">Shoals Technologies Group, Inc. 2021 Long-Term Incentive Plan, which incorporated by reference to Exhibit 10.1 of the Company&#8217;s Form S-8, filed with the Commission on January 29, 2021. </a></font></div></td></tr><tr><td colspan="3" style="padding:2px 2.38pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-left:1.38pt;padding-right:1.38pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">107*</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:10pt;padding-left:2.77pt;text-align:justify"><font style="color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="exfilingfees.htm" style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline">Calculation of Filing Fee Table.</a></font></div></td></tr></table></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">* Filed herewith.</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">Item 9.&#160;&#160;&#160;&#160;Undertakings.</font></div><div style="margin-top:0.05pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt;padding-left:54pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(a)</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;padding-left:6.91pt">The undersigned Registrant hereby undertakes&#58;</font></div><div style="margin-top:0.05pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt;padding-left:72pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">(1)&#160;&#160;&#160;&#160;To file, during any period in which offers or sales are being made, a post-effective amendment to this Registration Statement&#58;</font></div><div style="margin-top:0.05pt;padding-left:72pt;text-align:justify;text-indent:-72pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt;padding-left:108pt;text-align:justify;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(i)</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;padding-left:26.57pt">To include any prospectus required by Section 10(a)(3) of the Securities Act&#59;</font></div><div style="margin-top:0.05pt;padding-left:72pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt;padding-left:108pt;text-align:justify;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">(ii)&#160;&#160;&#160;&#160;To reflect in the prospectus any facts or events arising after the effective date of this Registration Statement (or the most recent post-effective amendment thereof) which, individually or in the aggregate, represent a fundamental change in the information set forth in this Registration Statement.&#160;Notwithstanding the foregoing, any increase or decrease in volume of securities offered (if the total dollar value of securities offered would not exceed that which was registered) and any deviation from the low or high end of the estimated maximum offering range may be reflected in the form of prospectus filed with the SEC pursuant to Rule 424(b) if, in the aggregate, the changes in volume and price represent no more than 20 percent change in the maximum aggregate offering price set forth in the &#8220;Calculation of Registration Fee&#8221; in the effective Registration Statement&#59; and</font></div><div style="margin-top:0.05pt;padding-left:108pt;text-align:justify;text-indent:-36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">(iii) &#160;&#160;&#160;&#160;To include any material information with respect to the plan of distribution not previously disclosed in the Registration Statement or any material change to such information in the Registration Statement&#59;</font></div><div style="margin-top:0.05pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="height:18pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:0pt;width:100%"><div><font><br></font></div></div><div style="margin-top:0.05pt;padding-left:36pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-style:italic;font-weight:400;line-height:120%">provided, however,</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%"> that paragraphs (a)(1)(i) and (a)(1)(ii) do not apply if this Registration Statement is on Form S-8, and information required to be included in a post-effective amendment by those paragraphs is contained in reports filed with or furnished to the SEC by the registrant pursuant to Section 13 or 15(d) of the Exchange Act that are incorporated by reference in this Registration Statement&#59;</font></div><div style="margin-top:0.05pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt;padding-left:72pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">(2)&#160;&#160;&#160;&#160;That, for the purpose of determining any liability under the Securities Act, each such post-effective amendment shall be deemed to be a new registration statement relating to the securities offered therein, and the offering of such securities at that time shall be deemed to be the initial </font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-style:italic;font-weight:400;line-height:120%">bona fide</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%"> offering thereof&#59; and</font></div><div style="margin-top:0.05pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt;padding-left:72pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">(3)&#160;&#160;&#160;&#160;To remove from registration by means of a post-effective amendment any of the securities being registered which remain unsold at the termination of the offering.</font></div><div style="margin-top:0.05pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt;padding-left:54pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(b)</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;padding-left:6.34pt">The undersigned Registrant hereby undertakes that, for purposes of determining any liability under the Securities Act, each filing of the Registrant&#8217;s annual report pursuant to Section 13(a) or 15(d) of the Exchange Act that is incorporated by reference in this Registration Statement shall be deemed to be a new registration statement relating to the securities offered therein, and the offering of such securities at that time shall be deemed to be the initial </font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-style:italic;font-weight:400;line-height:120%">bona fide</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%"> offering thereof.</font></div><div style="margin-top:0.05pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:0.05pt;padding-left:54pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(c)</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;padding-left:6.91pt">Insofar as indemnification for liabilities arising under the Securities Act may be permitted to directors, officers and controlling persons of the Registrant pursuant to the foregoing provisions, or otherwise, the Registrant has been advised that in the opinion of the SEC, such indemnification is against public policy as expressed in the Securities Act and is, therefore, unenforceable.&#160;In the event that a claim for indemnification against such liabilities (other than the payment by the Registrant of expenses incurred or paid by a director, officer or controlling person of the registrant in the successful defense of any action, suit or proceeding) is asserted by such director, officer or controlling person in connection with the securities being registered, the Registrant will, unless in the opinion of its counsel the matter has been settled by controlling precedent, submit to a court of appropriate jurisdiction the question whether such indemnification by it is against public policy as expressed in the Securities Act and will be governed by the final adjudication of such issue.</font></div><div style="height:18pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><div id="i1b0ab788c0934af2a8a399222e6a8b35_4"></div><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div><font><br></font></div></div><div style="margin-top:0.05pt;text-align:justify"><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">SIGNATURES</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Pursuant to the requirements of the Securities Act, the registrant certifies that it has reasonable grounds to believe that it meets all of the requirements for filing on Form S-8 and has duly caused this registration statement to be signed on its behalf by the undersigned, thereunto duly authorized, in the City of Portland, State of Tennessee, on February 25, 2026.</font></div><div><font><br></font></div><div style="padding-left:144pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%">SHOALS TECHNOLOGIES GROUP, INC.</font></div><div style="padding-left:144pt;text-indent:36pt"><font><br></font></div><div style="padding-left:144pt"><font><br></font></div><div style="padding-left:144pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">By&#58; &#160;&#160;&#160;&#160;</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%;text-decoration:underline">&#8239;&#47;s&#47; Bobbie L. King, Jr.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</font></div><div style="padding-left:144pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Name&#58;&#160;&#160;&#160;&#160;Bobbie L. King, Jr.</font></div><div style="padding-left:216pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Title&#58;&#160;&#160;&#160;&#160;Chief Legal Officer and Corporate Secretary </font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-bottom:10pt;text-align:center"><font><br></font></div><div style="margin-bottom:12pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:133%">POWER OF ATTORNEY</font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">KNOW ALL BY THESE PRESENTS,</font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:120%"> </font><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">that the individuals whose signatures appear below constitute and appoint Brandon Moss and Bobbie L. King Jr., and each of them, his or her true and lawful attorney-in-fact and agent with full and several power of substitution, for him or her and in his or her name, place and stead, in any and all capacities, to sign any and all amendments (including pre-effective and post-effective amendments) to this Registration Statement, and to file the same, with all exhibits thereto, and all documents in connection therewith, with the Securities and Exchange Commission, granting unto said attorney-in-fact and agent full power and several power of authority to do and perform each and every act and thing requisite and necessary to be done in and about the premises, as fully to all intents and purposes as he or she might or could do in person, hereby ratifying and confirming that said attorney-in-fact and agent or their substitutes, may lawfully do or cause to be done by virtue hereof. </font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Pursuant to the requirements of the Securities Act, this registration statement and Power of Attorney have been signed by the following persons in the capacities indicated on February 25, 2026.</font></div><div><font style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</font></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div><font><br></font></div></div><div style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:46.151%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.583%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:49.866%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:133%">Signature</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:700;line-height:133%">Title</font></div></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#47;s&#47; Brandon Moss</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Chief Executive Officer </font></div><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">and Director&#160;&#160;&#160;&#160;&#160;&#160;</font></div><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">&#160;(Principal Executive Officer)</font></div></td></tr><tr><td colspan="3" style="border-top:0.75pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">Brandon Moss</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#47;s&#47; Dominic Bardos</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Chief Financial Officer </font></div><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">(Principal Financial Officer)</font></div></td></tr><tr><td colspan="3" style="border-top:0.75pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">Dominic Bardos</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#47;s&#47; David Van Bibber</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Chief Accounting Officer</font></div><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">(Principal Accounting Officer)</font></div></td></tr><tr><td colspan="3" style="border-top:0.75pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">David Van Bibber</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#47;s&#47; Brad Forth</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:center"><font><br></font></div><div style="padding-right:-2.63pt;text-align:center"><font><br></font></div><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Chairman of the Board of Directors</font></div></td></tr><tr><td colspan="3" style="border-top:0.75pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">Brad Forth</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#47;s&#47; Ty Daul</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:center"><font><br></font></div><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Director</font></div></td></tr><tr><td colspan="3" style="border-top:0.75pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">Ty Daul</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#47;s&#47; Lori Sundberg</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:center"><font><br></font></div><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Director</font></div></td></tr><tr><td colspan="3" style="border-top:0.75pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">Lori Sundberg</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#47;s&#47; Toni Volpe</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:center"><font><br></font></div><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Director</font></div></td></tr><tr><td colspan="3" style="border-top:0.75pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">Toni Volpe</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#47;s&#47; Niharika Taskar Ramdev</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:center"><font><br></font></div><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Director</font></div></td></tr><tr><td colspan="3" style="border-top:0.75pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">Niharika Taskar Ramdev</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#47;s&#47; Jeannette Mills</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:center"><font><br></font></div><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Director</font></div></td></tr><tr><td colspan="3" style="border-top:0.75pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">Jeannette Mills</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#47;s&#47; Robert Julian</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:center"><font><br></font></div><div style="padding-right:-2.63pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:120%">Director</font></div></td></tr><tr><td colspan="3" style="border-top:0.75pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;padding-right:-1.31pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">Robert Julian</font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">&#160;</font></div></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="margin-bottom:10pt"><font><br></font></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div><font><br></font></div></div><div style="margin-bottom:10pt;text-align:right"><font><br></font></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-FILING FEES
<SEQUENCE>2
<FILENAME>exfilingfees.htm
<DESCRIPTION>EX-FILING FEES
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2026 Workiva-->
<!--r:019c96ac-6a6a-706d-baae-d993446c8682,g:0b1a6dcb-a980-46af-b06a-12727165ee6b,d:0a4504af94914d9fbe664809fcfc9908-->
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ffd="http://xbrl.sec.gov/ffd/2025" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:dei="http://xbrl.sec.gov/dei/2025" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>exfilingfees</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="c-2" name="dei:EntityCentralIndexKey" id="f-14">0001831651</ix:nonNumeric><ix:nonNumeric contextRef="c-2" name="dei:EntityRegistrantName" id="f-15">Shoals Technologies Group, Inc.</ix:nonNumeric><ix:nonNumeric contextRef="c-2" name="ffd:FormTp" id="f-16">S-8</ix:nonNumeric><ix:nonNumeric contextRef="c-2" name="ffd:SubmissnTp" id="f-17">S-8</ix:nonNumeric><ix:nonNumeric contextRef="c-2" name="ffd:FeeExhibitTp" id="f-18">EX-FILING FEES</ix:nonNumeric><ix:nonNumeric contextRef="c-2" name="ffd:OffsetTableNa" id="f-19">N/A</ix:nonNumeric></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="https://xbrl.sec.gov/ffd/2025/ffd-2025.xsd"/></ix:references><ix:resources><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:context id="c-1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001831651</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="ffd:OfferingAxis"><dei:lineNo>1</dei:lineNo></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2026-02-25</xbrli:startDate><xbrli:endDate>2026-02-25</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001831651</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2026-02-25</xbrli:startDate><xbrli:endDate>2026-02-25</xbrli:endDate></xbrli:period></xbrli:context></ix:resources></ix:header></div><div id="i0a4504af94914d9fbe664809fcfc9908_4"></div><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11pt;font-weight:400;line-height:133%">Ex<span id="i4e441097bbd14a8b99430d516074a4d6_11507"></span>hibit 107</span></div><div style="margin-bottom:10pt;text-align:right"><span><br/></span></div><div style="margin-top:12pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">CALCULATION OF FILING FEE TABLES </span></div><div style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-bottom:0.75pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:2.77pt;padding-right:2.77pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:13.5pt;font-weight:400;line-height:115%">&#160;</span></div><div style="margin-bottom:2pt;padding-left:2.77pt;padding-right:2.77pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:13.5pt;font-weight:400;line-height:115%">&#160;</span></div></td></tr></table></div><div style="margin-top:18pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Form&#160;S-8</span></div><div style="text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Form Type)</span></div><div style="margin-top:12pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Shoals Technologies Group, Inc.</span></div><div style="text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Exact Name of Registrant as Specified in its Charter)</span></div><div style="margin-top:12pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Table 1: Newly Registered Securities</span></div><div><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:10pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.642%"><tr><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.151%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.736%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.151%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.535%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.478%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.434%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.482%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="padding-right:-1.31pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">Security Type</span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="padding-right:-1.31pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">Security Class&#160;Title</span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:133%">&#160;&#160;&#160;Fee&#160;Calculation Rule</span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:133%">Amount Registered  </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:3.9pt;font-weight:400;line-height:133%;position:relative;top:-2.1pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:133%">Proposed Maximum  Offering&#160;Price Per Unit </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:3.9pt;font-weight:400;line-height:133%;position:relative;top:-2.1pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:133%">Maximum Aggregate Offering&#160;Price </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:3.9pt;font-weight:400;line-height:133%;position:relative;top:-2.1pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:133%">Fee Rate</span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-right:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">Amount of Registration Fee</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-1.31pt;text-align:center;text-indent:-12pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="ffd:PrevslyPdFlg" format="ixt:fixed-false" id="f-1"><ix:nonNumeric contextRef="c-1" name="ffd:OfferingSctyTp" id="f-2">Equity</ix:nonNumeric></ix:nonNumeric></span></div></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="ffd:OfferingSctyTitl" id="f-3">Class A Common Stock, $0.00001 par value per share</ix:nonNumeric></span></div></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:133%"><ix:nonNumeric contextRef="c-1" name="ffd:FeesOthrRuleFlg" format="ixt:fixed-true" id="f-4">457(c) and 457(h)</ix:nonNumeric></span></div></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="INF" name="ffd:AmtSctiesRegd" format="ixt:num-dot-decimal" scale="0" id="f-5">7,208,912</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">$<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="INF" name="ffd:MaxOfferingPricPerScty" scale="0" id="f-6">10.23</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">$<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="INF" name="ffd:MaxAggtOfferingPric" format="ixt:num-dot-decimal" scale="0" id="f-7">73,747,169.76</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="number" contextRef="c-1" decimals="INF" name="ffd:FeeRate" scale="0" id="f-8">0.0001381</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-right:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:133%">$<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="INF" name="ffd:FeeAmt" format="ixt:num-dot-decimal" scale="0" id="f-9">10,184.48</ix:nonFraction></span></div></td></tr><tr><td colspan="12" style="background-color:#ffffff;border-bottom:1pt solid #000;border-left:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-1.31pt;text-align:center;text-indent:-12pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">Total Offering Amounts</span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:133%">$<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="INF" name="ffd:TtlOfferingAmt" format="ixt:num-dot-decimal" scale="0" id="f-10">73,747,169.76</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-right:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:middle"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">$<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="INF" name="ffd:TtlFeeAmt" format="ixt:num-dot-decimal" scale="0" id="f-11">10,184.48</ix:nonFraction></span></div></td></tr><tr><td colspan="12" style="background-color:#ffffff;border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-1.31pt;text-align:center;text-indent:-12pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">Total Fee Offsets</span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:133%">n/a</span></div></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;border-right:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="12" style="background-color:#ffffff;border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-1.31pt;text-align:center;text-indent:-12pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">Net Fee Due</span></div></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000;border-left:1pt solid #000;border-right:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:10pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:133%">$<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="INF" name="ffd:NetFeeAmt" format="ixt:num-dot-decimal" scale="0" id="f-12">10,184.48</ix:nonFraction></span></div></td></tr></table></div><div><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><ix:nonNumeric contextRef="c-1" name="ffd:OfferingNote" id="f-13" escape="true"><div style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:2.911%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:94.889%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:4.87pt;font-weight:400;line-height:120%;position:relative;top:-2.62pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Amount to be registered consists of</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"> 7,208,912 </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">shares of Class A common stock of Shoals Technologies Group, Inc. (&#8220;Common Stock&#8221;) that may be offered or sold under the Shoals Technologies Group, Inc. 2021 Long-Term Incentive Plan (the &#8220;Plan&#8221;). Pursuant to Rule 416 under the Securities Act, this Registration Statement also covers an indeterminate number of additional shares that may be offered or issued under the Plan as a result of stock splits, stock dividends or similar transactions. </span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:4.87pt;font-weight:400;line-height:120%;position:relative;top:-2.62pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Estimated solely for the purpose of determining the amount of the registration fee pursuant to Rule 457(h) and 457(c) under the Securities Act, based on the average of the high and low prices of the Common Stock as reported on the Nasdaq Composite on February 23, 2026, a date within five business days prior to the filing of this Registration Statement.</span></div></td></tr></table></div></ix:nonNumeric><div><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:10pt"><span><br/></span></div><div style="margin-bottom:10pt;text-align:center"><span><br/></span></div><div style="margin-bottom:10pt;text-align:center"><span><br/></span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-5.1
<SEQUENCE>3
<FILENAME>alstonbirdllpletter.htm
<DESCRIPTION>EX-5.1
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2026 Workiva -->
<title>Document</title></head><body><div id="i1ea8a24430124ca49b622af7604e550b_37"></div><div style="min-height:72pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">Exhibit 5.1</font></div><div style="text-align:center"><img alt="screenshot2026-02x25155821.jpg" src="screenshot2026-02x25155821.jpg" style="height:45px;margin-bottom:5pt;vertical-align:text-bottom;width:336px"></div><div style="text-align:center"><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%">90 Park Avenue</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%">New York, NY 10016</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%">202-239-3300 &#124; Fax&#58; 202-239-3333</font></div><div><font><br></font></div><div><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:112%">February 25, 2026</font></div><div style="text-align:center"><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:112%">Shoals Technologies Group, Inc. </font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:112%">1400 Shoals Way</font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:112%">Portland, Tennessee 37148</font></div><div><font><br></font></div><div><font><br></font></div><div style="text-indent:36.34pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:115%">Re&#58;    Registration Statement on Form S-8 &#8211;</font></div><div style="text-align:justify;text-indent:62.95pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:200%">Shoals Technologies Group, Inc. 2021 Long-Term Incentive Plan </font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">Ladies and Gentlemen&#58;</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">We have acted as counsel to Shoals Technologies Group, Inc., a Delaware corporation (the &#8220;Company&#8221;), in connection with the Company&#8217;s filing of the above-referenced registration statement on Form S-8 (the &#8220;Registration Statement&#8221;) to be filed on the date hereof by the Company with the Securities and Exchange Commission (the &#8220;SEC&#8221;) to register under the Securities Act of 1933, as amended (the &#8220;Securities Act&#8221;), 7,208,912 shares of the Company&#8217;s Class A common stock, $0.00001 par value per share (the &#8220;Shares&#8221;), which may be issued by the Company upon the grant, exercise or settlement of awards granted under the Shoals Technologies Group, Inc. 2021 Long-Term Incentive Plan (the &#8220;Plan&#8221;). This opinion is provided pursuant to the requirements of Item 8(a) of Form S-8 and Item 601(b)(5) of Regulation S-K.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">In the capacity described above, we have considered such matters of law and of fact, including the examination of originals or copies, certified or otherwise identified to our satisfaction, of such records and documents of the Company, including, without limitation, resolutions adopted by the Company&#8217;s Board of Directors, or other appropriate governing bodies of the Company, the organizational documents of the Company, certificates of officers and representatives (who, in our judgment, are likely to know the facts upon which the opinion or confirmation will be based) of the Company, certificates of public officials and such other documents as we have deemed appropriate as a basis for the opinion hereinafter set forth. We also have made such further legal and factual examinations and investigations as we deemed necessary for purposes of expressing the opinion set forth herein.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">As to certain factual matters relevant to this opinion letter, we have relied upon the representations and warranties made in originals or copies, certified or otherwise identified to our satisfaction, of such records, agreements, documents and instruments, including without limitation, certificates and statements of responsible officers of the Company, and certificates of </font></div><div style="height:72pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div><hr style="page-break-after:always"><div style="min-height:72pt;width:100%"><div><font><br></font></div></div><div style="text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">public officials. Except to the extent expressly set forth herein, we have made no independent investigations with regard thereto, and, accordingly, we do not express any opinion or belief as to matters that might have been disclosed by independent verification.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">In our examination of the relevant documents, we have assumed the genuineness of all signatures, the legal capacity of all natural persons, the accuracy and completeness of all documents submitted to us, the authenticity of all original documents and the conformity to authentic original documents of all documents submitted to us as copies. This opinion letter is given, and all statements herein are made, in the context of the foregoing.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">Our opinion set forth below is limited to the laws of the State of Delaware that, in our professional judgment, are normally applicable to transactions of the type contemplated by the Registration Statement. We do not express any opinion herein concerning any other laws, statutes, ordinances, rules or regulations.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">Based on the foregoing, and subject, in all respects, to the assumptions, qualifications and limitations set forth in this opinion letter, it is our opinion that the Shares to be issued under the Plan are duly authorized, and, when issued by the Company in accordance with the terms of the Plan, will be validly issued, fully paid and non-assessable.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">This opinion letter is provided for use solely in connection with the Registration Statement, and may not be used, circulated, quoted or otherwise relied upon for any other purpose without our prior express written consent, which may be granted or withheld in our sole discretion. The only opinion rendered by us consists of those matters set forth in the immediately preceding paragraph, and no opinion may be implied or inferred beyond the opinion expressly stated. Our opinion expressed herein is as of the date hereof, and we undertake no obligation to advise you of any changes in applicable law or any other matters that may come to our attention after the date hereof that may affect our opinion expressed herein.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="text-align:justify;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">We hereby consent to the filing of this opinion letter as Exhibit 5.1 to the Registration Statement. In giving this consent, we do not thereby admit that we are an &#8220;expert&#8221; within the meaning of the Securities Act, or that we are otherwise within the category of persons whose consent is required under Section 7 of the Securities Act or the rules and regulations of the SEC thereunder.</font></div><div style="text-align:justify;text-indent:36pt"><font><br></font></div><div style="padding-left:252pt"><font><br></font></div><div style="padding-left:252pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">Very truly yours,</font></div><div style="text-indent:36pt"><font><br></font></div><div style="padding-left:252pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">&#47;s&#47; ALSTON &#38; BIRD LLP</font></div><div><font><br></font></div><div style="height:72pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>4
<FILENAME>eyconsent.htm
<DESCRIPTION>EX-23.1
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2026 Workiva -->
<title>Document</title></head><body><div id="i18eb1294865246b788aa8365454266bd_37"></div><div style="min-height:72pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;Exhibit 23.1</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:700;line-height:120%">Consent of Independent Registered Public Accounting Firm</font></div><div style="text-align:center"><font><br></font></div><div style="margin-bottom:9pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:174%">We consent to the incorporation by reference in the Registration Statement (Form S-8) of our reports dated February 24, 2026, with respect to the consolidated financial statements of Shoals Technologies Group, Inc. and the effectiveness of internal control over financial reporting of Shoals Technologies Group, Inc. included in its Annual Report (Form 10-K) for the year ended December 31, 2025, filed with the Securities and Exchange Commission.</font></div><div style="margin-bottom:15pt;text-align:justify"><font><br></font></div><div style="margin-bottom:15pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">&#47;s&#47; Ernst &#38; Young LLP</font></div><div style="margin-bottom:15pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">Nashville, Tennessee</font></div><div style="margin-bottom:15pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">February 25, 2026</font></div><div style="height:72pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.2
<SEQUENCE>5
<FILENAME>bdoconsent.htm
<DESCRIPTION>EX-23.2
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2026 Workiva -->
<title>Document</title></head><body><div id="i1ae1f276f3ea4189a9c589ff70b55c84_37"></div><div style="min-height:72pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">Exhibit 23.2</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:700;line-height:120%">Consent of Independent Registered Public Accounting Firm</font></div><div style="text-align:center"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:174%">We hereby consent to the incorporation by reference in this Registration Statement of our report dated February 25, 2025, relating to the consolidated financial statements of Shoals Technologies Group, Inc. (the Company) appearing in the Company&#8217;s Annual Report on Form 10-K for the year ended December 31, 2025. </font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font><br></font></div><div style="margin-bottom:15pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">&#47;s&#47; BDO USA, P.C.</font></div><div style="margin-bottom:15pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">Austin, Texas</font></div><div style="margin-bottom:15pt;text-align:justify"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:400;line-height:120%">February 25, 2026</font></div><div style="text-align:center"><font><br></font></div><div style="height:72pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>6
<FILENAME>screenshot2026-02x25155821.jpg
<TEXT>
begin 644 screenshot2026-02x25155821.jpg
M_]C_X  02D9)1@ ! 0$ D "0  #_VP!#  ," @," @,# P,$ P,$!0@%!00$
M!0H'!P8(# H,# L*"PL-#A(0#0X1#@L+$!80$1,4%145# \7&!84&!(4%13_
MVP!# 0,$! 4$!0D%!0D4#0L-%!04%!04%!04%!04%!04%!04%!04%!04%!04
M%!04%!04%!04%!04%!04%!04%!04%!3_P  1" !% ?\# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#]4Z*** "B
MBB@ HK!\4^//#O@>*&3Q!K5EHZ3'$9O)ECWGVS4/A;XC^%O'$LT7A_7]/UB6
M$!I$L[A9"@]2 : .DHHHH **IZGK%AHEOY^HWMO809QYMS*L:Y^I(%4]-\9:
M!K-T+:PUO3KZY()$-O=)(Y ZG .: -BBBB@ HHHH **P?$OCWPWX-0-KNNZ?
MI(/07=RL9/X$YKD+;]IGX5WEY):Q>.M',R?>#3[1_P!]$8/YT >FT5F:+XFT
MCQ'")=*U2SU*,C=NM9UDX]>":TF8(I9B%4#))Z 4 +17//\ $/PK&[(WB72%
M=3@J;Z($'_OJD_X6-X4_Z&;1_P#P/B_^*H Z*BN=_P"%C>%/^AFT?_P/B_\
MBJ/^%C>%/^AFT?\ \#XO_BJ .BHK&T[QGX?U>Z%M8ZYIU[<'D16]W&[G\ <U
MLT %%0W5W!8P--<S1V\*_>DE<*H^I->:>+OVG_A5X&1FUGQSI5OM;81%(9R#
M](PQH ]1HKS3PC^TK\+_ !U%&^B^-])NA(VU%DE,#$_[L@4_I7H]O<174*RP
M2I-$PRKQL&4_0B@"2BBHKBYBM('FGE2&%!EI)&"JH]230!+16!;_ ! \+W4T
M<,/B/2999"%1$O8RS'T W<UO Y% "T45#=7<%C;R3W,T=O!&-SRRL%51ZDGI
M0!-16#;>/?#-[<1P6_B'2IYI#M2..]C9F/H &YK>H **** "BBB@ HHHH **
M0L%!)( '4FL!_B'X6BD9'\2:0CJ<,K7T0(/H?FH Z"BN=_X6-X4_Z&;1_P#P
M/B_^*H/Q&\)@?\C-H_\ X'Q?_%4 =%15+3=:T_68_,T^_MKY/[UM,L@_,$U=
MH **K:AJ5II-JUS>W4-G;K]Z6>0(@^I/%9VG^-O#VJW26UEKNFWEP_W8H+N-
MW;Z '- &U12,0H))P!R2:P)/B%X6AD>.3Q)I*2(2K(U]$"I]"-U '045SO\
MPL;PI_T,VC_^!\7_ ,51_P +&\*?]#-H_P#X'Q?_ !5 '1452TW6].UF/?I]
M_:WR==UM,L@_0FKM !1534]6L=%MC<ZA>06-N.#+<RK&@_$G%9'_  L;PI_T
M,VC_ /@?%_\ %4 =%17._P#"QO"G_0S:/_X'Q?\ Q56].\8:#J\GEV.M:?>2
M9QLM[I'/Y T :]%%% !1110 4444 %%%>3_M2_&&U^!7P,\4>++B3RYK>U>*
MUYQNG92(Q^= 'Y"_\%5OCXWQ8_: E\.V<WF:+X73[+$4.5DE(!=OJ"2*X7_@
MGA\>3\"?VC=%N;F39H^LL-.O1G&0V0A_!B*XS]G7X:WO[3/[2&C:+=B2=-8U
M!KC4)<EC'&Q+,Q/ID@5?_;&^!\O[-/[0VL^'K%9(-.BD2\TN1N&,/\+?]]*:
M /Z+D=9%#*P92,@@Y!%.KYU_8*^.4?QU_9Q\-ZI+<";5;")=/O03\WF1J%W'
MZXKZ*H ^&O\ @KS<S6O[,\+P320/_:"#,;%21E:^#O\ @E'JU]>_MB:*D]Y/
M,G]F7GRO(2#\H[5]V?\ !8'_ )-CA_["$?\ -:^"?^"3/_)X^B_]@R\_] %
M'[P4444 %?,W[=W[7%O^RI\+3>62)=>*M4)@TVW?HIP<R,/08_6OIFOQI_X+
M1:I?S?&KPG92R.;&+3':)#]W)<9Q0!\=ZMXB^)_[4GCLK<3:OXRUZ[<NMO'O
MF"?[J\[5%=IK?[!/QRT'27U"X\"7\D* ,4MT,DF/]T#-?</_  18B\'G0O%S
ME;8^-!.,M)CS1;8&-N>>N>E?J+UH _FG\!_&;XG_ +//BA)-&UG5O#NH6K8>
MQG9T0@?PO&2,CBOW#_90^-GC/]H/]FJY\3^+M _L?4I[6>.!XA@7B^6<2HN.
M 3QCVKI/CU^QM\,/VA[:W'B30((;V"42I?62"&4X/(8KC<#[U[#H&@6'AC1+
M+2-,MH[33K.)888(QA40# &* /YQO&WPZ^*#^,]=:'PYXG:-KZ8J5M)B"-YQ
MT'I7/7W@7XF:99RW=WH7B2VM85W232VTRH@]22,"OZ7SI%B22;*W)/4^4O\
MA7DG[6>F6</[-OQ#>.T@1AI4F"(E'<>U '\Z=MK.MWES';P7E[-/(P1(XY&+
M,3T '<UUY^&WQ5!Y\-^*!_VYS_X5%\"0&^-W@P$!@=9ML@C(/[U:_I=.D6).
M396Y/KY2_P"% 'XG?\$T_!7CS2/VJ="N=;T77K.Q6%]\M[;RI&.1C)88K]=?
MCU\>/"_[._P^O?%?BF[6"WA4B"W!_>7,G9$'?MGT'-=['I]G:MYL=M#$RC[Z
M1@$?C7X4_P#!3W]HV[^,OQ[O_#UK=,WAOPRYL[>)3^[DE&=TOU.<?A0!RW[3
MG_!0#XE?M%:Y<)'J=SX;\,[L6^DZ?,R KV\QAC>:\^\ ?LI?%OXL*+O0_!>K
M7<$P,BWD]NZ1O[AR,&OMK_@E_P#L'Z3XZTQ/BGX^T\7M@LN-(TZ;[CLIYD<=
MQTP.AK]:+'3[72[6.VL[:*TMHQA(8$"(H]@.!0!_-;\0/V=OB?\ !N;[3XA\
M)ZOI$<+<7PMW\I2.XD Q7M'[*W_!1GXB?L^ZO;6>JW]QXJ\),X$^GWTQ=XUS
MR8V.=OTK]XM<\/Z9XFT^6PU:PMM2LY5*O!=1+(I!&#P17XQ_\%./V']/^!.J
M6WCSP5:O#X5U.4I=VB@E+.8D8P?1LGCMB@#]=_@_\7?#GQO\!:9XM\+WJ7FF
MWL8; /S1-W1AV(.:P?VHG:/]G_QTR.R.-+F(93@CY37Y6?\ !([]H^Z\!?%I
M_AQJ-PS:%XD/^C1LW$=T,;<>@(W5^J7[4O\ R;YX[_[!<W_H)H _G"TWQAK>
MD7UK>6>JW<%S;2++#(DS91@<@CFOW;_X)[?MC6G[3/PTBTW59DB\;:+$L-["
M3@SH.%E4=QC&3ZU^$'AGPY?^+_$.GZ)I<)N-1OYUM[>(=7=C@#\Z[[X1_%+Q
M=^RW\8;;6].\W3]8TJX,-W9RC D4'#1N#U'% ']*]>+_ +9<CQ?LP?$=HW:)
MQHUP0Z'!'R'H:Z3X"?&W0/V@?AGI/C#P_.'M[N,>= 3\\$N/F1AV/^-<U^V=
M_P FO?$C_L#7'_H!H _"K]DO6M1G_:1^'<;W]RR'58P5,K8/!]Z_H[B_U2?[
MHK^;?]D;_DY;X=_]A:/^1K^DB'_5)_NB@!]>:?'K]H3P;^SEX,D\1^,-26TM
M\[(+=/FFG?!(5%ZGI7I=?BY_P60\3:QJ?Q\T/1KOS(M(LK &U!)V.6(+-CID
M$D9H ]IU#_@MEH4?B"..S\ W,VD<[YWN]LGX#;]*^H_V5OV\O G[5.HW6DZ+
M#=:9KMO'YKV5RI(*=R&P,UXU^RG_ ,$\_@;XL^ 'A;6=2TH^([_5;,7%Q?FX
M9<LW!  /&*](_9\_X)]^&OV:?C?=^-?"6JW']DW-H]O_ &5<#=Y)(ZAR23^-
M 'UI1110!0UXXT2_P<'R'_\ 037\S'Q"UW5%^(?B:--0NC_Q-+D >:W_ #U;
MWK^F?7_^0'?_ /7!_P#T$U_,AXY_Y*EX@_[#-Q_Z/:@#OK7]G3XYWUK%<V_@
MWQ5-!*H=)$MIB&!Z$<4E[^SK\<["TEN+CP7XK2&-2SL;2;@?E7]#7PQ8M\._
M#A/)^P0_^@BNE=%D0HZAE88*L,@B@#^;7X7?M*?%'X ^)TN-$\0ZE836S[9M
M.NY',3<Y*O&37[M_L@?M-:;^U+\)+/Q/;1+::G$WV?4;,-GRI@ 3CV.17YN_
M\%E?A[X5\*_%'PGJVC0VNGZMJED[7MM;(J^9M;"R$#H<#%>L_P#!$Z#4QX1\
M=2M(O]CFZ54CQ\WG87)^FW% 'TC_ ,%-)I;?]D7Q1)#*\,@EAP\;8/4U^6/_
M  36U:_N_P!KOP7'->W$D?FG*-(2#QWK]2_^"G/_ ":#XJ_ZZP_S-?E5_P $
MSO\ D[_P7_UU;^5 '[YZ[QHFH8.#]GD_]!-?S2_%K6M4'Q9\710WUUDZO<A5
M65N?WK 5_2UKO_($U'_KWD_]!-?S1_$3_DN7B'_L.S_^CC0!U5K^SI\<[ZUA
MN8/!OBJ6"9!)'(EK,0RD9!''I4&K? #XW:)9-=7O@[Q7#;K]YS:3<?I7]$?P
MU8M\.O"Q/7^R[7_T4M=#-#'<1F.6-9$/57 (/X4 ?S9_#?\ :*^*?P"\31SZ
M+XAU32[JV?\ >:?=R/Y9]5>,FOVS_86_;&LOVL?A[+<7<46G^*],(BU"S1N'
M])$'H>/IFOF[_@L#^S_X8B^%^G?$33--M=,UJSNTM;A[:,1_:4D( W =2,'G
MWKYL_P""0'B*_P!,_:;GT^WF*VE[ID@FC[-ATQ0!]X_\%9+B:U_9/U)X97A?
M[7 -T;8/^L6OQ2\'Z9XR\?ZU'I'AV/4]8U*12RVMH7D<@=3@5^U/_!6O_DTS
M4_\ K\@_]&+7YX?\$HF*_M=:/@X_T&X_D* /)F_9K^/"@D^"?%G'7_19O\*Y
M66]^*'P?U%+F:3Q'X5NPWRR2^;;DD>YQFOZ9:Y#Q]\)/!_Q.T2YTKQ+X?L-4
MM+A"C>; N\9[JV,@_2@#\GOV2/\ @K#XH\(:Q8>'OBI(=>\/RNL0U;_EXM@>
M-SGDN/RK]?O#GB/3?%VAV6L:/>17^FWD8E@N('#*ZD>HK\&?V_\ ]C&?]E;Q
M]#<Z3ON?!>L,SV$IR3 PQNB8^V1@]Z^GO^"//[3-V]]J7PEUN[>>W\LWFDM*
MV?+P0&B'U+$T ?JU1110 4444 %?DO\ \%E_CS'J&LZ#\+]-N]RV@^W:E$AX
M+'!B!]QAJ_4SQOXKL_ WA#6-?OY4BM=.M9+EV<X!VJ2!^)P/QK^:[XY?%"]^
M,WQ7\2>+[YRSZG>22QJ?^6<98E%'T!H _2C_ ((S_ <6FE>(/B?J-H5FN#]@
MTZ1UX:/(+LO_  )<5UO_  6)^ DOB[X:Z5\1=-MP]UH+^3?,J_,;=CA?R9J^
M??@]_P %96^#?PVT+P?I/P_@%GI< B5EG"[SU9L8[DDUH?$/_@KV_P 2?!.L
M^&=5^'=O/8ZG;/;NLDX8#(X;&.H.#^% &)_P2#^/C>!OB_?> M0N=FE>(H]T
M(<_*LZ9V@>[;J_:6OY=O _C"Z\ ^-]'\2:86CNM+O([N$;N<HP8 G\*_I.^!
MOQ/L?C'\*/#?B[3Y/,AU&T1W.<XD PX_[Z!H ^4/^"P/_)L</_80C_FM?!/_
M  29_P"3Q]%_[!EY_P"@"OO;_@L#_P FQP_]A"/^:U\$_P#!)G_D\?1?^P9>
M?^@"@#]X**** "OBO_@IE^R)J7[1OPZL];\+PK/XKT ,T5OT:YA.2T:^^<'\
M*^U** /YAM*U?QI\$O%_VFRFU'PMKUE(4+ &-U8=00>#7UU\,?\ @KO\7?!I
MMH=>AL/%5K&H5VNU*R,/7*D<U^MOQ=_9C^&GQRMG3QAX5L=2N&Z7AB G3Z/B
MOCOXG_\ !&?P#KBW,W@W7[_0;AES'%>$31AOH .* .T^ '_!6#X8_%G4+72/
M$4,_@O59F$:O>$-;R.>RLI)'XU]N6EW!?VT=Q;3)/!(H9)8V#*P]017\Y'[3
M?[)GC?\ 97\2P:=XHMTEL[H%K/4K8YBF /L3M/L:_17_ ((]?M%ZSXX\/Z_\
M.==O)+[^Q(ENK&67+,D3$+Y>?0$$T ?I17D7[7'_ ";5\1/^P3)_,5Z[7D7[
M7'_)M7Q$_P"P3)_,4 ?SZ? C_DN'@O\ [#-M_P"C5K^FBOYE_@1_R7#P7_V&
M;;_T:M?TT4 8/CO6U\-^#-;U1U9UM;223"=>%/2OYEM2GD\6^/9WG=GDU#4<
M,[GGYY,<_G7].OB33(M9\/ZE8S1K-'<6\D91AD'*FOYD_'>C7?@'XEZQI]Q$
M8+S3-1?,>,;2KY _E0!_2!\!/"MMX)^#'@S1;6-(XK32K>/"# )\L9-=]7D/
M[)?Q'L_BI^SUX)UZTG$Y;3HH+@@YVS(@#J?<&O7J "O /V[_  S9>*?V5_'E
MO>H'2"Q>ZCR,[9$4E3^=>_U\S_\ !1/XD:?\.OV6/%KWLR+-J<)T^WB;J[R
MC@>V: /PP_9]U6ZT/XU^#+ZSD\JYAU*)D?T.<?UK^@[]IIB_[.7C5CU.D2$_
M]\5^ G[+7A"Z\=?M ^!M&LT=Y;C4HQE!DJ!R3^E?OY^TZAB_9U\;(>JZ3*/_
M !R@#^?_ /9<<Q_M'?#1E."/$%D1_P!_EK]$O^"K/[%/]I03?&#P;89N8U']
MN6D"Y+J!@3  =L 'ZU^=G[+_ /R<9\-?^Q@LO_1RU_2C>V%OJEC-:7<*7%M.
MACDBD&592,$$4 ?@C_P3X_; N_V9OBA#8:K-))X+UF18+Z#.1 Q.%E4=L'&?
M85^P7[7.J6FN?LF>/M0L+B.[LKK0IY89XCE9$,9((/TK\B_^"BG[&]Q^S9\2
M)-9T2VD?P1K4C26DBJ2MLY.3$Q_D?>NT_9K_ &TDG_9:^(GP>\9WQWC19QH-
MW*W_ $S;,))_X"%% 'S1^R-_R<M\._\ L+1_R-?TD0_ZI/\ =%?S;_LC?\G+
M?#O_ +"T?\C7])$/^J3_ '10 YF"J2Q  Y)/:OQ"_P""HG[0&B?M ?&G3O#7
MA+3AJ$GAX/9&_@4L]S(3ED4#J <C\*_7O]H?5;K1/@3X^O[&0PW=MHMU)%(O
M56$38(K\;?\ @E?X?TGQE^UO%=Z\8YKJUMYKZV$PSON-XYY[\F@"_P#\$_OV
MWM5_9C\9CP1XU-R?!M[,(GAG!#Z=*>-X!Z#ID>E?MG%XCT^Z\/#6[2YCN]-:
MW^TQW$+;E>/;N!!^E? /_!1O_@GI!\4[&]^(WP_LD@\5P(9;_3XE 6^4=6 _
MOC]<8KXU_9W_ ."@_B[X _"[Q=\-O$5I=ZE ]E-:Z7Y[%9=.G*LNT@\[02..
MV* /T)^$W_!3_P '?%[XUV?PXTKPCK<5]<WKV:WLK1F)2I(+D YQQ^M?:5?C
M_P#\$?/@OJ'BSXH>(/BCJ4+?8;%'@AE=<"2XD8,67UQ@U^P% %#7_P#D!W__
M %P?_P!!-?S&?$*4P?$KQ)(!DIJURV/I,U?TYZ__ ,@._P#^N#_^@FOYCO'T
M8F^)WB*-ONMJ]PI_&9J /O+P_P#\%G?&7A_0=/TR/P+HLB6D"0AV>7+;1C/W
MZ77/^"U/Q!OM+G@L/!NB6-TXPEP&E;9[X+5],^#/^"3OP-U[PCHVH7$6MFXN
M;2.60K>* 6(R<#96R/\ @D/\!P?]5KI_[?5_^(H _)'5/%WBO]KGXTV4OC#Q
M-##J&IS+#]OOSM@M4], < 5^\O[*'P(\,_L^?!_2_#?AFZBU.)@)[G4HF#"Z
ME(&7R/PK\Q?VYO\ @F5;_ /P7<^.O VI7%_H5J_^EV-V=TL"'^,-QD>U6_\
M@D[^U9KOA[XG0_##7=4EO/#NK(WV".X<L+695)^4GL0N,4 ?<_\ P4Y_Y-!\
M5?\ 76'^9K\JO^"9W_)W_@O_ *ZM_*OU5_X*<_\ )H/BK_KK#_,U^57_  3.
M_P"3O_!?_75OY4 ?OGKO_($U'_KWD_\ 037\T7Q'=8OC?XC=V"HNN3DL>P\X
MU_2[KO\ R!-1_P"O>3_T$U_,Q\6X7N/B]XMBC&YWUBY51ZDRM0!_0'\/_P!I
MGX5V/@/PY;R^.M(66+3;='4RG((B4$=*T]6_:Y^#VB6$MY=>/M)6",98K(S'
M\@*_$;3_ /@GE\>-4T^UO;;P7(]O<Q+-$WVB,;E8 @]?0UY/\6_@KXR^!WB&
M/1/&FC3:/?R1":-)"&5T)(R&'!Z&@#[(_P""E7[>6C?M Q6G@3P.S7/A>TE%
MQ<ZBP(%U(,;0HZX&#U'>NA_X(W?!75-5^)>M?$.XMY8='T^U-G#,RX$DK%3Q
MZC ->/\ _!/_ /8O\.?M6ZWJ$NN>*5L8-*=&GTB%<7$Z$GE6/;CT[U^X/PY^
M'/A_X4^$+#PUX9T^+3=)LD"10Q@#/J3ZD]2: /E+_@K7_P FF:G_ -?D'_HQ
M:_.__@E'_P G=:-_UXW'\A7Z(?\ !6O_ )-,U/\ Z_(/_1BU^=__  2C_P"3
MNM&_Z\;C^0H _>.BBB@#XZ_X*K^%].UW]DS6+N\@62YL+N"6WE[H<G./K@5^
M3O[ ^N7>A?M;_#B2TE,1FU$128_B0JQ(_05^H_\ P5N^)>G>$OV:)/#\KHVI
MZY=QK!"6&XHA^=L>V17YG_\ !.;P1=>-?VMO!'V?/EZ;<?;IV SA%!!_]"%
M']"%%%% !1110!\ ?\%=_C__ ,(!\';3P'I\K+JGB5QYY0X,=NI!S^)4BOS]
M_83_ &+'_:Z\3:U#?:E<:)H>EPAI;V&#S"9&SM4 D>GK7HG[=WPZ^-'[0_[0
M6MZY9> ==N-!M,6FFDQJ085Y!'S=R37Z-_\ !.S]GV?X _L\:5::K8M9>(M5
M/VZ^CD^^FX96-O=<D4 ?.?\ PY)\)_\ 11-2_P# !?\ XY1_PY)\)_\ 11-2
M_P# !?\ XY7Z744 ?@I^WC^PB?V16\/WVEZQ<>(-%U0.CW$L C,,BXX.">N>
M*^K_ /@C5\?DU+0-=^%NI7/^E61^WZ:K'_EB3\ZCWW-FOKW]N3X$GX__ +/'
MB/0+6W$^L6\1O;!0/F::,%E0?[QP*_)']F#X/_'3]G_XW^&_%T7PYUPP6=R$
MNXEC7]Y$3AA][IT/X4 ?H'_P6!_Y-CA_["$?\UK\]/\ @E_XLT3P7^UCI.J>
M(-5M=&TY-.NT:ZO)1'&&*C R?6OTF_X*?>!/$WQ3_9PL['POH5WK&HR7<<K6
MMLH+H/E)R">U?D6G['GQLC;*_#K6U/J(U'_LU '[\?\ #3'PH_Z*)X<_\&,?
M^-)_PTQ\*/\ HHGAS_P8Q_XU^!G_  R%\</^B?:]_P!\#_XJC_AD+XX?]$^U
M[_O@?_%4 ?T&>$_C-X$\=ZJ=-\.^+=(UK4 AD^S65VDK[1U. >E?%'_!0+_@
MH[-\"_$EEX+^'L\-QXFM+A)=5EE0/'%'C/E?[QR#GM7@_P#P2X^ /Q*^&_[3
M<>K>*O".JZ/I?]E749N[L 1ARHP#SU-?:'[7G_!//P3^TZDVLV^/#WC()A-2
M@7Y9SV$H]/?&: ,K]F;_ (*:_#+XW:=;67B"_A\&>)]H$MMJ$H2!VQ_!(<9S
MZ8KZA3XF^$I(Q(OB32V0C<&%TF"/7K7X3?%7_@FS\<?A9J#BW\-R>([1'(2]
MTAMRX['G!%>.S?#[XHVE^=.DL-<CNE?RC 9FR&Z8QNH ^[/^"N_[2/@CXD6?
MASP5X8U6WUR_TZZ-U=W-FX>.+Y679N'?YL_A2?\ !$_PGJ+>._'?B+R2-*%C
M%:><>AE#[BH_ @U\]_!3_@FY\9OB_K]NFHZ#/X8TF20&?4]4X&T\DKC))K]I
MOV;?V>_#_P"S5\,=/\(Z"OF>4-]U>,N'N92.7;\A0!ZI7D7[7'_)M7Q$_P"P
M3)_,5Z[7EW[4&C7_ (B_9^\=Z;I=I)?ZA<Z9)'!;0C+R,2.!0!_/1\"/^2X>
M"_\ L,VW_HU:_IHK^>_X.?LG_&'1OBYX2U"\^'FLPVD&K6\LLC1J BB522>>
M@%?T(4 %?C/_ ,%:OV5[KP-\0S\4M%M"^@ZZV-0,2\07/]YL= 1M ]Z_9BL+
MQMX(T3XB^&+[P_XBT^'4])O8S'-;S#((]1Z'WH _#O\ 8%_;UO?V6M5F\/Z_
M%+J?@;4)5:2-#E[-\G,B#OG/(]J_9/X>_M+_  S^*&B1:IX?\8Z7=0.NYHVN
M466/V9<\&OS(_:A_X)$^)/#>IWFM?"F4:WH[DR#2)B1<0]]J=F ]SFOBG6O@
MA\5/AY>FRO\ P[K.B7+9S%NV%OR:@#]__BC^U;\+?A#HLNH>(/%^FQE$+I:P
M3K)/+_NH#S7XF_MP?MGZQ^UAXX4PA[#P?IK,NG6!)!8'_EH_N<#@]*\\\+_L
M[_%OXJ:@+;2O"^L:Y.A"DEM^S)QR2W K[X_90_X)$74&J6/B3XNW$7D0L)4T
M"V8DN000)6P,?0&@"?\ X)#?LH7MC<W/Q?\ $=H]NCQM:Z/!/'@N"1NF&>F"
MN!]:^_OVI?\ DWSQW_V"YO\ T$UZ1I&DV>@Z9;:=I]M'9V5M&(H8(EVJB@8
M K@OVC](O=>^!WC/3]-M9+V^N-.ECAMXOO.Q7@"@#^>_]E__ ).,^&O_ &,%
ME_Z.6OZ6!T%?S^_L\_LI_%[P]\=?A_J=_P##_6+:QM=<M)IYGC4+&@E4LQYZ
M 9-?T!#H* .$^-_P=T#X[_#;6/!_B*U2XL[Z$JCD?-#(.4=3VP0.E?SN?M!_
M O7_ -GCXG:KX0UZ!T>VD)M[DJ0MQ%GY74^XK^E^OE/_ (* ?L?6?[3WPPEN
M-,MXX_&NCHTVGW&,-* ,M"?7=@ 9Z4 ?C!^R-_R<M\._^PM'_(U_21#_ *I/
M]T5^!W[-/[*7Q=\)_M">"-0U3P#J]K966JHT\[QKL11D$DYZ5^^,0Q$@/7 H
M H^(]!M/%.@:CH]_'YME?P/;3)ZHP((_(U^"_P"T%\!OB3^PA\=1XDT,W,.G
MPW;7>DZW!&3"5)R(W[<9Q@]<5^_-97B3PKH_B_39-/UK3;75+.08:&ZB#C\,
M]* /R+L/^"U?CJWT:&WN?!.F75^L>U[S[44#O_>V!,#Z9KY5UKP1\4OVM/%/
MBKXA:9X-EN(RKWMW)IUF8X% R3C P6Z_6OW#3]BCX*1ZP=37P#IOVLL6SAMN
M?]W.*];T'PKH_A?3%T[2=,M-.LE79Y%O"J*1[@#G\: /QZ_X)J_MV6GP/O4^
M&/CA(['PY=7!%MJ!0(UK,6Y67VR3R>G2OV4L[R#4+6*YMI4GMY5#QR1G*LIZ
M$&O-+[]F'X6:E>375QX(TF2>9S([^0 2V<YX]Z]'TS3;;1]/@LK.(0VL"!(X
MP<A5'04 1:__ ,@._P#^N#_^@FOYC_';!?BCXA). -8N"2?^NS5_3EK<;2Z/
M>HBEG:%P%'<X-?SR^._V1/C+J'CCQ#=0?#O6GAFU&XD1A$N&4RL0>OI0!^W7
MPZ_:.^%ECX#\/P3?$'P]'+'91*R/J$8((49!&:Z+_AICX4'_ )J)X<_\&,?^
M-?@5_P ,A?' ?\T^U[_O@?\ Q5+_ ,,A?'#_ *)]KW_? _\ BJ /T>_X*3_M
MS^ +KX0:M\//".L6_B36M840SRV3B2&"+J3O!P3G'%?"_P#P3>\#:EXU_:Q\
M(M81[HM.=[JYD(RL:!&Z_4\5J_#O_@F)\=?'NI6\5YX</AVUE(+W>J/M50?I
MGFOUA_8S_8J\-_LE^%YE@D&J^*;]0+[5'7!(_P">:>B@_CS0!C?\%.?^30?%
M7_76'^9K\JO^"9W_ "=_X+_ZZM_*OUL_X*'>#]<\=?LN>(]'\.Z7<:QJDTD7
MEVEL 78 G)Y(K\W/^"?G[-GQ1\!?M2>$=8U_P1JNF:7!*3+=SQJ$C&.IYH _
M:K7?^0)J/_7O)_Z":_FC^(G_ "7/Q#_V'9__ $<:_I=UF-I='OD12SM!(JJ.
MYVGBOY^O'?[)_P 8;WXO:]J-O\/-9EM9-8FF218UPR&4D$?-Z4 ?O=\-"3\.
M?"Q)R?[+M>O_ %R6OG[_ (*!_LG6W[3GP@N/L$,:>+M%5KK3;@C!<#EHB>X(
MS@>IKZ%^'MK-8^ O#=M<1-#<0Z;;QR1MU1A$H(/T-=!0!_-7\$/B[XG_ &7?
MC+9>(+$36>H:7<F"_L6)7S$#8DB8?@17]#WP:^+&B?&WX<Z+XOT"X2XL=0@#
MD*<F-^C(?H<BOS:_X*<?L%ZSK/C&#XB?#709=2?4WV:IIUDHRLO:4#_:).:J
M_P#!-/4/C/\ L]^-SX0\5^!-=7P3K<@'FNB[;*?M)RW"XSG'<T ?27_!6O\
MY-,U/_K\@_\ 1BU^;7_!,CQ7HO@S]J;2=2U_5;71]/2SG5KF\D$<8) P,FOU
M"_X*;^!/$/Q&_9EO])\,Z1<ZUJ3W4+"VM0"^!(I)Y/I7XY+^QW\;$.5^'6MJ
M?41J/_9J /WX_P"&F/A1G_DHGAS_ ,&,?^->5?&/_@HO\%_A+IEVZ^)[?Q'J
M<:'RK+2768N_8$@\#WK\8/\ AD+XX?\ 1/M>_P"^1_\ %5W/@K_@FW\>?&T\
M&[P?/I$4V";C46"JH)QDXS0!Q/[5/[3WB7]JWXER>(-60V]HA\G3M,B.Y8(\
M\ >K'C)[U^GO_!*G]D:^^#G@N[\>^*;,6WB'7HPMK!(O[RWMNO/H6(!^E2_L
ME_\ !*GPQ\&M4L_$_CNZC\5>([<B2&U4?Z+;N.C#IN/U&*^^(XUB1410B* %
M51@ >@H =1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
&%%% '__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>8
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.4</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Submission<br></strong></div></th>
<th class="th"><div>Feb. 25, 2026</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_SubmissionLineItems', window );"><strong>Submission [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Central Index Key</a></td>
<td class="text">0001831651<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Registrant Name</a></td>
<td class="text">Shoals Technologies Group, Inc.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FormTp', window );">Form Type</a></td>
<td class="text">S-8<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_SubmissnTp', window );">Submission Type</a></td>
<td class="text">S-8<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeeExhibitTp', window );">Fee Exhibit Type</a></td>
<td class="text">EX-FILING FEES<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OffsetTableNa', window );">Offset Table N/A</a></td>
<td class="text">N/A<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeeExhibitTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeeExhibitTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:feeExhibitTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FormTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FormTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OffsetTableNa">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OffsetTableNa</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:naItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_SubmissionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_SubmissionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_SubmissnTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_SubmissnTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>9
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.4</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Offerings - Offering: 1<br></strong></div></th>
<th class="th">
<div>Feb. 25, 2026 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingTable', window );"><strong>Offering:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_PrevslyPdFlg', window );">Fee Previously Paid</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeesOthrRuleFlg', window );">Other Rule</a></td>
<td class="text">true<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingSctyTp', window );">Security Type</a></td>
<td class="text">Equity<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingSctyTitl', window );">Security Class Title</a></td>
<td class="text">Class A Common Stock, $0.00001 par value per share<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_AmtSctiesRegd', window );">Amount Registered | shares</a></td>
<td class="nump">7,208,912<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_MaxOfferingPricPerScty', window );">Proposed Maximum Offering Price per Unit</a></td>
<td class="nump">10.23<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_MaxAggtOfferingPric', window );">Maximum Aggregate Offering Price</a></td>
<td class="nump">$ 73,747,169.76<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeeRate', window );">Fee Rate</a></td>
<td class="nump">0.01381%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeeAmt', window );">Amount of Registration Fee</a></td>
<td class="nump">$ 10,184.48<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_OfferingNote', window );">Offering Note</a></td>
<td class="text"><div style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:2.911%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:94.889%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:4.87pt;font-weight:400;line-height:120%;position:relative;top:-2.62pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Amount to be registered consists of</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"> 7,208,912 </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">shares of Class A common stock of Shoals Technologies Group, Inc. (&#8220;Common Stock&#8221;) that may be offered or sold under the Shoals Technologies Group, Inc. 2021 Long-Term Incentive Plan (the &#8220;Plan&#8221;). Pursuant to Rule 416 under the Securities Act, this Registration Statement also covers an indeterminate number of additional shares that may be offered or issued under the Plan as a result of stock splits, stock dividends or similar transactions. </span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:4.87pt;font-weight:400;line-height:120%;position:relative;top:-2.62pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-right:-2.63pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">Estimated solely for the purpose of determining the amount of the registration fee pursuant to Rule 457(h) and 457(c) under the Securities Act, based on the average of the high and low prices of the Common Stock as reported on the Nasdaq Composite on February 23, 2026, a date within five business days prior to the filing of this Registration Statement.</span></div></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_AmtSctiesRegd">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of securities being registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_AmtSctiesRegd</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegativeDecimal2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeeAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total amount of registration fee (amount due after offsets).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeeAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative1TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeeRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The rate per dollar of fees that public companies and other issuers pay to register their securities with the Commission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeeRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeesOthrRuleFlg">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Checkbox indicating whether filer is using a rule other than 457(a), 457(o), or 457(f) to calculate the registration fee due.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeesOthrRuleFlg</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_MaxAggtOfferingPric">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum aggregate offering price for the offering that is being registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_MaxAggtOfferingPric</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative100TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_MaxOfferingPricPerScty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum offering price per share/unit being registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_MaxOfferingPricPerScty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegativeDecimal4lItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingNote">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingNote</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingSctyTitl">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The title of the class of securities being registered (for each class being registered).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingSctyTitl</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingSctyTp">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Type of securities: "Asset-backed Securities", "ADRs/ADSs", "Debt", "Debt Convertible into Equity", "Equity", "Face Amount Certificates", "Limited Partnership Interests", "Mortgage Backed Securities", "Non-Convertible Debt", "Unallocated (Universal) Shelf", "Exchange Traded Vehicle Securities", "Other"</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingSctyTp</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:securityTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_PrevslyPdFlg">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_PrevslyPdFlg</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_OfferingAxis=1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_OfferingAxis=1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.4</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fees Summary<br></strong></div></th>
<th class="th">
<div>Feb. 25, 2026 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_FeesSummaryLineItems', window );"><strong>Fees Summary [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_TtlOfferingAmt', window );">Total Offering</a></td>
<td class="nump">$ 73,747,169.76<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_TtlFeeAmt', window );">Total Fee Amount</a></td>
<td class="nump">10,184.48<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ffd_NetFeeAmt', window );">Net Fee</a></td>
<td class="nump">$ 10,184.48<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_FeesSummaryLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_FeesSummaryLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_NetFeeAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_NetFeeAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_TtlFeeAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_TtlFeeAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative1TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ffd_TtlOfferingAmt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ffd_TtlOfferingAmt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ffd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>ffd:nonNegative1TMonetary2ItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
.report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

.report table.authRefData a {
	display: block;
	font-weight: bold;
}

.report table.authRefData p {
	margin-top: 0px;
}

.report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

.report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

.report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

.report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
.pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
.report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

.report hr {
	border: 1px solid #acf;
}

/* Top labels */
.report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

.report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

.report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

.report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

.report td.pl div.a {
	width: 200px;
}

.report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
.report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
.report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
.report .re, .report .reu {
	background-color: #def;
}

.report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
.report .ro, .report .rou {
	background-color: white;
}

.report .rou td {
	border-bottom: 1px solid black;
}

.report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
.report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
.report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

.report .nump {
	padding-left: 2em;
}

.report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
.report .text {
	text-align: left;
	white-space: normal;
}

.report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

.report .text .more {
	display: none;
}

.report .text .note {
	font-style: italic;
	font-weight: bold;
}

.report .text .small {
	width: 10em;
}

.report sup {
	font-style: italic;
}

.report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.4</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>2</ContextCount>
  <ElementCount>19</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>1</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>3</UnitCount>
  <MyReports>
    <Report instance="exfilingfees.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>995210 - Document - Submission</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ffd/role/document/submissionTable</Role>
      <ShortName>Submission</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="exfilingfees.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>995211 - Document - Offerings</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ffd/role/document/feesOfferingTable</Role>
      <ShortName>Offerings</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="exfilingfees.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>995215 - Document - Fees Summary</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ffd/role/document/feesSummaryTable</Role>
      <ShortName>Fees Summary</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="EX-FILING FEES" original="exfilingfees.htm">exfilingfees.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="2">http://xbrl.sec.gov/dei/2025</BaseTaxonomy>
    <BaseTaxonomy items="17">http://xbrl.sec.gov/ffd/2025</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>false</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>16
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "exfilingfees.htm": {
   "dts": {
    "inline": {
     "local": [
      "exfilingfees.htm"
     ]
    },
    "schema": {
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/lrr/arcrole/deprecated-2009-12-16.xsd",
      "https://www.xbrl.org/dtr/type/2024-01-31/types.xsd",
      "https://xbrl.sec.gov/dei/2025/dei-2025.xsd",
      "https://xbrl.sec.gov/ffd/2025/ffd-2025.xsd"
     ]
    }
   },
   "keyStandard": 19,
   "keyCustom": 0,
   "axisStandard": 1,
   "axisCustom": 0,
   "memberStandard": 1,
   "memberCustom": 0,
   "hidden": {
    "total": 6,
    "http://xbrl.sec.gov/ffd/2025": 4,
    "http://xbrl.sec.gov/dei/2025": 2
   },
   "contextCount": 2,
   "entityCount": 1,
   "segmentCount": 1,
   "elementCount": 107,
   "unitCount": 3,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/ffd/2025": 17,
    "http://xbrl.sec.gov/dei/2025": 2
   },
   "report": {
    "R1": {
     "role": "http://xbrl.sec.gov/ffd/role/document/submissionTable",
     "longName": "995210 - Document - Submission",
     "shortName": "Submission",
     "isDefault": "true",
     "groupType": "Fee_Exhibit",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": null,
     "uniqueAnchor": null
    },
    "R2": {
     "role": "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
     "longName": "995211 - Document - Offerings",
     "shortName": "Offerings",
     "isDefault": "false",
     "groupType": "Fee_Exhibit",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "2",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "ffd:PrevslyPdFlg",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "exfilingfees.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "ffd:PrevslyPdFlg",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "exfilingfees.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable",
     "longName": "995215 - Document - Fees Summary",
     "shortName": "Fees Summary",
     "isDefault": "false",
     "groupType": "Fee_Exhibit",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "3",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "ffd:TtlOfferingAmt",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "exfilingfees.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "ffd:TtlOfferingAmt",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "exfilingfees.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "ffd_AggtRedRpPricFsclYr": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AggtRedRpPricFsclYr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Redeemed or Repurchased Price, Fiscal Year",
        "terseLabel": "Aggregate Redeemed or Repurchased, FY"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AggtRedRpPricPrrFsclYr": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AggtRedRpPricPrrFsclYr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Redeemed or Repurchased Price, Prior Fiscal Year",
        "terseLabel": "Aggregate Redeemed or Repurchased, Prior FY"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AggtSalesPricFsclYr": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AggtSalesPricFsclYr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Sales Price, Fiscal Year",
        "terseLabel": "Aggregate Sales Price"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AmtRedCdts": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AmtRedCdts",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amount of Redemption Credits",
        "terseLabel": "Redemption Credits"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_AmtSctiesRcvd": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AmtSctiesRcvd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amount of Securities Received",
        "terseLabel": "Amount of Securities Received",
        "documentation": "Amount of securities to be received by the registrant (or cancelled upon issuance of securities to be registered on the form)"
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "ffd_AmtSctiesRegd": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "AmtSctiesRegd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amount of Securities Registered",
        "terseLabel": "Amount Registered",
        "documentation": "The amount of securities being registered."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CeasedOprsDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CeasedOprsDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ceased Operations Date",
        "terseLabel": "Ceased Operations Date"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_CfwdFormTp": {
     "xbrltype": "formTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdFormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward Form Type",
        "terseLabel": "Carry Forward Form Type",
        "documentation": "The Form Type of the prior shelf registration statement from which unsold securities are carried forward under 415(a)(6). This should be an EDGAR submission type (S-3, S-3/A, S-3ASR, etc.), which means there is a fixed set of possible responses. Note that while the XBRL response should be an EDGAR submission type, the human-readable Ex. 107 could include a simpler label (e.g., \"Form S-3\" in the human-readable and \"S-3ASR\" in the XBRL)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CfwdPrevslyPdFee": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdPrevslyPdFee",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward Previously Paid Fee",
        "terseLabel": "Filing Fee Previously Paid in Connection with Unsold Securities to be Carried Forward",
        "documentation": "The fee previously paid in connection with the securities being brought forward from the prior shelf registration statement on which unsold securities are carried forward under 415(a)(6)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CfwdPrrFctvDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdPrrFctvDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward Prior Effective Date",
        "terseLabel": "Carry Forward Initial Effective Date",
        "documentation": "The initial effective date of the prior shelf registration statement from which unsold securities are carried forward under 415(a)(6)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CfwdPrrFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CfwdPrrFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carry Forward File Number",
        "terseLabel": "Carry Forward File Number",
        "documentation": "The EDGAR File Number of the prior shelf registration statement from which unsold securities are carried forward under 415(a)(6). If the prior registration statement has a Securities Act File Number and an Investment Company Act File Number, the Securities Act File Number should be used."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_CmbndPrspctsItemAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CmbndPrspctsItemAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus Item [Axis]",
        "terseLabel": "Combined Prospectus",
        "documentation": "A sequence number (1, 2, 3...) used to distinguish different references to earlier prospectuses on a single fee bearing submission."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CmbndPrspctsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CmbndPrspctsLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus [Line Items]",
        "terseLabel": "Combined Prospectus:"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CmbndPrspctsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CmbndPrspctsTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus [Table]",
        "terseLabel": "Combined Prospectus Table"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_CombinedProspectusTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CombinedProspectusTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Combined Prospectus Table [N/A]",
        "terseLabel": "Combined Prospectus Table N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_CshPdByRegistrantInTx": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CshPdByRegistrantInTx",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Paid by Registrant in Transaction",
        "terseLabel": "Cash Consideration Paid",
        "documentation": "Amount of cash consideration paid by registrant in connection with the exchange or other transaction being registered (in a 457(f) calculation)."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "ffd_CshRcvdByRegistrantInTx": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "CshRcvdByRegistrantInTx",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Received by Registrant in Transaction",
        "terseLabel": "Cash Consideration Received",
        "documentation": "Amount of cash consideration received by registrant in connection with the exchange or other transaction being registered (in a 457(f) calculation)."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Central Index Key",
        "terseLabel": "Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r0"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "terseLabel": "Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r0"
     ]
    },
    "ffd_FeeAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Amount",
        "terseLabel": "Amount of Registration Fee",
        "documentation": "Total amount of registration fee (amount due after offsets)."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeExhibitTp": {
     "xbrltype": "feeExhibitTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeExhibitTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Exhibit Type",
        "terseLabel": "Fee Exhibit Type"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_FeeIntrstAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeIntrstAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Interest Amount",
        "terseLabel": "Interest Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Note",
        "terseLabel": "Fee Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeNoteMaxAggtOfferingPric": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeNoteMaxAggtOfferingPric",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Note Maximum Aggregate Offering Price",
        "terseLabel": "Fee Note MAOP"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeeRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeeRate",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Rate",
        "terseLabel": "Fee Rate",
        "documentation": "The rate per dollar of fees that public companies and other issuers pay to register their securities with the Commission."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeesOthrRuleFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeesOthrRuleFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fees, Other Rule [Flag]",
        "terseLabel": "Other Rule",
        "documentation": "Checkbox indicating whether filer is using a rule other than 457(a), 457(o), or 457(f) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FeesSummaryLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FeesSummaryLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Fees Summary [Line Items]",
        "terseLabel": "Fees Summary:"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FnlPrspctsFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FnlPrspctsFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Final Prospectus [Flag]",
        "terseLabel": "Final Prospectus"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_FormTp": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "FormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Form Type",
        "terseLabel": "Form Type"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_GnlInstrIIhiFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "GnlInstrIIhiFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "General Instruction II.H,I [Flag]",
        "terseLabel": "General Instruction II.H,I"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrCity": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrCity",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, City",
        "terseLabel": "City"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrStatOrCtryCd": {
     "xbrltype": "stateOrCountryCodeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrStatOrCtryCd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, State or Country Code",
        "terseLabel": "State or Country Code"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrStrt1": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrStrt1",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, Street 1",
        "terseLabel": "Street 1"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrStrt2": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrStrt2",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, Street 2",
        "terseLabel": "Street 2"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrBizAdrZipCd": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrBizAdrZipCd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Business Address, Zip Code",
        "terseLabel": "Zip Code"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_IssrNm": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "IssrNm",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuer Name",
        "terseLabel": "Issuer Name"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_MaxAggtOfferingPric": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "MaxAggtOfferingPric",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum Aggregate Offering Price",
        "terseLabel": "Maximum Aggregate Offering Price",
        "documentation": "The maximum aggregate offering price for the offering that is being registered."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_MaxOfferingPricPerScty": {
     "xbrltype": "nonNegativeDecimal4lItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "MaxOfferingPricPerScty",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum Offering Price per Security",
        "terseLabel": "Proposed Maximum Offering Price per Unit",
        "documentation": "The maximum offering price per share/unit being registered."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NetFeeAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NetFeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Fee Amount",
        "terseLabel": "Net Fee"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NetSalesAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NetSalesAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Sales Amount",
        "terseLabel": "Net Sales"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NrrtvDsclsr": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NrrtvDsclsr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Narrative Disclosure",
        "terseLabel": "Narrative Disclosure"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NrrtvMaxAggtAmt": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NrrtvMaxAggtAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Narrative Disclosure, Maximum Aggregate Offering Amount",
        "terseLabel": "Narrative - Max Aggregate Offering Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_NrrtvMaxAggtOfferingPric": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "NrrtvMaxAggtOfferingPric",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Narrative Disclosure, Maximum Aggregate Offering Price",
        "terseLabel": "Narrative - Max Aggregate Offering Price"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering [Axis]",
        "terseLabel": "Offering",
        "documentation": "A sequence number (1, 2, 3...) used to distinguish different security offerings on a single fee bearing submission."
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OfferingLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering [Line Items]",
        "terseLabel": "Offering:"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OfferingNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Note",
        "terseLabel": "Offering Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingSctyTitl": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingSctyTitl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Security Title",
        "terseLabel": "Security Class Title",
        "documentation": "The title of the class of securities being registered (for each class being registered)."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingSctyTp": {
     "xbrltype": "securityTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingSctyTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Security Type",
        "terseLabel": "Security Type",
        "documentation": "Type of securities: \"Asset-backed Securities\", \"ADRs/ADSs\", \"Debt\", \"Debt Convertible into Equity\", \"Equity\", \"Face Amount Certificates\", \"Limited Partnership Interests\", \"Mortgage Backed Securities\", \"Non-Convertible Debt\", \"Unallocated (Universal) Shelf\", \"Exchange Traded Vehicle Securities\", \"Other\""
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OfferingTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering [Table]",
        "terseLabel": "Offering:"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OfferingTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OfferingTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offering Table [N/A]",
        "terseLabel": "Offering Table N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_OffsetAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset [Axis]",
        "terseLabel": "Offset",
        "documentation": "A sequence number (1, 2, 3...) used to distinguish different offsets as applied to a fee bearing submission."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetClmInitlFilgDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetClmInitlFilgDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Claim Initial Filing Date",
        "terseLabel": "Initial Filing Date",
        "documentation": "The initial filing date of the earlier registration statement with which the earlier (offsetting) fee was paid for a claimed offset. If the offset fee was paid with an amendment, do not provide the amendment date under this element; instead, provide the date of the initial filing (i.e. the \"parent\" filing) ."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetClmdAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetClmdAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Claimed Amount",
        "terseLabel": "Fee Offset Claimed",
        "documentation": "The amount of offsetting fees being claimed."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetClmdInd": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetClmdInd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Claimed Indicator",
        "terseLabel": "Offset Claimed"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetExpltnForClmdAmt": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetExpltnForClmdAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Explanation for Claimed Amount",
        "terseLabel": "Explanation for Claimed Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetLineItems",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Offset:",
        "label": "Offset [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Note",
        "terseLabel": "Offset Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetPrrFeeAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Fee Amount",
        "terseLabel": "Fee Paid with Fee Offset Source",
        "documentation": "The fee previously paid from which an offset is being derived."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior File Number",
        "terseLabel": "File Number",
        "documentation": "The EDGAR File Number of the earlier registration statement with which the earlier (offsetting) fee was paid. If the offset filing for the offset has a Securities Act File Number and an Investment Company Act File Number, the Securities Act File Number should be used."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrFilerNm": {
     "xbrltype": "filerNameItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFilerNm",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Filer Name",
        "terseLabel": "Registrant or Filer Name",
        "documentation": "The name of the registrant that filed the earlier registration statement with which the earlier (offsetting) fee was paid."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrFormTp": {
     "xbrltype": "formTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrFormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Form Type",
        "terseLabel": "Form or Filing Type",
        "documentation": "The Form Type of the offset filing."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrNbOfUnsoldScties": {
     "xbrltype": "nonNegativeIntegerItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrNbOfUnsoldScties",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Unsold Number of Securities",
        "terseLabel": "Unsold Securities Associated with Fee Offset Claimed",
        "documentation": "The number of unsold securities registered on the prior registration statement that are associated with the claimed offset."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrSctyTitl": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrSctyTitl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Security Title",
        "terseLabel": "Security Title Associated with Fee Offset Claimed",
        "documentation": "The title of the class of securities from which offset fees were derived."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrSctyTp": {
     "xbrltype": "securityTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrSctyTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Security Type",
        "terseLabel": "Security Type Associated with Fee Offset Claimed",
        "documentation": "Type of securities: \"Asset-backed Securities\", \"ADRs/ADSs\", \"Debt\", \"Debt Convertible into Equity\", \"Equity\", \"Face Amount Certificates\", \"Limited Partnership Interests\", \"Mortgage Backed Securities\", \"Non-Convertible Debt\", \"Unallocated (Universal) Shelf\", \"Exchange Traded Vehicle Securities\", \"Other\""
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetPrrUnsoldOfferingAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetPrrUnsoldOfferingAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Prior Unsold Offering Amount",
        "terseLabel": "Unsold Aggregate Offering Amount Associated with Fee Offset Claimed",
        "documentation": "The aggregate offering amount of unsold securities registered on the prior registration statement that are associated with the claimed offset."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetSrcFilgDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetSrcFilgDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Source Filing Date",
        "terseLabel": "Filing Date",
        "documentation": "The filing date of the earlier registration statement with which the earlier (offsetting) fee was paid in an offset."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r8"
     ]
    },
    "ffd_OffsetTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Offset Payment:",
        "label": "Offset [Table]"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_OffsetTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "OffsetTableNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Offset Table [N/A]",
        "terseLabel": "Offset Table N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_PrevslyPdFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "PrevslyPdFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable",
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fee Previously Paid [Flag]",
        "terseLabel": "Fee Previously Paid"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_RegnFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "RegnFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Registration File Number",
        "terseLabel": "Registration File Number"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_RptgFsclYrEndDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "RptgFsclYrEndDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reporting Fiscal Year End Date",
        "terseLabel": "Reporting FY End Date"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_Rule011Flg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule011Flg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 0-11 [Flag]",
        "terseLabel": "Rule 0-11"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_Rule011a2OffsetFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule011a2OffsetFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Rule 0-11(a)(2) Offset",
        "label": "Rule 0-11(a)(2) Offset [Flag]"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_Rule415a6Flg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule415a6Flg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 415(a)(6) [Flag]",
        "terseLabel": "Rule 415(a)(6)",
        "documentation": "Checkbox indicating whether filer is claiming a 415(a)(6) carryforward."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "ffd_Rule429AggtOfferingAmt": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429AggtOfferingAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Aggregate Offering Amount",
        "terseLabel": "Maximum Aggregate Offering Price of Securities Previously Registered",
        "documentation": "The maximum aggregate offering amount of unsold securities registered on the prior registration statement that are carried forward under Rule 429. Only applicable if 457(o) was used in the fee calculation for the prior registration statement."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429CmbndPrspctsFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429CmbndPrspctsFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Combined Prospectus [Flag]",
        "terseLabel": "Rule 429",
        "documentation": "Checkbox indicating whether filer is using a combined prospectus under Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429EarlierFileNb": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429EarlierFileNb",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Earlier File Number",
        "terseLabel": "File Number",
        "documentation": "The Securities Act File Number of the earlier effective registration statement(s) from which securities may be offered and sold using the combined prospectus pursuant to Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429EarlierFormTp": {
     "xbrltype": "formTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429EarlierFormTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Earlier Form Type",
        "terseLabel": "Form Type",
        "documentation": "The Form Type of the earlier registration statement from which unsold securities are carried forward under Rule 429. This should be an EDGAR submission type (S-3, S-3/A, S-3ASR, etc.), which means there is a fixed set of possible responses. Note that while the XBRL response should be an EDGAR submission type, the human-readable Ex. 107 could include a simpler label (e.g., \"Form S-3\" in the human-readable and \"S-3ASR\" in the XBRL)."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429InitlFctvDt": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429InitlFctvDt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Initial Effective Date",
        "terseLabel": "Initial Effective Date",
        "documentation": "The filing date of the earlier registration statement from which unsold securities are carried forward under Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429NbOfUnsoldScties": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429NbOfUnsoldScties",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Number Of Unsold Securities",
        "terseLabel": "Amount of Securities Previously Registered",
        "documentation": "The number of securities registered on the prior registration statement that are carried forward under Rule 429."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "ffd_Rule429PrspctsNote": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429PrspctsNote",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Prospectus Note",
        "terseLabel": "Combined Prospectus Note"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Rule429SctyTitl": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429SctyTitl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Security Title",
        "terseLabel": "Security Class Title"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Rule429SctyTp": {
     "xbrltype": "securityTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule429SctyTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesByCmbndPrspctsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 429 Security Type",
        "terseLabel": "Security Type"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Rule457aFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457aFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(a) [Flag]",
        "terseLabel": "Rule 457(a)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(a) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "ffd_Rule457bOffsetFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457bOffsetFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(b) Offset [Flag]",
        "terseLabel": "Rule 457(b) Offset",
        "documentation": "Checkbox indicating whether filer is claiming an offset under Rule 457(b) or 0-11(a)(2)."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "ffd_Rule457fFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457fFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(f) [Flag]",
        "terseLabel": "Rule 457(f)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(f) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "ffd_Rule457oFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457oFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(o) [Flag]",
        "terseLabel": "Rule 457(o)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(o) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "ffd_Rule457pOffsetFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457pOffsetFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(p) Offset [Flag]",
        "terseLabel": "Rule 457(p) Offset",
        "documentation": "Checkbox indicating whether filer is claiming an offset under Rule 457(p)."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "ffd_Rule457rFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457rFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(r) [Flag]",
        "terseLabel": "Rule 457(r)"
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "ffd_Rule457sFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457sFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(s) Flag",
        "terseLabel": "Rule 457(s)"
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "ffd_Rule457uFlg": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Rule457uFlg",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 457(u) [Flag]",
        "terseLabel": "Rule 457(u)",
        "documentation": "Checkbox indicating whether filer is using Rule 457(u) to calculate the registration fee due."
       }
      }
     },
     "auth_ref": [
      "r11"
     ]
    },
    "ffd_Scties424iAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Scties424iAxis",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities, 424I [Axis]",
        "terseLabel": "Securities, 424I"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Scties424iLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Scties424iLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities, 424I [Line Items]",
        "terseLabel": "Securities, 424I:"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Scties424iTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Scties424iTable",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/securities424iTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities, 424I [Table]",
        "terseLabel": "Securities, 424I Table"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_Securities424iTableNa": {
     "xbrltype": "naItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "Securities424iNa",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities 424I [N/A]",
        "terseLabel": "Securities 424I N/A"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_SubmissionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "SubmissionLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Submission [Line Items]",
        "terseLabel": "Items"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_SubmissnTp": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "SubmissnTp",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/submissionTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Submission Type",
        "terseLabel": "Submission Type"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_TermntnCmpltnWdrwl": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TermntnCmpltnWdrwl",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOffsetTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Termination / Completion / Withdrawal Statement",
        "terseLabel": "Termination / Withdrawal Statement"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_TtlFeeAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlFeeAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Fee Amount",
        "terseLabel": "Total Fee Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlFeeAndIntrstAmt": {
     "xbrltype": "nonNegativeDecimal2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlFeeAndIntrstAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Fee and Interest Amount",
        "terseLabel": "Total Fee and Interest Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlOfferingAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlOfferingAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Offering Amount",
        "terseLabel": "Total Offering"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlOffsetAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlOffsetAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Offset Amount",
        "terseLabel": "Total Offset Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlPrevslyPdAmt": {
     "xbrltype": "nonNegative1TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlPrevslyPdAmt",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Previously Paid Amount",
        "terseLabel": "Previously Paid Amount"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TtlTxValtn": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TtlTxValtn",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesSummaryTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Transaction Valuation",
        "terseLabel": "Total Transaction Valuation"
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "ffd_TxValtn": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "TxValtn",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Transaction Valuation",
        "terseLabel": "Transaction Valuation"
       }
      }
     },
     "auth_ref": []
    },
    "ffd_ValSctiesRcvd": {
     "xbrltype": "nonNegative100TMonetary2ItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "ValSctiesRcvd",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Value of Securities Received",
        "terseLabel": "Value of Securities Received",
        "documentation": "Value of securities to be received by the registrant (or cancelled upon issuance of securities to be registered on the form)"
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "ffd_ValSctiesRcvdPerShr": {
     "xbrltype": "nonNegativeDecimal4lItemType",
     "nsuri": "http://xbrl.sec.gov/ffd/2025",
     "localname": "ValSctiesRcvdPerShr",
     "presentation": [
      "http://xbrl.sec.gov/ffd/role/document/feesOfferingTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Value of Securities Received, Per Share",
        "terseLabel": "Value of Securities Received, Per Share",
        "documentation": "Value per share of securities to be received by the registrant (or cancelled upon issuance of securities to be registered on the form). This is included in the explanation of 457(f) fee calculation."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r1": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230"
  },
  "r2": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "415",
   "Subsection": "a"
  },
  "r3": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "429"
  },
  "r4": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457"
  },
  "r5": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "b"
  },
  "r6": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "f"
  },
  "r7": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "o"
  },
  "r8": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "p"
  },
  "r9": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "r"
  },
  "r10": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "s"
  },
  "r11": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "457",
   "Subsection": "u"
  },
  "r12": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Subsection": "f",
   "Section": "457"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>17
<FILENAME>0001831651-26-000026-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001831651-26-000026-xbrl.zip
M4$L#!!0    ( +6;65Q^-T6 ;0L  )A3   0    97AF:6QI;F=F965S+FAT
M;>T<:W/:N/9[?X6NNW?;SN"'C#'82=C)ILE.9K-IIJ1S^VU'V#+HU@_6DA.X
MO_X>R9A'@ 12DI 6/C"V)1V=]SFRCG7XVS")T0W-.<O2HW?8L-XAF@99R-+>
MT;OCSLGY^;O?VF\._Z7K7W__?($^9D&1T%2@DYP204-TRT0?B3Y%_\GR;^R&
MH*N8B"C+$UTOAYUD@U'.>GV!;,MVJVY5:^Y;V L\EP2Z2URB-RTWU+N$4#WT
MO+KCN$'+;=FUGF]U,7'#H*L3KV7ICDLBO6O! &PW[29V&Y2ZW5KH6\1I6 Z)
M/,?#3NA%7>JZ3LORHB */,]JJ7G[ F@&NE-^I/6%&/BF>7M[:]S6C2SOF=CS
M/',H^VAE)Y\-Q5S'83>/55>6QBREDC&FR$G*)=U$ "=-H-72+1O0FP&B<QK,
M 8)[HY?=W L'-W1 NXZG<);C CWK,X"J[D/.EA%I6Q8VO_YUT0GZ-"$Z2[D@
M:4"K45$43D:I&2I,H4'2UIB AT:V"B%+(C0/6+:&;![VN+-KEHU5UY"RY3A
MPQP.C&>.C9OW85'VJ 8 C[[=TULV=PF?XKS0?TY39*OJZL<$C$:CJ?ZEH[4/
M^Y2$[<.$"H+D4)W^4[";(^TD2P48D'X]&L ,07EWI DZ%*92.K/]YLV;0\%$
M3-MT&#& WXLHY8=F^>S0+"%WLW#4/@S9#>)B%-,C+61\$).1GV8IA?G9T)<=
M:5Y>LC"DJ;J$]DLPXIP%Y?1#\9E&1UJ@@ZZF))&0*/-/4YAN= +(Y20^3T,Z
M_)..-,1 ,2(=.UK; A5JU<'T\*$Y!W7C23[3'N-2\<4EM$SF:&CM3C\C,4?7
M-.BG69SU&.7HCSPK!C5TG@;&XR8&'?;/P,*N!Y.I7)A*;ST>7*?H)HSS= 9D
M\SM!GE%Z.NRS+A,S0%M:^_2K?G9^<7[Y!SH[/>T\'OZG*.)47)-N3"_)9 )/
M:U^:QPM0S7D-RFE$<P@3((U%O9?VX'/E5V!>I.S#%Z#M1QIGR2"6=J6>]7.)
MEK0-OLK-R M=7AA#'H)E*$2FLX^1X5F1JSOEC?PB94+1P_L$&K7J>4()+W+:
M+N_*QD-SOJVZES 6X!6 PUU@8]?B?^E\W A66B1=FJ_ ;0"7ZT ;BU<!#'0\
M@4:5655W+)3W$:,Y4F*A2V/0R?F?\S9]=W %CM.>S #*VY IT89_44D."ADT
MJ52BTC'0G[1W/&12#-+B97RZS-H ?^;NT%R$-2%X,I^YC+@!3)"%$]P$R<5'
M2$S:,MF0 =AN3.!,VB9<"E=TK5JJ^VH2<X[MRZ5@/[44=H\-YKP5FC.1QX3X
M5 8IR1WV4'KV-\25F3'CP):P5.]3F4/Z=7<@#FY9*/H^MJQ_:ZI?^Y /"'BF
M;BX]1'E= ED$1?(>0.MF0F0)@ !HD@:=Q*R7^BI/U4IPU8@ XD[NO[74[R "
MFO6()"P>^>^N0=LYNJ2WZ'.6D/1=C0.#HK(/9_^C/L8 7]W>EN@[ $+J?$4.
MKM>!AM-A.:-BD4,=!UM>L]L-L4-:7<]SZE;8P*[5=(@3NG]CW+":6D6HBA (
M6\UYPA]%\C(.+@(2V<#']CR4 +11>;-9SG5)\*T'P3H-]3$3(_4[^"Z66G=8
MVKS+4ENJQ<GQQ<F7B^/K\T^7Z-,9FD9,='W\^\5I!VW +B!+R# YH2O+0;<E
M33$9<.I7%P=5 E9FX;H:=# /KP'8PVI+L(#$8]XI-I;-4\TVK%*[!=B0"*N9
MQ\T&-)F+S[V6X5G+FRP#J^>F@E?"!+0E"XZTNG:'LC&NEM$$=!'/8A:B2EH#
M$LJUH6\/A@C/*T%,HT7BLH$VQ][Q>%UV]FVCV008U3.EB^.'SZ)+=:/QD('B
M!HCAU[=@?@=KJHP]0]&KI](4X5AK3*7.#[B%ULZXA042E5N0:7])ILK-5\AS
MEREX+TE <O'XX94YZN7T/+C">XTR.AV20""YF$59A*;+6T0XZ@QH(#.Y$#&(
M^(*C$UB( /X_ACC5>A)A7X**1V/28;46H@X-BIP))M=<=PA]#O3MM=#?R-'?
M3:4FPGC>;,%S#->Q-TT6FH8M<\][<H5U(6''P(WE0S8&!5&Q[NX<5I;1J#>V
M PH;3K.U%5">X=2=K2'5LK\K;UQELF/E5VD0GLLEJR;EU>9;-DPQ$Q:&,5V>
M99:YEHZ-.E[#<7Z/@VFM%^U*)SA2 7Q)IK5G[W;8>Q(3SDMG?BU?FN\>JTL.
MK</L-8/.LW%:O;(H>3O[?T9I>7%"XJ"(U?85^ESL(N_75?.=Y/QQ AP2LYG5
MY%W&MA"I&]X:J!P,,LZDE/V<2G'?T ,I!MTV\&+:(O?3) !(CO&'O49L52.N
M\@Q$ 8KP%QFRI$@0JMZ[EP9YE;. HBN:HR]R]^%U:8N]UY;M:DNE),>]7DY[
M1-"EVK)7DI\\P$,X1Y]!.YZ#L64:^7,S7>6OX]@^\\Y(95$@BU5O91^_)JLH
M7\KU)W65*_<$'EA.E$]8*O="H9>]\/K\Z05T;WD%GBVON,KI#8]'5^%9W--0
M6=!UI+&A\",VI"$@%O-IJ<LFD"MWW0G$:%H:8FOMTW\*6/LLK=V8N]^203^/
M BVWZ 45VDES?J1,8<%:2;6NM=52%AVCDRQ)P!=T1!9\JZ%?U ZAA=& Y.B&
MQ 5% UE9((M:]A)_L:BYOL3!I_-/HI_+%?(*%R'R8N(A'*WM-)KO@P^(I"&2
ME_T/>SF_M&6?Y210$5H692DICTO.%B4?TH EX/./M//+LUE%.$X$6#VC'$)^
M.*\&:9'H82;T\5B0'_ )AEF55C2T=K-F6ZV:A^U*&RJ<MJ<.>XF#Q']9*7)9
M%;B!O&']57E[N=2"9;ET^HNR=;4VM@R[OI?KJY$K+*G%K&PWM.8F6'.]UG2:
M->QZ1M/=2_XY8O6BX,>EN1O('H*Y7"LOBK2EM56BANLM_"+B?.JE]>L0]=:,
M' 0-\7I#N_:D)Z_AEF,XK7648.G"7GY(]%3IV\^S?K_.!(DG+SQ1^;Z%O[!?
MM233Q[OON^?,2VUZ42-O/ES N+F9V_>8^;6()Y\N;&SNV-KQ./YT^K9_D?N8
MK/(!37Q4S,%XUX/._G5R%8[D5DOY-=Y+1Z(?+.U+3?+#NMK7Y-\G".V=S LX
MF4LJE(OY6&QO,_<)!/&=6KO'Z.DPVK]$V.KJ @SR<3F=_9B<;N&[K=W^VF+C
M+=/+3$SWT<$6*+!-GC6@=L]^D"\[;</#V_F6P7.,5LM[DEK_+4=4VW#K6XV6
M0'ES#;5<78/FVD]>U_HD/)R%\M^""Q:-=NB+L7'-D\A0EZ)\6M4,IL_AFJ,L
MVG8QXIJ8H<G>ZM)RR)=D6KG-+ O%JO*0H"P/X;(\1#Y_X+M*]/[7MRW;M@YF
MRTK4(WSP 8D^$2@A(RF23/I9D$>6RQ@?0M0#%ZE._'IH"MNR,;K(0!VO:9[(
M9_+,BALJCPA+T7L)8HR$?%!-;J"K(N<%*75"ED<@![NSTTX^)$3'@:C!,\;G
MZ^4Z@@BJ3BD#_#)@C3S?#,D#%@ (:%?"4EGW6N[S2&9)JY$C83$^YNP*#C#.
M"SK+ T4* >"@NKR(5>U>*0,(&$SPVO@.;%2>X1%RQ4<&VD  @#SKJPS?W$!;
M+/'[V5WQ-NJ!7\@5/X/S.(5Y$W5X'Q@TC4<R"U7*/"AR^2&!U.'*3N0NB6PB
MD\I4>9?/6EM$U<@[)JLJE";%2L&'>PQ8"@ZL*RTG KZ2'JUFZ@/>"DJ<W:*!
M+$WG5=.LYY(FF--!EHLII$O"0_*/[*;4B")52=O-"Y*/D%VOJ?,(:V"YH70&
M\AQ#!L1(_]0M.# -W&I(1ES.*OF3*:#E<6PE"BO=CK%>+GZW?&OG<_.'<NGU
MSY!99V7W;)!FCQ9:]#AW#QN:KA7*0U*F0T@7[*D0BT,>.I]H_%\>Z*<. 6S_
M'U!+ 0(4 Q0    ( +6;65Q^-T6 ;0L  )A3   0              "  0
H  !E>&9I;&EN9V9E97,N:'1M4$L%!@     !  $ /@   )L+      $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>exfilingfees_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2025"
  xmlns:ffd="http://xbrl.sec.gov/ffd/2025"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef
      xlink:href="https://xbrl.sec.gov/ffd/2025/ffd-2025.xsd"
      xlink:type="simple"/>
    <context id="c-1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001831651</identifier>
            <segment>
                <xbrldi:typedMember dimension="ffd:OfferingAxis">
                    <dei:lineNo>1</dei:lineNo>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-02-25</startDate>
            <endDate>2026-02-25</endDate>
        </period>
    </context>
    <context id="c-2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001831651</identifier>
        </entity>
        <period>
            <startDate>2026-02-25</startDate>
            <endDate>2026-02-25</endDate>
        </period>
    </context>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <dei:EntityCentralIndexKey contextRef="c-2" id="f-14">0001831651</dei:EntityCentralIndexKey>
    <dei:EntityRegistrantName contextRef="c-2" id="f-15">Shoals Technologies Group, Inc.</dei:EntityRegistrantName>
    <ffd:FormTp contextRef="c-2" id="f-16">S-8</ffd:FormTp>
    <ffd:SubmissnTp contextRef="c-2" id="f-17">S-8</ffd:SubmissnTp>
    <ffd:FeeExhibitTp contextRef="c-2" id="f-18">EX-FILING FEES</ffd:FeeExhibitTp>
    <ffd:OffsetTableNa contextRef="c-2" id="f-19">N/A</ffd:OffsetTableNa>
    <ffd:PrevslyPdFlg contextRef="c-1" id="f-1">false</ffd:PrevslyPdFlg>
    <ffd:OfferingSctyTp contextRef="c-1" id="f-2">Equity</ffd:OfferingSctyTp>
    <ffd:OfferingSctyTitl contextRef="c-1" id="f-3">Class A Common Stock, $0.00001 par value per share</ffd:OfferingSctyTitl>
    <ffd:FeesOthrRuleFlg contextRef="c-1" id="f-4">true</ffd:FeesOthrRuleFlg>
    <ffd:AmtSctiesRegd contextRef="c-1" decimals="INF" id="f-5" unitRef="shares">7208912</ffd:AmtSctiesRegd>
    <ffd:MaxOfferingPricPerScty contextRef="c-1" decimals="INF" id="f-6" unitRef="usd">10.23</ffd:MaxOfferingPricPerScty>
    <ffd:MaxAggtOfferingPric contextRef="c-1" decimals="INF" id="f-7" unitRef="usd">73747169.76</ffd:MaxAggtOfferingPric>
    <ffd:FeeRate contextRef="c-1" decimals="INF" id="f-8" unitRef="number">0.0001381</ffd:FeeRate>
    <ffd:FeeAmt contextRef="c-1" decimals="INF" id="f-9" unitRef="usd">10184.48</ffd:FeeAmt>
    <ffd:TtlOfferingAmt contextRef="c-2" decimals="INF" id="f-10" unitRef="usd">73747169.76</ffd:TtlOfferingAmt>
    <ffd:TtlFeeAmt contextRef="c-2" decimals="INF" id="f-11" unitRef="usd">10184.48</ffd:TtlFeeAmt>
    <ffd:NetFeeAmt contextRef="c-2" decimals="INF" id="f-12" unitRef="usd">10184.48</ffd:NetFeeAmt>
    <ffd:OfferingNote contextRef="c-1" id="f-13">&lt;div style="margin-bottom:10pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:2.911%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:94.889%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-right:-2.63pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:4.87pt;font-weight:400;line-height:120%;position:relative;top:-2.62pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-right:-2.63pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amount to be registered consists of&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"&gt; 7,208,912 &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"&gt;shares of Class A common stock of Shoals Technologies Group, Inc. (&#x201c;Common Stock&#x201d;) that may be offered or sold under the Shoals Technologies Group, Inc. 2021 Long-Term Incentive Plan (the &#x201c;Plan&#x201d;). Pursuant to Rule 416 under the Securities Act, this Registration Statement also covers an indeterminate number of additional shares that may be offered or issued under the Plan as a result of stock splits, stock dividends or similar transactions. &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-right:-2.63pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:4.87pt;font-weight:400;line-height:120%;position:relative;top:-2.62pt;vertical-align:baseline"&gt;(2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-right:-2.63pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Estimated solely for the purpose of determining the amount of the registration fee pursuant to Rule 457(h) and 457(c) under the Securities Act, based on the average of the high and low prices of the Common Stock as reported on the Nasdaq Composite on February 23, 2026, a date within five business days prior to the filing of this Registration Statement.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</ffd:OfferingNote>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
