/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

@import url('//fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900&display=swap');

/* TEMPORARY CSS */
body.layout-company-review-page .fa-fw
{
	width: 35px;
}
/* TEMPORARY CSS */




/* https://www.tutorialrepublic.com/faq/how-to-remove-outline-around-text-input-boxes-in-chrome-using-css.php */
/* https://support.google.com/chrome/thread/48974735 */
:focus
{
	outline: none;
}



/*Cancel out Astra's global CSS rule that makes all headings clear floats by default.*/
h1, h2, h3, h4, h5, h6
{
	clear: none;
}

table
{
	line-height: 1.5;
	border: none;
	border-collapse: collapse;
}

table tr
{
	border: none;
}

table th,
table td
{
	vertical-align: middle;
	border: 1px solid #dddddd;
}

table thead tr,
table tfoot tr
{
	background-color: #d9edf7;
}

table tbody tr:nth-child(even)
{
	background-color: #f9f9f9;
}

table tbody tr:nth-child(odd)
{
	background-color: #ffffff;
}

table caption
{
	font-weight: bold;
}

table img
{
	vertical-align: top;
}

table ul, table ol
{
	margin-left: 30px;
}

table .rating-stars
{
	line-height: 1;
}

.entry-content table td p
{
	margin-bottom: 15px;
}

.entry-content table p:last-of-type
{
	margin-bottom: 0px;
}

.elementor-tab-title a, .elementor-tab-title.elementor-tab-mobile-title
{
	font-weight: bold;
}

.elementor-post.elementor-grid-item.hentry
{
	max-width: 354px;
	width: 100%;
	margin: auto;
	height: 100%;
}

#primary article.ast-article-single.hentry
{
	margin-bottom: 15px;
}

#secondary
{
	margin-top: 0;
}

#secondary .widget ul
{
	list-style: disc;
}

body.layout-blog-archive-page .ast-article-post .entry-content,
body.layout-search-page .ast-article-post .entry-content,
body.layout-author-page .ast-article-post .entry-content,
body.layout-date-page .ast-article-post .entry-content,
body.layout-category-page .ast-article-post .entry-content,
body.layout-attachment-page .ast-article-post .entry-content
{
	display: none;
}

.ast-right-sidebar #primary
{
	border: none;
}

body.ast-right-sidebar #content #secondary
{
	padding: 0;
	margin: 0;
	border: none;
}

section.secondary-section .elementor-row .single-column .elementor-column-wrap
{
	padding-left: 0;
	padding-right: 0;
}

.menu-toggle, button, .ast-button, .button, input#submit, input[type="button"], input[type="submit"], input[type="reset"]
{
	color: #ffffff;
}

.intro-section .elementor-text-editor ul li,
.intro-section .elementor-text-editor ol li
{
	margin-bottom: 16px;
}

.secondary-section .two-column-list ul
{
	columns: 2;
	-webkit-columns: 2;
	-moz-columns: 2;
}

.ast-footer-overlay
{
	background-color: #222222;
}

.ast-footer-overlay p
{
	margin-bottom: 20px;
}

.ast-small-footer
{
	border: none;
}

footer.ast-custom-footer
{
	border-top: none;
	background-color: #222222;
	color: #dddddd;
	font-size: 14px;
	padding: 35px 0;
}

footer.ast-custom-footer .copyright-info p
{
	margin-bottom: 0;
}

footer.ast-custom-footer .nav-menu .menu-item a
{
	padding-top: 0;
	padding-bottom: 0;
}

footer.ast-custom-footer .nav-menu nav.elementor-nav-menu--dropdown
{
	background-color: #404040;
}

footer.ast-custom-footer .nav-menu nav.elementor-nav-menu--dropdown li a
{
	padding: 10px 20px;
    color: #dddddd;
}

footer.ast-custom-footer .footer-section > .elementor-container
{
	max-width: 100%;
	padding-left: 35px;
	padding-right: 35px;
	text-align: center;
}

footer.ast-custom-footer .elementor-widget-wrap
{
	align-content: center;
}

footer.ast-custom-footer .footer-section-2
{
	margin-top: 10px;
}

footer.ast-custom-footer .footer-section-2 .nav-menu .elementor-nav-menu
{
	align-items: center;
}

footer.ast-custom-footer .footer-section-2 .nav-menu li a
{
	font-size: 18px;
	font-weight: 600;
	color: #ffffff;
	text-transform: uppercase;
}

footer.ast-custom-footer .footer-section-2 .logo-and-menu-inner-section
{
	margin-bottom: 15px;
}

footer.ast-custom-footer .footer-section-2 .copyright-and-social-media-inner-section .social-follow-buttons-inner-container
{
	display: flex;
    padding: 6px;
    justify-content: flex-end;
}

footer.ast-custom-footer .footer-section-2 .logo-and-menu-inner-section .site-logo,
footer.ast-custom-footer .footer-section-2 .copyright-and-social-media-inner-section .copyright-info
{
	text-align: left;
}

footer.ast-custom-footer .footer-section-2 .copyright-and-social-media-inner-section .social-follow-buttons-outer-container .social-follow-button-container
{
	display: inline-block;
	padding: 8px;
    line-height: 1;
}

#primary
{
	padding: 0;
}

#ast-scroll-top
{
	font-size: 17px;
	font-weight: bold;
	width: 35px;
	height: 35px;
}

.main-header-bar, .ast-header-break-point .main-header-bar
{
	padding-top: 0;
	padding-bottom: 0;
}

header.site-header
{
	z-index: 10001;
}

.dialog-type-lightbox
{
	z-index: 10002;
}

#primary-menu > li
{
	margin: 10px 0;
}

.ast-header-break-point #primary-menu > li
{
	margin: 0;
}

.ast-header-break-point ul.main-header-menu li a
{
	color: #333333;
}

#primary-menu
{
	justify-content: center;
	align-items: center;
}

.product-section
{
	margin-top: 20px;
	margin-bottom: 40px;
}

.product-section .product-image
{
	background-image: linear-gradient(to right, #eceeef 0%, #ffffff 20%, #ffffff 80%, #eceeef 100%);
}

.product-section .product-image img, .featured-products-section .product-image img, .product-image-section img
{
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.product-section .review-name
{
	margin-top: 20px;
	margin-bottom: 10px;
}

.product-section .review-name h2, .product-section .review-name.elementor-widget-heading h2
{
	text-align: center;
	margin: 0;
	line-height: 1.3;
}

.product-section .product-name
{
	margin-top: 20px;
	margin-bottom: 20px;
}

.product-section .product-name h3, .product-section .product-name.elementor-widget-heading h3
{
	margin: 0;
	line-height: 30px;
}

.product-section .amazon-price-button p, .review-title-image p
{
	margin: 0;
}

.product-section .key-features p:first-of-type, .product-section .key-specifications p:first-of-type
{
	margin-bottom: 10px;
}

.featured-products-section
{
	margin-bottom: 30px;
}

.featured-products-section .elementor-row
{
	justify-content: center;
}

.featured-products-section .featured-product-column .elementor-widget-wrap
{
	background-color: #ffffff;
	border: 1px solid #e3e8ea;
	border-radius: 15px;
	box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, .1);
	padding: 10px;
	flex-direction: column;
}

.featured-products-section .featured-product-column .elementor-widget-wrap:hover
{
	border-color: #f2800d;
}

.featured-products-section .card-badge
{
	position: absolute;
	left: 0px;
	top: 0px;
	text-align: left;
}

.featured-products-section .card-badge img		
{		
	border-top-left-radius: 15px;		
}

/* Elementor Legacy: .featured-products-section .elementor-column-gap-narrow > .elementor-row > .elementor-column > .elementor-element-populated */
.featured-products-section .elementor-column-gap-narrow .elementor-column
{
	padding: 8px;
}

.featured-products-section .featured-product-column .product-name
{
	font-weight: bold;
	text-align: center;
}

.featured-products-section .featured-product-column .product-name p
{
	margin-bottom: 0;
}

.featured-products-section .star-rating
{
	margin: 15px 0 20px 0;
}

.featured-products-section .amazon-price-button
{
	margin: 10px 0 15px 0;
}

.featured-products-section .product-details
{
	margin: 0px 0 15px 0;
	flex-grow: 1;
}

.featured-products-section .product-details ul
{
	margin: 0 0 0 25px;
	font-size: 14px;
}

.featured-products-section .product-image p
{
	margin: 0;
}

/* Ideally this should be "1", but for backwards compatibility reasons, the product details element is also set to 1 */
.featured-products-section .cta-buttons-and-logos
{
	flex-grow: 999999;
}

.cta-buttons-and-logos
{
	border: 1px solid #E3E3E3;
	border-radius: 10px;
	text-align: center;
	background-color: #f7f7f7;
	max-width: 300px;
    display: block;
    margin: auto;
}

.cta-buttons-and-logos h4
{
	font-size: 20px;
	text-align: center;
	line-height: 1;
	background-color: #5ab22e;
	padding: 15px 0;
	margin: 0 0 15px 0;
	color: #ffffff;
	font-family: Roboto;
	border-radius: 10px 10px 0 0;
}

.cta-buttons-and-logos .cta-button-and-logo
{
	text-align: center;
	margin-bottom: 15px;
}

.cta-buttons-and-logos .cta-button-and-logo .cta-button,
.cta-buttons-and-logos .cta-button-and-logo .cta-logo-link
{
	display: inline-block;
	margin: 0 5px;
}

.cta-buttons-and-logos .cta-button-and-logo .cta-button
{
	font-size: 14px;
	padding: 6px 25px;
}

.cta-button-and-logo .cta-button
{
	
}

.review-page-name, .review-page-name
{
	margin-bottom: 25px!important;
}

.review-page-name h1, .review-page-name.elementor-widget-heading h1
{
	margin: 0;
}

.featured-products-heading h2, .featured-products-heading.elementor-widget-heading h2
{
	text-align: center;
	margin: 5px 0 30px 0;
}

.banner-and-featured-products-section .banner-image
{
	margin-bottom: -350px;
}

.banner-and-featured-products-section .banner-text, .banner-and-featured-products-section .banner-text p,
.banner-and-featured-products-section .banner-text h1, .banner-and-featured-products-section .banner-text h2,
.banner-and-featured-products-section .banner-text h3, .banner-and-featured-products-section .banner-text h4,
.banner-and-featured-products-section .banner-text h5, .banner-and-featured-products-section .banner-text h6
{
	text-align: center;
	color: #ffffff;
}

.banner-and-featured-products-section .banner-text h1
{
	font-size: 30px;
}

.banner-and-featured-products-section .featured-products-section .featured-product-column .elementor-widget-wrap
{

}

.banner-and-featured-products-section .featured-products-section
{
	padding: 20px;
}

.elementor-widget-wrap .faq-rich-snippet
{
	margin: 0;
	padding: 0;
}

.e--pointer-double-line .elementor-item:after, .e--pointer-double-line .elementor-item:before, .e--pointer-overline .elementor-item:after,
.e--pointer-overline .elementor-item:before, .e--pointer-underline .elementor-item:after, .e--pointer-underline .elementor-item:before
{
	display: none;
}

.rating-stars-container p
{
	margin: 10px 0 10px 0;
}

body.layout-product-list-post #content .ast-container,
body.layout-product-list-post .ast-advanced-headers-layout .ast-container
{
	max-width: 960px;
}

body.layout-product-list-post .review-title-image,
body.layout-wide-review-post .title-image
{
	margin-bottom: 30px!important;
}

body.layout-product-list-post .intro-section #ez-toc-container
{
	margin-bottom: 1.6em;
	width: 100%;
}

body.layout-product-list-post .banner-and-featured-products-section .featured-products-section .featured-product-column
{
	width: 100%;
	max-width: 320px;
}

body.layout-product-list-post .related-posts-section,
body.layout-wide-review-post .related-posts-section
{
	margin-bottom: 35px;
}

body.layout-product-cards-page #content,
body.layout-product-cards-page .ast-title-bar-wrap,
body.layout-blog-archive-page #content,
body.layout-blog-archive-page .ast-title-bar-wrap
{
	background-color: #f5f5f5;
}

body.layout-product-cards-page .widget,
body.layout-blog-archive-page .widget,
body.layout-solar-companies-main-page .widget
{
	background-color: #ffffff;
}

body.layout-product-cards-page h1
{
	margin-bottom: 15px;
}

body.layout-product-cards-page .post-cards
{
	margin-bottom: 40px;
}

body.layout-product-cards-page .lead-section .left-column
{
	margin-right: 30px;
	margin-top: 7px;
}

body.layout-state-search-page #content, body.layout-city-search-page #content
{
	background-color: #eeeeee;
}

body.layout-state-search-page h2.business-search-results-heading,
body.layout-city-search-page h2.business-search-results-heading
{
	margin: 0 0 30px 0;
}

body.layout-state-search-page .additional-info, .layout-city-search-page .additional-info
{
	border: 1px solid #eee;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
	background-color: #ffffff;
	padding: 20px;
}

body.layout-state-search-page .additional-info p, .layout-city-search-page .additional-info p
{
	margin-bottom: 15px;
}

body.layout-state-search-page .additional-info p:last-of-type, .layout-city-search-page .additional-info p:last-of-type
{
	margin-bottom: 0;
}

body.layout-state-search-page .additional-info-section
{
	border: 1px solid #eee;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
	padding: 20px;
	background-color: #ffffff;
	margin: 30px 0 30px 0;
}

body.layout-state-search-page .additional-info-section h2,
body.layout-state-search-page .additional-info-section h3,
body.layout-state-search-page .additional-info-section table
{
	margin-bottom: 20px;
}

body.layout-state-search-page .additional-info-section p:last-of-type
{
	margin-bottom: 0;
}

body.layout-solar-companies-main-page h2.business-search-results-heading
{
	max-width: 1140px;
	margin: 0 0 30px 0;
}

body.layout-solar-companies-main-page .business-search-results
{
	max-width: 1140px;
	margin: 0 auto 20px auto;
}

body.layout-solar-companies-main-page .content-section
{
	border: 1px solid #eee;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
}

body.layout-blog-archive-page .ast-title-bar-wrap .ast-advanced-headers-breadcrumb
{
	margin: 15px 0;
}

body.layout-blog-archive-page #content > .ast-container
{
	margin-bottom: 30px;
}

body.layout-blog-archive-page #primary article.ast-article-post h2.entry-title,
body.layout-search-page #primary article.ast-article-post h2.entry-title,
body.layout-author-page #primary article.ast-article-post h2.entry-title,
body.layout-date-page #primary article.ast-article-post h2.entry-title
{
	display: block;
	font-size: 21px;
}

body.layout-blog-archive-page #primary article.ast-article-post .post-content .entry-meta,
body.layout-search-page #primary article.ast-article-post .entry-meta,
body.layout-author-page #primary article.ast-article-post .entry-meta,
body.layout-date-page #primary article.ast-article-post .entry-meta
{
	font-size: 11px;
}

body.layout-blog-archive-page #primary article.ast-article-post.has-post-thumbnail .post-content > .post-thumb,
body.layout-search-page #primary article.ast-article-post.has-post-thumbnail .post-content > .post-thumb,
body.layout-author-page #primary article.ast-article-post.has-post-thumbnail .post-content > .post-thumb,
body.layout-date-page #primary article.ast-article-post.has-post-thumbnail .post-content > .post-thumb
{
	float: none;
	margin-bottom: 0;
}

body.layout-blog-archive-page #primary article.ast-article-post .post-content .entry-header,
body.layout-search-page #primary article.ast-article-post .post-content .entry-header,
body.layout-author-page #primary article.ast-article-post .post-content .entry-header,
body.layout-date-page #primary article.ast-article-post .post-content .entry-header
{
	margin-top: 20px;
}

body.layout-blog-archive-page #primary article.ast-article-post,
body.layout-search-page #primary article.ast-article-post,
body.layout-author-page #primary article.ast-article-post,
body.layout-date-page #primary article.ast-article-post,
body.layout-category-page #primary article.ast-article-post,
body.layout-attachment-page #primary article.ast-article-post
{
	max-width: 354px;
	width: 100%;
	margin: auto;
	height: 100%;
}

body.layout-blog-archive-page #primary article.ast-article-post .post-thumb a,
body.layout-search-page #primary article.ast-article-post .post-thumb a,
body.layout-author-page #primary article.ast-article-post .post-thumb a,
body.layout-date-page #primary article.ast-article-post .post-thumb a,
body.layout-category-page #primary article.ast-article-post .post-thumb a,
body.layout-attachment-page #primary article.ast-article-post .post-thumb a
{
	display: block;
}

body.layout-blog-archive-page #primary article.ast-article-post .post-thumb img,
body.layout-search-page #primary article.ast-article-post .post-thumb img,
body.layout-author-page #primary article.ast-article-post .post-thumb img,
body.layout-date-page #primary article.ast-article-post .post-thumb img,
body.layout-category-page #primary article.ast-article-post .post-thumb img,
body.layout-attachment-page #primary article.ast-article-post .post-thumb img
{
	width: 100%;
	height: auto;
	min-height: 174px;
	max-height: 174px;
	object-fit: contain;
}

body.layout-blog-archive-page #primary .ast-row,
body.layout-search-page #primary .ast-row,
body.layout-author-page #primary .ast-row,
body.layout-date-page #primary .ast-row,
body.layout-category-page #primary .ast-row,
body.layout-attachment-page #primary .ast-row
{
	display: grid;
	grid-template-columns: repeat(2,1fr);
	grid-column-gap: 29px;
	grid-row-gap: 35px;
}

body.layout-blog-archive-page #primary .ast-row::before,
body.layout-blog-archive-page #primary .ast-row::after,
body.layout-search-page #primary .ast-row::before,
body.layout-search-page #primary .ast-row::after,
body.layout-author-page #primary .ast-row::before,
body.layout-author-page #primary .ast-row::after,
body.layout-date-page #primary .ast-row::before,
body.layout-date-page #primary .ast-row::after,
body.layout-category-page #primary .ast-row::before,
body.layout-category-page #primary .ast-row::after,
body.layout-attachment-page #primary .ast-row::before,
body.layout-attachment-page #primary .ast-row::after
{
	display: none;
}

body.layout-blog-archive-page #primary article.ast-article-post .post-content,
body.layout-search-page #primary article.ast-article-post .post-content,
body.layout-author-page #primary article.ast-article-post .post-content,
body.layout-date-page #primary article.ast-article-post .post-content,
body.layout-category-page #primary article.ast-article-post .post-content,
body.layout-attachment-page #primary article.ast-article-post .post-content
{
	background-color: #ffffff;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
	border-radius: 3px;
	height: 100%;
}

body.layout-blog-archive-page #primary article.ast-article-post .entry-title,
body.layout-blog-archive-page #primary article.ast-article-post .entry-meta,
body.layout-search-page #primary article.ast-article-post .entry-title,
body.layout-search-page #primary article.ast-article-post .entry-meta,
body.layout-author-page #primary article.ast-article-post .entry-title,
body.layout-author-page #primary article.ast-article-post .entry-meta,
body.layout-date-page #primary article.ast-article-post .entry-title,
body.layout-date-page #primary article.ast-article-post .entry-meta,
body.layout-category-page #primary article.ast-article-post .entry-title,
body.layout-category-page #primary article.ast-article-post .entry-meta,
body.layout-attachment-page #primary article.ast-article-post .entry-title,
body.layout-attachment-page #primary article.ast-article-post .entry-meta
{
	display: inline-block;
	padding: 0 20px;
}

body.layout-blog-archive-page #primary article.ast-article-post .blog-layout-1,
body.layout-blog-archive-page #primary article.ast-article-post .blog-layout-2,
body.layout-blog-archive-page #primary article.ast-article-post .blog-layout-3,
body.layout-search-page #primary article.ast-article-post .blog-layout-1,
body.layout-search-page #primary article.ast-article-post .blog-layout-2,
body.layout-search-page #primary article.ast-article-post .blog-layout-3,
body.layout-author-page #primary article.ast-article-post .blog-layout-1,
body.layout-author-page #primary article.ast-article-post .blog-layout-2,
body.layout-author-page #primary article.ast-article-post .blog-layout-3,
body.layout-date-page #primary article.ast-article-post .blog-layout-1,
body.layout-date-page #primary article.ast-article-post .blog-layout-2,
body.layout-date-page #primary article.ast-article-post .blog-layout-3,
body.layout-category-page #primary article.ast-article-post .blog-layout-1,
body.layout-category-page #primary article.ast-article-post .blog-layout-2,
body.layout-category-page #primary article.ast-article-post .blog-layout-3,
body.layout-attachment-page #primary article.ast-article-post .blog-layout-1,
body.layout-attachment-page #primary article.ast-article-post .blog-layout-2,
body.layout-attachment-page #primary article.ast-article-post .blog-layout-3
{
	padding: 0;
}

body.layout-blog-archive-page.ast-separate-container #primary,
body.layout-search-page.ast-separate-container #primary,
body.archive.layout-author-page #primary, /* TODO: Why did I make this one different than the others? */
body.archive.layout-date-page #primary, /* TODO: Why did I make this one different than the others? */
body.layout-category-page.ast-separate-container #primary,
body.layout-attachment-page.ast-page-builder-template #primary
{
	padding-right: 60px;
}

body.layout-attachment-page #content > .ast-container,
body.layout-author-page #content > .ast-container,
body.layout-date-page #content > .ast-container,
body.layout-blog-archive-page #content > .ast-container
{
	max-width: 1140px;
}

body.archive.layout-author-page #secondary,
body.archive.layout-date-page #secondary
{
	padding: 0;
}

body.layout-attachment-page #comments
{
	margin: 15px 0 0 0;
	padding: 0;
}

body.layout-attachment-page #comment
{
	margin-bottom: 34px;
}

body.layout-attachment-page #comments .form-submit
{
	margin: 0;
	padding: 0;
}

body.layout-attachment-page .ast-title-bar-wrap
{
	display: none;
}

body.layout-search-page .ast-archive-description
{
	padding: 30px;
}

body.layout-state-search-page #primary,
body.layout-city-search-page #primary,
body.layout-solar-companies-main-page #primary
{
	margin-top: 30px!important;
	margin-bottom: 30px!important;
}

body.layout-solar-companies-main-page #secondary,
body.layout-city-search-page #secondary,
body.layout-state-search-page #secondary
{
	margin-top: 30px!important;
}

body.layout-state-search-page #secondary,
body.layout-city-search-page #secondary,
body.layout-blog-post #secondary,
body.layout-solar-companies-main-page #secondary,
body.layout-single-product-review-post #secondary
{
	/*position: sticky;
	top: 10px;*/
}

body.layout-blog-post .toc-and-author-bio-section .left-column,
body.layout-wide-review-post .lead-section .left-column
{
	padding-right: 10px;
}

body.layout-blog-post .toc-and-author-bio-section .right-column,
body.layout-wide-review-post .lead-section .right-column
{
	margin-top: 5px;
	padding-left: 10px;
}

body.layout-blog-post .lead-section #ez-toc-container,
body.layout-wide-review-post .lead-section #ez-toc-container
{
	width: 100%;
}

body.layout-blog-post .related-posts-outer-container
{
	margin-bottom: 30px;
}


/*
body.layout-blog-post-2 .comments-title
{
	font-weight: 900;
}

body.layout-blog-post-2 .ast-comment-avatar-wrap
{
	font-weight: 900;
}

body.layout-blog-post-2 .comments-count-wrapper
{
	background-color: #fafafa;
}

body.layout-blog-post-2 .ast-comment-list
{
	background-color: #fafafa;
}
*/

body.layout-blog-post-2 .lead-section
{
	background-color: #fafafa;
	padding: 45px 0;
	margin-bottom: 30px;
}

body.layout-blog-post-2 .lead-section .featured-image
{
	text-align: left;
}

body.layout-blog-post-2 .blog-content-section .left-column,
body.layout-blog-post-2 .lead-section .left-column
{
    padding-right: 60px;
    width: 790px;
}

body.layout-blog-post-2 .blog-content-section .right-column,
body.layout-blog-post-2 .lead-section .right-column
{
	width: 350px;
}

body.layout-blog-post-2 #comments
{
	padding: 0;
}

body.layout-state-search-page .additional-info h2
{
	margin: 0 0 15px 0;
}

body.layout-state-search-page .ast-title-bar-wrap,
body.layout-city-search-page .ast-title-bar-wrap,
body.layout-company-review-page .ast-title-bar-wrap,
body.layout-solar-companies-main-page .ast-title-bar-wrap
{
	margin-bottom: -35px;
	margin-top: 15px;
	margin-left: 20px;
	line-height: 20px;
	background: transparent;
	background-color: transparent;
}

body.layout-state-search-page .ast-advanced-headers-breadcrumb,
body.layout-city-search-page .ast-advanced-headers-breadcrumb,
body.layout-company-review-page .ast-advanced-headers-breadcrumb,
body.layout-solar-companies-main-page,
body.layout-solar-companies-main-page .ast-advanced-headers-breadcrumb
{
	margin: 0;
}

.solar-quiz-box
{
	background-image: url('../../plugins/business-directory/assets/sidebar-solar-quiz-bg-1.jpg');
	background-size: cover;
}

#primary .solar-quiz-box
{
	background-image: url('../../plugins/business-directory/assets/sidebar-solar-quiz-bg-2.jpg');
	background-size: cover;
}

.solar-quiz-box .widget-title, .solar-quiz-box .description
{
	color: #ffffff;
}

body.layout-company-review-page #primary
{
	width: 100%;
	max-width: 808px;
	padding: 0;
	margin: 30px 30px 20px 0!important;
}

body.layout-company-review-page #content #secondary
{
	width: 100%;
	max-width: 302px;
	margin: 30px 0 0 0;
	/*position: sticky;
	top: 10px;*/
}

body.layout-company-review-page .company-details
{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

body.layout-company-review-page .company-details > .left-column
{
	flex-basis: 290px;
	flex-grow: 0;
	flex-shrink: 0;
	padding: 10px;
}

body.layout-company-review-page .company-details > .right-column
{
	flex-basis: 458px;
	flex-shrink: 1;
	flex-grow: 1;
	padding: 10px 10px 10px 30px;
}

body.layout-company-review-page .company-details > .right-column p
{
	margin-bottom: 15px;
}

body.layout-company-review-page .company-details > .right-column .buttons-container
{
	display: flex;
	/*justify-content: center;*/
}

body.layout-company-review-page .company-details .featured-image-container
{
	text-align: center;
}

body.layout-company-review-page .review-area .full-column, body.layout-company-review-page .write-review-area .full-column
{
	padding: 10px;
}

body.layout-company-review-page .review-area, body.layout-company-review-page .write-review-area, body.layout-company-review-page .company-details
{
	background-color: #ffffff;
	width: 100%;
	max-width: 808px;
	padding: 20px;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, .15);
	margin: 0 30px 30px 0;
	position: relative;
	clear: both;
	float: left;
}

body.layout-company-review-page .review-area h2
{
	margin-bottom: 0;
	font-size: 24px;
}

body.layout-company-review-page .write-review-area h3
{
	margin-bottom: 20px;
	font-size: 24px;
}

body.layout-company-review-page .review-area .sort-controls, body.layout-company-review-page .write-review-area .sort-controls
{
	margin-bottom: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

body.layout-company-review-page .review-area hr
{
	margin: 0 0 15px 0;
}

body.layout-company-review-page .review-area .glsr-reviews-wrap hr:last-of-type
{
	margin: 0 0 5px 0;
}

body.layout-company-review-page .review-area .write-review-button
{
	font-size: 12px;
	padding: 8px 10px;
	margin: 20px 0 25px 0;
	background-color: #5ab22e;
	color: #ffffff;
	border-radius: 10px;
	font-family: 'Roboto', Calibri, sans;
	letter-spacing: 1px;
	display: table;
	text-align: center;
	text-transform: uppercase;
	font-weight: 700;
}

body.layout-company-review-page .review-area .glsr-review-author
{
	font-weight: bold;
	margin-bottom: 15px;
}

body.layout-company-review-page .review-area .glsr-review-rating
{
	display: block;
	margin: 0 0 15px 0;
	line-height: 20px;
}

body.layout-company-review-page .review-area .glsr-review-date
{
	font-style: normal;
	margin-bottom: 15px;
}

body.layout-company-review-page .review-area .button-text
{
	margin: 5px;
	vertical-align: middle;
	font-size: 14px;
	line-height: 14px;
}

body.layout-company-review-page .review-area .glsr-default .glsr-review, body.layout-company-review-page .write-review-area .glsr-default .glsr-review
{
	margin-bottom: 20px;
}

body.layout-company-review-page .review-area .glsr-default .glsr-review
{
	margin: 0px;
}

body.layout-company-review-page .review-area .glsr-reviews-wrap p
{
	margin: 0;
}

body.layout-company-review-page .review-area .glsr-reviews-wrap .glsr-review-content p
{
	line-height: 30px;
	margin-bottom: 15px;
}

body.layout-company-review-page .glsr-bar-background-percent
{
	background-color: #5ab22e;
}

body.layout-company-review-page .rating-summary-heading
{
	margin-bottom: 15px;
	text-align: center;
}

body.layout-company-review-page .company-details .glsr-summary-wrap
{
	text-align: center;
}

body.layout-company-review-page .company-details .glsr-summary-stars
{
	margin: 0;
}

body.layout-company-review-page .company-details .glsr-summary .glsr-summary-text
{
	margin-bottom: 20px;
	font-size: 14px;
	font-weight: bold;
}

body.layout-company-review-page .company-details .glsr-summary-stars .glsr-star
{
	width: 24px;
	height: 24px;
	background-size: 24px;
	margin: 0 2px;
}

body.layout-company-review-page .company-details .glsr-summary-percentage
{
	border-spacing: 0 15px; /* The rating summary rows use display: table-row, which keeps their columns the same width but messes up margin/padding */
	margin-bottom: 0;
}

body.layout-company-review-page .write-review-area .glsr-button
{
	font-size: 16px;
	padding: 8px 16px;
	margin: 25px 0 0 0;
	background-color: #5ab22e;
	color: #ffffff;
	border-radius: 10px;
	font-family: 'Roboto', Calibri, sans;
	letter-spacing: 1px;
	display: table;
	text-align: center;
	text-transform: uppercase;
	font-weight: 700;
	white-space: normal;
}

body.layout-company-review-page .company-details .get-free-quote-button
{
	font-size: 20px;
	padding: 5px 15px;
	margin: 0;
	background-color: #f2800d;
	color: #ffffff;
	border-radius: 10px;
	font-family: 'Roboto', Calibri, sans;
	letter-spacing: 1px;
	display: table;
	text-align: center;
	text-transform: uppercase;
	font-weight: 700;
	width: 100%;
	max-width: 270px;
	line-height: 35px;
}

body.layout-company-review-page .company-details .button-text
{
	margin: 5px;
	vertical-align: middle;
}

body.layout-company-review-page #content, body.layout-solar-companies-main-page #content
{
	background-color: #eeeeee;
}

body.layout-company-review-page #primary h1
{
	margin: 0 10px 15px 10px;
	width: 100%;
}

body.layout-company-review-page .solar-quiz-box .get-free-quote-button
{
	background-color: #f2800d;
}

body.layout-single-product-review-post .amazon-price-button-section
{
	margin-bottom: 30px;
}

body.layout-single-product-review-post .review-title
{
	margin-bottom: 35px;
}

body.layout-single-product-review-post .lead-section
{
	margin-bottom: 30px;
}

body.layout-single-product-review-post .lead-section .right-column
{
	padding-left: 60px;
}

body.layout-single-product-review-post .lead-section .review-toc, body.layout-single-product-review-post .lead-section #ez-toc-container
{
	width: 100%;
	margin-bottom: 0;
}

body.layout-single-product-review-post .pros-and-cons-section ul, body.layout-single-product-review-post .key-details-section ul
{
	margin: 0 0 0 20px;
}

body.layout-single-product-review-post .pros-and-cons-section .pros-heading, body.layout-single-product-review-post .pros-and-cons-section .cons-heading
{
	margin-bottom: 15px;
}

body.layout-single-product-review-post .pros-and-cons-section li, body.layout-single-product-review-post .key-details-section li,
body.layout-single-product-review-post .key-details-section p
{
	margin-bottom: 10px;
}

body.layout-single-product-review-post .pros-and-cons-section li:last-of-type, body.layout-single-product-review-post .key-details-section li:last-of-type,
body.layout-single-product-review-post .key-details-section p:last-of-type
{
	margin-bottom: 0;
}

body.layout-single-product-review-post .pros-and-cons-section .left-column, body.layout-single-product-review-post .pros-and-cons-section .right-column
{
	border-style: solid;
	border-width: 1px 1px 1px 1px;
	border-color: #e3e3e3;
	width: 48%;
	padding: 0;
}

body.layout-single-product-review-post .pros-and-cons-section .elementor-widget-wrap
{
	padding: 20px 15px 15px 15px;
}

body.layout-single-product-review-post .pros-and-cons-section .left-column .elementor-column-wrap,
body.layout-single-product-review-post .pros-and-cons-section .right-column .elementor-column-wrap
{
	border-top-width: 5px;
	border-top-style: solid;
}

body.layout-single-product-review-post .pros-and-cons-section
{
	margin-bottom: 30px;
}

body.layout-single-product-review-post .pros-and-cons-section .left-column
{
	margin-right: 4%;
}

body.layout-single-product-review-post .key-features-heading, body.layout-single-product-review-post .key-specifications-heading
{
	margin-bottom: 15px;
}

body.layout-single-product-review-post .key-details-section
{
	margin-bottom: 30px;
}

body.layout-single-product-review-post .key-details-section .elementor-tab-title
{
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
}

body.layout-single-product-review-post .key-details-section .elementor-tab-title.elementor-active
{
	color: #f2800d;
}

body.layout-single-product-review-post .related-posts-outer-container
{
	margin-top: 10px;
	margin-bottom: 30px;
}

body.layout-wide-review-post #content > .ast-container
{
	max-width: none;
	margin: 0;
}

body.layout-wide-review-post .ast-advanced-headers-layout .ast-container,
body.layout-wide-review-post .elementor-section.elementor-section-boxed > .elementor-container,
body.layout-wide-review-post .comments-area
{
	max-width: 1200px;
}

body.layout-wide-review-post .related-posts-outer-container
{
	max-width: 1200px;
	margin: auto;
}

body.layout-wide-review-post .comments-area
{
	padding: 0;
}

body.layout-wide-review-post .text-section .section-heading
{
	margin-bottom: 5px;
}

body.layout-wide-review-post .text-section .star-rating
{
	margin-bottom: 5px;
}

body.layout-wide-review-post .text-section .star-rating .rating-stars
{
	text-align: left;
}

body.layout-wide-review-post .review-banner-section
{
	background: rgb(67,189,223);
	background: linear-gradient(0deg, rgba(53,156,244,1) 0%, rgba(67,189,223,1) 100%);
	padding: 50px 20px 95px 20px;
}

body.layout-wide-review-post .review-banner-section .left-column
{
	width: 100%;
	max-width: 550px;
}

body.layout-wide-review-post .review-banner-section .right-column
{
	width: 100%;
	max-width: 650px;
}

body.layout-wide-review-post .review-banner-section .rating-stars-text
{
	color: #ffffff;
	line-height: 1;
    margin: 20px 15px 5px 15px;
    font-size: 24px;
}

body.layout-wide-review-post .primary
{
	font-size: 16px;
}

body.layout-wide-review-post .lead-section .author-bio
{
	line-height: 1.5;
}

body.layout-wide-review-post .lead-section .author-bio img
{
	border-radius: 25px;
}

body.layout-wide-review-post .lead-section
{
	padding: 30px 30px 45px 30px;
}

body.layout-wide-review-post .comparison-table-section,
body.layout-wide-review-post .pros-and-cons-section,
body.layout-wide-review-post .info-section
{
	padding: 30px;
}

body.layout-wide-review-post .lead-section,
body.layout-wide-review-post .comparison-table-section
{
	background-color: #f2f2f2;
}

body.layout-wide-review-post .pros-and-cons-section,
body.layout-wide-review-post .info-section
{
	background-color: #ffffff;
}

body.layout-wide-review-post .comparison-table-section .rating-row .rating-stars-container-with-text
{
	margin-top: -16px;
}

body.layout-wide-review-post .comparison-table-section .rating-row .rating-stars-text
{
	font-size: 13px;
	color: #999;
}

/*
body.layout-wide-review-post .info-section
{
	font-size: 16px;
}
*/

/* Elementor legacy: body.layout-wide-review-post .info-section .elementor-row .left-column .elementor-column-wrap */
body.layout-wide-review-post .info-section .elementor-container .left-column
{
	padding: 5px 20px 0 20px;
}

/* Elementor legacy: body.layout-wide-review-post .info-section .elementor-row .right-column .elementor-column-wrap */
body.layout-wide-review-post .info-section .elementor-container .right-column
{
	padding: 15px 20px 20px 20px;
}

body.layout-wide-review-post .info-section .right-column .elementor-widget-sidebar
{
	position: sticky;
	top: 0;
}

/*
body.layout-wide-review-post .info-section .elementor-column.thumbnails .elementor-widget-wrap
{
	justify-content: center;
}

body.layout-wide-review-post .info-section .elementor-column.thumbnails .elementor-widget-image
{
	width: auto;
	box-shadow: 0px 4px 30px rgba(0, 0, 0, 0.07);
	margin: 0 5px 10px 5px;
}
*/

body.layout-wide-review-post .lead-section .elementor-text-editor > p:last-child,
body.layout-wide-review-post .info-section .elementor-text-editor > p:last-child
{
	margin-bottom: 0;
}

body.layout-wide-review-post .info-section .rating-stars-container
{
	display: flex;
    align-items: center;
    flex-wrap: wrap;
}

body.layout-wide-review-post .info-section .rating-stars-text
{
	color: #B6B6B6;
    text-align: center;
    margin: 5px 15px;
	font-weight: 500;
	font-size: 16px;
}

body.layout-wide-review-post .lead-section > .elementor-container
{
	margin: -105px auto 0 auto;
	background-color: #ffffff;
	padding: 50px 40px 40px 40px;
	border-radius: 20px;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
}

body.layout-wide-review-post .pros-and-cons-section
{
	font-size: 14px;
}

body.layout-wide-review-post .pros-and-cons-section .elementor-column
{
	margin: 0 30px 15px 30px;
}

body.layout-wide-review-post .pros-and-cons-section > .elementor-container
{
	max-width: 1000px;
	margin: 0 auto;
}

body.layout-wide-review-post .pros-and-cons-section ul
{
	margin: 0;
	padding: 20px;
}

body.layout-wide-review-post .pros-and-cons-section .pros-column ul
{
	list-style: disc url('https://www.friendsoftheasianelephant.org/wp-content/uploads/pros-list-marker.png');
}

body.layout-wide-review-post .pros-and-cons-section .cons-column ul
{
	list-style: disc url('https://www.friendsoftheasianelephant.org/wp-content/uploads/cons-list-marker.png');
}

body.layout-wide-review-post .pros-and-cons-section .elementor-column li:last-child
{
	margin-bottom: 0;
}

body.layout-wide-review-post .pros-and-cons-section .pros-column .section-text .elementor-text-editor
{
	border: 1px dashed #09BCAF;
	box-sizing: border-box;
	border-radius: 18px;
}

body.layout-wide-review-post .pros-and-cons-section .cons-column .section-text .elementor-text-editor
{
	border: 1px dashed #00C8F1;
	box-sizing: border-box;
	border-radius: 18px;
}

body.layout-wide-review-post .review-banner-section .left-column,
body.layout-wide-review-post .review-banner-section .right-column
{
	align-items: center;
}

body.layout-wide-review-post .lead-section .review-title h1
{
	color: #FE0169;
	font-size: 36px;
	font-weight: bold;
}

body.layout-wide-review-post .pros-and-cons-section .pros-heading,
body.layout-wide-review-post .pros-and-cons-section .cons-heading,
body.layout-wide-review-post .comparison-table-section .section-heading
{
	margin-bottom: 30px;
}

body.layout-wide-review-post .member-information-section .section-heading
{
	margin-bottom: 20px;
}

body.layout-wide-review-post .comparison-table-section .section-heading h2,
body.layout-wide-review-post .info-section .section-heading h2,
body.layout-wide-review-post .pros-and-cons-section .cons-column .cons-heading h2
{
	color: #00C8F1;
	font-size: 32px;
	font-weight: bold;
}

body.layout-wide-review-post .pros-and-cons-section .pros-column .pros-heading h2
{
	color: #09BCAF;
	font-size: 32px;
	font-weight: bold;
}

body.layout-wide-review-post .comparison-table-section .section-heading h2,
body.layout-wide-review-post .pros-and-cons-section .pros-heading h2,
body.layout-wide-review-post .pros-and-cons-section .cons-heading h2
{
	text-align: center;
}

body.layout-wide-review-post .pros-and-cons-section ul li
{
	margin-bottom: 10px;
	padding: 0 0 0 10px;
}

body.layout-wide-review-post .review-banner-section
{
	text-align: center;
}

body.layout-wide-review-post .review-banner-section .product-logo
{
	margin-bottom: 12px;
}

body.layout-wide-review-post .review-banner-section .star-rating
{
	margin-bottom: 5px;
}

body.layout-wide-review-post .review-banner-section .rating-stars,
body.layout-wide-review-post .info-section .rating-stars
{
	background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #F2F2F2 100%), #FFFFFF;
	display: inline-flex;
	padding: 7px 17px;
	border-radius: 20px;
	box-shadow: 1px 1px 7px rgba(0, 0, 0, 0.25);
}

body.layout-wide-review-post .review-banner-section .rating-stars img,
body.layout-wide-review-post .info-section .rating-stars img
{
	padding: 5px 5px;
	box-sizing: content-box;
}

body.layout-wide-review-post .review-banner-section .text-rating
{
	font-size: 16px;
	color: #ffffff;
}

body.layout-wide-review-post .review-banner-section .text-rating p
{
	margin-bottom: 0;
}

body.layout-wide-review-post .review-banner-section .laptop-screenshot
{
	width: 556px;
	height: 305px;
}

body.layout-wide-review-post .review-banner-section .laptop-screenshot .elementor-image
{
	position: absolute;
	z-index: 9001;
}

body.layout-wide-review-post #ez-toc-container
{
	border: 1px dashed #cccccc;
    border-radius: 5px;
}

body.layout-wide-review-post #ez-toc-container .ez-toc-title-container
{
	display: none;
}

body.layout-wide-review-post #ez-toc-container ul.ez-toc-list
{
	color: #00C8F1;
	margin-left: 5px;
}

body.layout-wide-review-post #ez-toc-container ul.ez-toc-list li
{
	overflow: visible;
	list-style: disc inside;
	font-weight: 500;
}

body.layout-wide-review-post #ez-toc-container ul.ez-toc-list li:not(:last-of-type)
{
	margin-bottom: 3px;
}

body.layout-wide-review-post #ez-toc-container ul.ez-toc-list a
{
	color: #00C8F1;
}

body.layout-wide-review-post #ez-toc-container ul.ez-toc-list a:hover
{
	color: #000000;
}

body.layout-home-page-2 #primary
{
	margin: 0!important;
}

body.layout-home-page-2 .banner-section
{
	/*
    background: rgb(51,51,51);
    background: linear-gradient(215deg, #363636 35%, #2c2c2c 35%);
	*/
}

/* Elementor legacy: body.layout-home-page-2 .banner-section .elementor-row */
body.layout-home-page-2 .banner-section
{
    padding: 125px 0 125px 0;
}

body.layout-home-page-2 .banner-section .elementor-container
{
	max-width: 800px;
	padding: 30px;
	margin: 0 auto 0 auto;
	background-color: #C91D2B;
	box-shadow: 0px 4px 30px rgba(0, 0, 0, 0.65);
}

body.layout-home-page-2 .banner-section .left-column .elementor-widget-wrap
{
    position: relative;
}


body.layout-home-page-2 .banner-section .left-column .portrait-image
{
    position: absolute;
    left: -155px; /* Half the negative width of the 310x480 .portrait image */
    bottom: -155px; /* The negative bottom padding of the .elementor-container (30px) plus the negative bottom padding of the .banner-section (125px) */
    width: max-content;
    height: auto;
}

body.layout-home-page-2 .banner-section .right-column .elementor-widget-wrap h3
{
	color: #ffffff;
	text-transform: uppercase;
	font-weight: 700;
	font-size: max(min(82px, 10vw), 14px);
	line-height: 1;
	text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

body.layout-home-page-2 .banner-section .right-column .elementor-widget-wrap h2
{
	color: #2C2C2C;
	font-weight: 700;
	font-size: max(min(21.2px, 2.66666vw), 14px);
	line-height: 1;
}

body.layout-home-page-2 .banner-section .right-column .elementor-widget-wrap h1
{
	color: #ffffff;
	font-weight: 700;
	font-size: max(min(48px, 5.7777vw), 14px);
	line-height: 1;
	text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
	letter-spacing: 0.11em;
}

body.layout-home-page-2 .small-cta-banner-section
{
	background-color: #fafafa;
}

body.layout-home-page-2 .small-cta-banner
{
	display: flex;
    justify-content: center;
    align-items: center;
	text-align: center;
	max-width: 960px;
	padding: 25px 40px;
	background-color: #FFFFFF;
	box-shadow: 0px 3px 25px rgba(0, 0, 0, 0.1);
	border-radius: 2px;
	margin: 50px auto;
}

body.layout-home-page-2 .small-cta-banner p
{
	margin: 0;
	font-size: 25px;
	line-height: 1;
}

body.layout-home-page-2 .small-cta-banner span
{
	vertical-align: middle;
}

body.layout-home-page-2 .small-cta-banner .spacer
{
	margin: 0 12px;
}

/*
body.layout-home-page-2 .small-cta-banner .cta-button
{
	display: inline-block;
	font-size: 18px;
	background-color: #0FBD58;
	padding: 20px 45px;
}
*/


/* body.layout-home-page-2 .posts-and-about-section > .elementor-container > .elementor-row */
body.layout-home-page-2 .posts-and-about-section > .elementor-container
{
	margin: 60px auto;
}

body.layout-home-page-2 .posts-and-about-section .posts-element .elementor-posts-container
{
	grid-template-columns: auto;
}

body.layout-home-page-2 .posts-and-about-section .posts-element .elementor-post
{
	display: flex;
	max-width: 650px;
}

body.layout-home-page-2 .posts-and-about-section .posts-element .elementor-post .elementor-post__thumbnail__link
{
	flex-basis: 190px;
	flex-grow: 0;
	flex-shrink: 0;
	margin: 0 20px 0 0;
}

body.layout-home-page-2 .posts-and-about-section .posts-element .elementor-post .elementor-post__thumbnail
{
	display: block;
	position: static;
	padding: 0;
	top: auto;
	right: auto;
	bottom: auto;
	left: auto;
}

body.layout-home-page-2 .posts-and-about-section .posts-element .elementor-post .elementor-post__thumbnail img
{
	display: block;
	position: static;
	padding: 0;
	top: auto;
	right: auto;
	left: auto;
	transform: none;
}

body.layout-home-page-2 .posts-and-about-section .posts-element .elementor-post .elementor-post__text
{
	flex-shrink: 1;
}

body.layout-home-page-2 .posts-and-about-section .posts-element .elementor-post .elementor-post__text .elementor-post__title
{
	margin-bottom: 1px;
}

body.layout-home-page-2 .posts-and-about-section .posts-element .elementor-post .elementor-post__excerpt p
{
	color: #000000;
}

body.layout-home-page-2 .posts-and-about-section .posts-element .elementor-post .elementor-post__read-more
{
	font-size: 14px;
	text-decoration: underline;
    font-weight: 700;
}

body.layout-home-page-2 .posts-and-about-section .posts-element .elementor-post .elementor-post-date
{
	font-size: 14px;
	font-style: italic;
}

body.layout-home-page-2 .posts-and-about-section .about-element
{
	padding: 25px 30px;
	background-color: #ffffff;
	box-shadow: 0px 5px 25px rgba(0, 0, 0, 0.15);
}

body.layout-home-page-2 .posts-and-about-section .about-element img.about-banner-image
{
	width: calc(100% + 60px);
    max-width: calc(100% + 60px);
    margin: -25px -30px 0 -30px;
}

body.layout-home-page-2 .posts-and-about-section .about-element p
{
	font-size: 14px;
	line-height: 20px;
	color: #6c6c6c;
}

body.layout-home-page-2 .posts-and-about-section .social-follow-buttons-outer-container
{
	display: flex;
	padding: 6px;
	justify-content: space-around;
	align-items: center;
	background-color: #f7f7f7;
}

body.layout-home-page-2 .posts-and-about-section .social-follow-buttons-outer-container .social-follow-button-container
{
    padding: 8px;
    display: inline-block;
    line-height: 1;
}

body.layout-home-page-2 .posts-and-about-section .social-follow-buttons-outer-container .social-follow-buttons-text
{
	padding: 8px;
	color: #6a6a6a;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
}

body.layout-home-page-2 .posts-and-about-section .social-follow-buttons-outer-container .social-follow-button-anchor-tag
{
	display: inline-block;
	line-height: 1;
}

/* Elementor Legacy: body.layout-home-page-2 .video-and-testimonials-section > .elementor-container > .elementor-row */
body.layout-home-page-2 .video-and-testimonials-section > .elementor-container
{
	padding: 60px 0;
}

body.layout-home-page-2 .video-and-testimonials-section
{
	background-color: #fafafa;
}

body.layout-home-page-2 .video-and-testimonials-section .video-column .elementor-widget-video
{
	box-shadow: 0px 5px 25px rgba(0, 0, 0, 0.15);
}

body.layout-home-page-2 .video-and-testimonials-section .cta-button
{
	margin: auto;
    display: table;
}

body.layout-home-page-2 .video-and-testimonials-section .testimonials-element
{
	padding: 25px 30px;
	background-color: #ffffff;
	box-shadow: 0px 5px 25px rgba(0, 0, 0, 0.15);
}

body.layout-home-page-2 .video-and-testimonials-section .testimonials-element .testimonial
{
	display: flex;
}

body.layout-home-page-2 .video-and-testimonials-section .testimonials-element .testimonials .testimonial:not(:last-child)
{
	margin-bottom: 15px;
}

body.layout-home-page-2 .video-and-testimonials-section .testimonials-element .testimonial-message
{
	font-size: 16px;
	line-height: 22px;
}

body.layout-home-page-2 .video-and-testimonials-section .testimonials-element .testimonial-credit
{
	font-weight: bold;
	font-size: 14px;
}

body.layout-home-page-2 .video-and-testimonials-section .testimonials-element .testimonial .left-column
{
	flex-shrink: 0;
	margin-right: 15px;
}

body.layout-home-page-2 .video-and-testimonials-section .testimonials-element p
{
	line-height: 22px;
}

body.layout-home-page-2 .video-and-testimonials-section .testimonials-element p:last-of-type
{
	margin-bottom: 0;
}

body.layout-home-page-2 .video-and-testimonials-section .testimonials-element strong
{
	font-size: 14px;
}

.product-image-section
{
	margin-bottom: 30px;
}

.comparison-table
{
	margin-bottom: 20px;
}

.comparison-table .cta-button
{
	font-size: 14px;
	padding: 14px 25px;
	border-radius: 20px;
}

.comparison-table .rating-stars
{
	background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #F2F2F2 100%), #FFFFFF;
    display: inline-flex;
	padding: 4px 12px;
    border-radius: 20px;
    box-shadow: 1px 1px 7px rgba(0, 0, 0, 0.2);
}

.comparison-table .rating-stars img
{
	padding: 3px 3px;
	box-sizing: content-box;
}

/*
body.layout-category-page .ast-archive-description
{
	padding: 24px 24px 10px 24px;
	background-color: transparent;
	margin: 0!important;
}

body.layout-category-page .ast-article-post:last-child
{
	border-bottom: 1px solid #eeeeee;
}

body.layout-category-page .ast-archive-description .page-title
{
	color: #333333;
	font-size: 32px;
}
*/

.ast-author-box .ast-author-bio .ast-archive-title
{
	border-bottom: 1px solid #b3b3b3;
	padding-bottom: 15px;
	margin-bottom: 15px;
	font-weight: 500;
}

.ast-author-box p
{
	font-size: 16px;
}

body.archive .ast-archive-description, body.archive .ast-author-box
{
	background-color: #f5f5f5;
	padding: 30px;
	margin: 0 0 20px 0;
}

.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single
{
	border: none;
}

.ast-separate-container .blog-layout-1, .ast-separate-container .blog-layout-2, .ast-separate-container .blog-layout-3
{
	background-color: transparent;
}

.ast-archive-description .ast-archive-title
{
	font-size: 28px;
	font-weight: 500;
}

.ast-author-box .ast-author-avatar
{
	display: flex;
	align-items: center;
	justify-content: center;
}

.ast-separate-container .ast-grid-2 > .site-main > .ast-row, .ast-separate-container .ast-grid-3 > .site-main > .ast-row, .ast-separate-container .ast-grid-4 > .site-main > .ast-row
{
	margin-left: 0;
	margin-right: 0;
}

.ast-container
{
	padding-left: 0;
	padding-right: 0;
}

#respond .ast-comment-formwrap
{
	margin: 0;
}

#respond .comment-form-author
{
	margin-right: 10px;
}

#respond .comment-form-author, #respond .comment-form-email
{
	margin-bottom: 25px;
}

#comments
{
	margin-top: 15px;
}

#comments #reply-title
{
	padding-top: 20px;
	font-size: 24px;
}

#comments .comments-count-wrapper
{
	padding-bottom: 20px;
}

#comment
{
	height: 170px;
}

.comment-reply-title,
.comments-count-wrapper .comments-title
{
	font-weight: 600;
}

/* Elementor Legacy: .elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated */
.elementor-container.elementor-column-gap-default > .elementor-column > .elementor-element-populated
{
	padding: 0;
}

.ast-advanced-headers-title
{
	display: none;
}

.main-header-bar
{
	line-height: 48px;
	background-color: transparent;
}

.ast-breadcrumbs
{
	text-align: left;
	font-size: 12px;
	position: relative; /* Helps prevent the banner text from overlapping the breadcrumb text */
}

.product-section .where-to-buy-links
{
	border: 1px solid #e3e3e3;
	border-radius: 10px;
	margin-top: 25px;
	text-align: center;
	padding: 5px 15px;
}

.product-section .where-to-buy-links h4
{
	margin: 15px 0;
}

.product-section .product-description
{
	margin-bottom: 0;
}

.product-section .card-badge
{
	position: absolute;
	right: -40px;
	top: 0px;
	text-align: right;
}

.product-section .amazon-price-button
{
	margin-bottom: 20px;
	margin-top: 25px;
}

.product-section .key-details-and-cta-buttons-section
{
	margin-top: 25px;
	margin-bottom: 20px;
}

.product-section .key-details-and-cta-buttons-section ul
{
	margin-bottom: 0;
}

.product-section .key-details-and-cta-buttons-section .cta-buttons-and-logos
{
	height: 100%;
}

.product-section .key-details-and-cta-buttons-section .left-column
{
	flex: 1;
}

.product-section .key-details-and-cta-buttons-section .right-column
{
	min-width: 265px;
	max-width: 300px;
	flex: 1;
}

.product-image-and-cta-buttons-section
{
	margin-bottom: 20px;
}

.product-image-and-cta-buttons-section .where-to-buy-links
{
	margin: 0;
	height: 100%;
	border-radius: 0;
}

.product-image-and-cta-buttons-section .where-to-buy-links .cta-button
{
	margin-bottom: 10px;
	font-size: 15px;
}

.review-toc
{
	margin-top: 5px;
}

#ast-commentform p
{
	padding: 0;
}

#primary
{
	margin-top: 0px!important;
	margin-bottom: 2em!important;
}

.cta-button
{
	background: linear-gradient(0deg, #ad1f1f 0%, #d92626 100%);
	color: #ffffff;
	font-size: 20px;
	font-weight: 500;
	padding: 10px 25px;
	border-radius: 10px;
	font-family: 'Roboto', Calibri, sans;
	letter-spacing: 1px;
	display: table;
	margin: auto;
	text-align: center;
}

.cta-button .arrow-icon, .cta-button .button-text
{
	vertical-align: middle;
	margin: 3px;
}

.cta-button:hover
{
	background-color: #ad1f1f;
	color: #fff;
}

.cta-button:focus
{
	color: #fff;
}

.cta-button.uppercase
{
	text-transform: uppercase;
}

.cta-button.bold
{
	font-weight: 700;
}


/*TODO: Add this to the live site (currently awaiting Dan's approval)*/
/*
.product-section .key-details-section
{
	font-size: 14px;
}

.product-section .key-details-section .key-features ul
{
	margin-left: 20px;
}
*/

.review-info img.alignright
{
	margin: 25px 0 25px 25px;
}

.form-submit
{
	clear: both;
	padding: 0 20px;
}

.author-bio
{
	margin-bottom: 15px!important;
}

.author-bio .elementor-text-editor, .author-bio .elementor-shortcode
{
	display: flex;
	align-items: center;
}

.author-bio img
{
	margin: 0 15px 0 0;
}

.author-bio p
{
	margin: 0;
	flex-shrink: 0;
}

.author-team-member
{
	text-align: center;
}

.author-team-member img
{
	margin-bottom: 15px;
}

.author-team-member h4
{
	margin-bottom: 10px;
	line-height: 1;
}

.author-team-member h5
{
	margin-bottom: 10px;
	line-height: 1;
	font-size: 14px;
}

.rmp-heading, .js-rmp-results
{
	font-size: 1em;
}

.rmp-main-subtitle
{
	display: none;
}

.rmp-rate-view p.rmp-main-title
{
	margin-bottom: 20px;
}

.js-rmp-rating-icons-list .js-rmp-rating-item
{
	margin: 0 5px!important;
}

.star-rating .rating-stars
{
	text-align: center;
}

.rmp-rate-view .rmp-icon
{
	width: 50px;
}

.card-badge, body.elementor-editor-active .card-badge
{
	pointer-events: none;
}

.card-badge img, body.elementor-editor-active .card-badge img
{
	pointer-events: auto;
}

.business-search-results .business-details
{
	border: 1px solid #eeeeee;
	background-color: #ffffff;
	margin: 20px 0 20px 0;
	display: flex;
	justify-content: space-between;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
}

.solar-quiz-box
{
	border: 1px solid #222222;
	background-color: #ffffff;
	margin: 0 0 20px 0;
	padding: 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
}

.primary .solar-quiz-box
{
	margin: 0 0 20px 0;
}

.solar-quiz-box h3
{
	margin-bottom: 15px;
}

.solar-quiz-box .get-free-quote-button
{
	background: linear-gradient(0deg, #ad1f1f 0%, #d92626 100%);
	color: #ffffff;
	display: block;
	margin: 0;
	line-height: 35px;
	padding: 5px 15px;
	font-size: 20px!important;
	border-radius: 10px;
	font-family: 'Roboto', Calibri, sans;
	letter-spacing: 1px;
	text-transform: uppercase;
	font-weight: 700;
}

.solar-quiz-box p
{
	margin: 0 0 15px 0;
}

.solar-quiz-box .zip-code-entry-form
{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	text-align: left;
	margin: 0;
}

.solar-quiz-box .zip-code-entry-form .zip-code-input
{
	display: block;
	font-size: 17px!important;
	padding: 5px 10px;
	line-height: 30px;
	margin: 0;
	width: 100%;
	max-width: 195px;
}

.primary .solar-quiz-box .zip-code-entry-form .zip-code-input
{
	margin-right: 15px;
}

.secondary .solar-quiz-box .zip-code-entry-form .zip-code-input
{
	margin-bottom: 20px;
}

.solar-quiz-box .zip-code-entry-form .button-text
{
	margin: 5px;
	vertical-align: middle;
}

.solar-quote-form-popup .dialog-close-button
{
	margin: 0;
}

.business-directory-sidebar .solar-quiz-box
{
	margin: 0 0 20px 0;
}

.secondary .widget
{
	border: 1px solid #dddddd;
	background-color: #f5f5f5;
	margin: 0 0 20px 0;
	padding: 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
}

.secondary .widget:last-child
{
	margin-bottom: 20px;
}

.widget ul
{
	margin-left: 20px;
}

.widget ul li
{
	list-style-type: disc;
}

.social_share_buttons_widget h3,
.recent-blog-posts-widget h3,
.latest-buying-guides-widget h3
{
	margin-bottom: 20px;
}

.social_share_buttons_widget .social-share-buttons-container
{
	display: grid;
	grid-template-columns: repeat(5, 1fr);
}

.recent-blog-posts-widget .recent-blog-post-row,
.latest-buying-guides-widget .latest-buying-guide-row
{
	display: flex;
	align-items: flex-start;
}

.recent-blog-posts-widget .thumbnail-link,
.latest-buying-guides-widget .thumbnail-link
{
	flex-shrink: 0;
}

.recent-blog-posts-widget .recent-blog-post-row .thumbnail-link,
.recent-blog-posts-widget .recent-blog-post-row .blog-post-thumbnail,
.recent-blog-posts-widget .recent-blog-post-row .title-and-date,
.recent-blog-posts-widget .recent-blog-post-row .title-link,
.recent-blog-posts-widget .recent-blog-post-row .blog-post-title,
.recent-blog-posts-widget .recent-blog-post-row .date-link,
.recent-blog-posts-widget .recent-blog-post-row .blog-post-date,
.latest-buying-guides-widget .recent-blog-post-row .thumbnail-link,
.latest-buying-guides-widget .recent-blog-post-row .buying-guide-thumbnail,
.latest-buying-guides-widget .recent-blog-post-row .title-container,
.latest-buying-guides-widget .recent-blog-post-row .title-link,
.latest-buying-guides-widget .recent-blog-post-row .buying-guide-title
{
	display: block;
}

.recent-blog-posts-widget .recent-blog-post-row .title-link
{
	margin-bottom: 6px;
}

.recent-blog-posts-widget .recent-blog-post-row .blog-post-title
{
	font-size: 14px;
	line-height: 1.2;
	margin-bottom: 0;
}

.recent-blog-posts-widget .recent-blog-post-row .blog-post-date
{
	font-size: 14px;
	line-height: 1.2;
	margin-bottom: 0;
}

.recent-blog-posts-widget .recent-blog-post-row .blog-post-thumbnail,
.latest-buying-guides-widget .latest-buying-guide-row .buying-guide-thumbnail
{
	width: 100%;
	max-width: 90px;
	height: auto;
}

.recent-blog-posts-widget .thumbnail-link,
.latest-buying-guides-widget .thumbnail-link
{
	margin-right: 12px;
}

.recent-blog-posts-widget .recent-blog-post-rows > div:not(:last-of-type),
.latest-buying-guides-widget .latest-buying-guide-rows > div:not(:last-of-type)
{
	margin-bottom: 20px;
}

.latest-buying-guides-widget .latest-buying-guide-row .buying-guide-title
{
	font-size: 16px;
	line-height: 1.4;
	margin-bottom: 0;
}

aside.widget.popular-posts
{
	border: 1px solid #dddddd;
	background-color: #f5f5f5;
	margin: 0 0 20px 0;
	padding: 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
}

aside.widget.popular-posts h2
{
	margin-bottom: 15px;
}

.business-search-results .left-column-outer-container
{
	
}

.business-search-results .middle-column-outer-container
{
	flex-grow: 1;
	flex-shrink: 1;
}

.business-search-results .right-column-outer-container
{
	/*background-color: #e6f9dc;*/
	background-color: #f0f9eb;
	display: flex;
	justify-content: center;
	align-items: center;
}

.business-search-results .left-column-inner-container
{
	width: 150px;
	margin: 15px;
	flex-grow: 0;
	flex-shrink: 0;
	position: relative;
}

.business-search-results .middle-column-inner-container
{
	flex-basis: 350px;
	margin: 0 15px;
	padding: 15px 0;
	height: 100%;
	flex-grow: 1;
	flex-shrink: 1;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: space-between;
}

.business-search-results .right-column-inner-container
{
	width: 150px;
	margin: 0 15px;
	padding: 15px 0;
	height: 100%;
	text-align: center;
	flex-grow: 0;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: space-between;
}

.business-search-results .company-rank
{
	display: inline-flex;
	width: 30px;
	height: 30px;
	font-size: 12px;
	/*background-color: #5d8547;*/
	/*background-color: #3e5332;*/
	/*background-color: #5ab22e;*/
	background-color: #000000;
	color: #ffffff;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	position: absolute;
	left: 0;
	top: 0;
}

.business-search-results h2
{
	font-size: 22px;
}

.business-search-results .company-name a
{
	margin: 0 0 10px 0;
}

.business-search-results .company-name a
{
	color: #333333;
}

.business-search-results .company-name a:hover
{
	color: #f2800d;
}

.business-search-results .company-rating
{
	margin: 0 0 10px 0;
	display: flex;
	align-items: center;
	text-align: center;
	justify-content: center;
	line-height: 22px;
}

.business-search-results .rating-score
{
	font-size: 36px;
	line-height: 35px;
	font-weight: bold;
	margin: 0 5px;
	color: #457e2a;
}

.business-search-results .rating-score.no-rating
{
	font-size: 16px;
}

.business-search-results .ratings-count
{
	margin: 10px 0 0 0;
	display: block;
}

.business-search-results .company-image-link
{
	display: flex;
	outline: 1px solid #000000;
	min-height: 150px;
	align-items: center;
	background-color: #ffffff;
}

.business-search-results .get-free-quote-button
{
	font-size: 12px;
	padding: 8px 10px;
	margin: 15px 0 0 0;
	background-color: #f2800d;
	color: #ffffff;
	border-radius: 10px;
	font-family: 'Roboto', Calibri, sans;
	letter-spacing: 1px;
	display: table;
	text-align: center;
	text-transform: uppercase;
	font-weight: 700;
}

.business-search-results .get-free-quote-button .button-text
{
	margin: 5px;
	vertical-align: middle;
	font-size: 14px;
	line-height: 14px;
}

.business-search-results .get-free-quote-button:hover
{
	background-color: #5ab22e;
}

.business-search-results .review-page-link a
{
	color: #5ab22e;
}
 
.business-search-results .review-page-link a:hover
{
	color: #f2800d;
}

.business-search-banner .get-free-quote-button:hover,
.layout-company-review-page .review-area .write-review-button:hover,
.layout-company-review-page .write-review-area .glsr-button:hover
{
	background-color: #f2800d;
}

.solar-quiz-box .get-free-quote-button:hover,
body.layout-company-review-page .company-details .get-free-quote-button:hover,
body.layout-company-review-page .solar-quiz-box .get-free-quote-button:hover
{
	background-color: #5ab22e;
}

.business-search-banner
{
	background-image: url('https://www.friendsoftheasianelephant.org/wp-content/plugins/business-directory/assets/business-search-banner-bg.jpg');
	min-height: 300px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.business-search-banner, .business-search-banner h1, .business-search-banner h3
{
	color: #ffffff;
	text-align: center;
}

.business-search-banner .zip-code-entry-form
{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	text-align: center;
	margin: 25px auto 35px auto;
}

.business-search-banner .get-free-quote-button
{
	background-color: #5ab22e;
	color: #ffffff;
	display: block;
	margin: 10px;
	line-height: 45px;
	padding: 5px 15px;
	font-size: 20px;
	border-radius: 10px;
	font-family: 'Roboto', Calibri, sans;
	letter-spacing: 1px;
	text-transform: uppercase;
	font-weight: 700;
}

.business-search-banner .get-free-quote-button .button-text
{
	margin: 5px;
	vertical-align: middle;
}

.business-search-banner .zip-code-input
{
	display: block;
	margin: 10px;
	line-height: 45px;
	padding: 5px 10px;
	font-size: 20px;
}

.business-search-banner .banner-main-heading
{
	font-size: 32px;
	margin: 50px 0 30px 0;
	font-weight: 500;
	line-height: 40px;
}

.business-search-banner .banner-secondary-heading
{
	font-size: 24px;
	margin: 0;
	font-weight: 500;
}

.post-cards .elementor-post__thumbnail
{
	padding: 0!important;
}

.post-cards .elementor-posts-container.elementor-has-item-ratio .elementor-post__thumbnail img
{
	transform: scale(1.00);
	top: auto;
	left: auto;
	bottom: auto;
	right: auto;
	object-fit: cover;
	display: block;
	position: relative;
}

.post-cards .elementor-posts .elementor-post__card .elementor-post__thumbnail img
{
	width: 100%;
}

.related-posts-outer-container
{
	margin-top: 10px;
	border-top: 1px solid #eee;
}

.related-posts-outer-container .section-heading
{
	margin-top: 20px;
	margin-bottom: 20px;
	font-size: 24px;
}

.related-posts-section .post-cards .elementor-post__thumbnail, .related-posts-section .post-cards .elementor-post__thumbnail img
{
	height: 200px;
}

.category-cards-section .section-heading
{
	text-align: center;
}

.category-cards-section .card-text
{
	background-color: white;
	width: calc(100% - 20px);
	margin: 0 auto 0px auto;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
	max-width: 325px;
	text-align: center;
	position: absolute;
	bottom: 10px;
	left: 0%;
	right: 0%;
	overflow: hidden;
}

.category-cards-section h3
{
	margin: 15px 15px 10px 15px;
	line-height: 30px;
}

.category-cards-section h3 a:not(:hover):not(:focus)
{
	color: #000;
}

.category-cards-section .card-background-image img
{
	max-width: 350px;
}

.category-cards-section .post-and-page-links
{
	height: 145px;
	overflow-y: auto;
	font-size: 14px;
	margin: 0 15px 0 15px;
	padding: 0 10px;
}

.category-cards-section .post-and-page-links a
{
	display: block;
	margin: 0 0 10px 0;
	line-height: 25px;
}

.category-cards-section .view-category-button a
{
	display: block;
	background-color: #f2800d;
	color: #ffffff;
	padding: 5px 0;
	text-transform: uppercase;
	font-weight: bold;
	letter-spacing: 0.5px;
	padding: 10px 0;
}

.category-cards-section .view-category-button a:hover
{
	background-color: #5ab22e;
	color: #ffffff;
}

.category-cards-inner-section
{
	margin-bottom: 20px;
}

.category-cards-section .card-column
{
	margin: 10px 10px;
	overflow: hidden;
	width: calc(33.33% - 20px);
}

.nf-form-layout .nf-form-content
{
	margin: 0;
	padding: 0;
}

.nf-form-fields-required
{
	margin-bottom: 20px;
}

.nf-form-content .nf-field-label label
{
	font-size: 16px;
}

.nf-form-content .nf-field-element input[type="button"]
{
	border-radius: 2px;
	padding: 10px 40px;
}

.simple-progress-bar
{
	background-color: #23a455;
	font-size: 14px;
}

.references li
{
	margin-bottom: 15px;
}

.lead-banner-section
{
	margin-bottom: 30px;
}

.elementor-section-wrap .lead-banner-section .elementor-container
{
	max-width: 800px;
}

.lead-banner-section, .lead-banner-section p, .lead-banner-section h1, .lead-banner-section h2,
.lead-banner-section h3, .lead-banner-section h4, .lead-banner-section h5, .lead-banner-section h6
{
	color: #ffffff;
}

body:not(.elementor-editor-active):not(.ab-test-active) :not(.ab-test-original).ab-test,
body:not(.elementor-editor-active).ab-test-variant-1-active .ab-test:not(.ab-test-variant-1),
body:not(.elementor-editor-active).ab-test-variant-2-active .ab-test:not(.ab-test-variant-2),
body:not(.elementor-editor-active).ab-test-variant-3-active .ab-test:not(.ab-test-variant-3),
body:not(.elementor-editor-active).ab-test-variant-4-active .ab-test:not(.ab-test-variant-4)
{
	display: none;
}

.other-articles-you-may-enjoy-section
{
	background-color: #f5f5f5;
	padding: 20px;
}

.other-articles-you-may-enjoy-section h3
{
	margin-top: 5px!important;
	text-align: center;
}

.other-articles-you-may-enjoy-section ul
{
	margin: 0;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: center;
}

.other-articles-you-may-enjoy-section li
{
	list-style: none;
	text-align: center;
	width: 100%;
	max-width: 285px;
}

.footer-email-form-outer-container
{

	background-size: cover;
	background-position: 50% 50%;
	padding: 35px 20px;
	display: flex;
	justify-content: center;
	align-content: center;
}

.footer-email-form-inner-container
{
	background-color: #ffffff;
	padding: 25px 20px;
	width: 100%;
	max-width: 550px;
	border: 1px solid #eee;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
}

.footer-email-form-inner-container .mc4wp-form-fields
{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.footer-email-form-inner-container .form-title,
.footer-email-form-inner-container .first-name-input,
.footer-email-form-inner-container .last-name-input,
.footer-email-form-inner-container .email-address-input,
.footer-email-form-inner-container .terms-and-conditions
{
	margin: 0 0 20px 0;
}

.footer-email-form-inner-container .submit-button, .footer-email-form-inner-container .mc4wp-response p
{
	margin: 0;
}

.footer-email-form-inner-container .mc4wp-response:not(:empty)
{
	margin-top: 20px;
	text-align: center;
}

.footer-email-form-inner-container .email-address-input
{
	text-align: center;
	width: 100%;
	max-width: 300px;
}

.footer-email-form-inner-container .mc4wp-success
{
	color: #5ab22e;
}

.astra-megamenu li a
{
	padding: 0!important;
}

.astra-megamenu > li
{
	font-size: 17px;
	font-weight: bold;
}

.astra-megamenu > li > ul > li
{
	font-size: 14px;
	font-weight: normal;
}

@media (min-width: 1201px)
{
	
}

@media (max-width: 1200px)
{
	body.layout-company-review-page #primary
	{
		position: static;
		float: none;
		margin: 30px auto!important;
		max-width: 980px;
	}
	
	body.layout-company-review-page #secondary
	{
		position: static;
		float: none;
		margin: 30px auto!important;
	}
	
	body.layout-company-review-page .company-details, body.layout-company-review-page .review-area, body.layout-company-review-page .write-review-area
	{
		margin: 30px auto;
		float: none;
	}
	
	body.layout-state-search-page #secondary, body.layout-city-search-page #secondary
	{
		position: static;
	}
	
	.site-branding, .main-header-container, .header-main-layout-1 .ast-main-header-bar-alignment
	{
		margin: auto;
	}
}

@media (max-width: 1180px)
{
	body.layout-product-cards-page .ast-container,
	body.layout-blog-archive-page .ast-container,
	body.layout-search-page .ast-container,
	body.layout-author-page .ast-container,
	body.layout-date-page .ast-container,
	body.layout-category-page .ast-container,
	body.layout-attachment-page .ast-container,
	body.layout-site-info-page .ast-container,
	body.layout-blog-post .ast-container,
	body.layout-blog-post-2 .ast-container,
	body.layout-state-search-page .ast-container,
	body.layout-city-search-page .ast-container,
	body.layout-company-review-page .ast-container,
	body.layout-solar-companies-main-page .ast-container,
	body.layout-single-product-review-post .ast-container,
	body.layout-wide-review-post .ast-container
	{
		margin-left: 10px;
		margin-right: 10px;
	}
	
	body.layout-home-page .elementor-section-boxed > .elementor-container
	{
		padding-left: 10px;
		padding-right: 10px;
	}
}

@media (min-width: 1024px)
{	
	.post-cards .elementor-post__card .elementor-post__thumbnail img
	{
		width: calc(100%);
	}
	
	.post-cards .elementor-post__thumbnail img
	{
		transform: none;
	}
	
	.post-cards .elementor-post__thumbnail.elementor-fit-height img
	{
		height: auto;
		width: auto;
	}
	
	.post-cards .elementor-post__thumbnail
	{
		width: 100%;
		max-width: 354px;
		padding: 0;
		display: flex;
		height: 235px;
		max-height: 235px;
		justify-content: center;
	}
}

@media (max-width: 1024px)
{
	.post-cards .elementor-grid-item
	{
		margin-left: auto;
		margin-right: auto;
	}
	
	body.layout-product-cards-page .lead-section .left-column, body.layout-product-cards-page .lead-section .right-column
	{
		width: 100%;
		margin: 0;
	}
	
	body.layout-product-cards-page .lead-section .elementor-grid
	{
		display: block;
	}
	
	/*
	Elementor Legacy: body.layout-wide-review-post .review-banner-section .elementor-row 
	{
		flex-direction: column;
		align-items: center;
	}
	*/
	
	body.layout-wide-review-post .review-banner-section .elementor-widget-wrap
	{
		justify-content: center;
	}
	
	body.layout-wide-review-post .review-banner-section .left-column
	{
		width: 100%;
		max-width: none;
		margin-bottom: 20px;
	}
	
	body.layout-wide-review-post .review-banner-section .right-column
	{
		width: 100%;
		max-width: none;
	}
	
	/* Elementor legacy: body.layout-wide-review-post .pros-and-cons-section .elementor-row */
	body.layout-wide-review-post .pros-and-cons-section .elementor-container
	{
		justify-content: center;
	}
	
	.business-search-results .middle-column-inner-container .company-name
	{
		font-size: 20px;
	}
}

@media (min-width: 1001px)
{
	body.layout-product-list-post .banner-and-featured-products-section.full-size
	{
		margin: 0px -90px 0px -90px;
		width: calc(100% + 180px);
	}
}

@media (max-width: 1000px)
{
	body.layout-product-list-post .ast-container
	{
		padding-left: 10px;
		padding-right: 10px;
	}
	
	body.layout-product-list-post .banner-and-featured-products-section.full-size .banner-image
	{
		margin-bottom: calc(-25vw);
	}	
}

@media (max-width: 980px)
{
	.intro-section .review-title-image
	{
		width: auto;
		margin-left: -10px;
		margin-right: -10px;
	}
}

@media (max-width: 900px)
{
	.solar-quiz-box .zip-code-entry-form .get-free-quote-button
	{
		font-size: 16px!important;
	}
	
	#secondary .solar-quiz-box .zip-code-entry-form .zip-code-input
	{
		max-width: 170px;
	}
	
	.solar-quiz-box
	{
		text-align: center;
	}
	
	.primary .solar-quiz-box .zip-code-entry-form
	{
		justify-content: center;
	}
	
	.secondary .solar-quiz-box .zip-code-entry-form
	{
		flex-direction: column;
		justify-content: center;
	}
	
	.primary .solar-quiz-box .zip-code-entry-form .zip-code-input
	{
		/*
		margin: 0 auto 20px auto;
		max-width: 170px;
		*/
	}
	
	.main-header-container
	{
		display: flex;
		justify-content: center;
		text-align: center;
		flex-direction: column;
	}
	
	.main-header-container .ast-main-header-bar-alignment
	{
		margin: 0 auto 10px auto;
	}
	
	body.layout-home-page-2 .banner-section .left-column
	{
		display: none;
	}
	
	body.layout-home-page-2 .banner-section .right-column
	{
		width: 100%;
		align-items: center;
		justify-content: center;
		flex-shrink: 1;
		text-align: center;
	}
	
	body.layout-home-page-2 .banner-section .elementor-container
	{
		max-width: calc(100% - 60px);
	}
	
	/*
	body.layout-home-page-2 .banner-section .right-column .elementor-widget-wrap h2
	{
		font-size: 10vw;
	}
	
	body.layout-home-page-2 .banner-section .right-column .elementor-widget-wrap h3
	{
		font-size: 5.7777vw;
	}
	
	body.layout-home-page-2 .banner-section .right-column .elementor-widget-wrap h4
	{
		font-size: 2.66666vw;
	}
	*/
}

@media (min-width: 768px)
{
	.product-section
	{
		padding: 0 40px;
	}
	
	.product-section .product-image.full-size
	{
		margin: 0px -40px 0px -40px;
		width: calc(100% + 80px);
	}
	
	/* Elementor Legacy: section.intro-section .elementor-row .left-column,
	section.product-section .elementor-row .left-column */
	section.intro-section .elementor-container .left-column,
	section.product-section .elementor-container .left-column
	{
		padding-left: 0;
		padding-right: 10px;
	}
	
	/* Elementor Legacy: section.intro-section .elementor-row .right-column,
	section.product-section .elementor-row .right-column */
	section.intro-section .elementor-container .right-column,
	section.product-section .elementor-container .right-column
	{
		padding-left: 10px;
		padding-right: 0;
	}
	
	.featured-products-section .cta-button
	{
		font-size: 12px;
		letter-spacing: .5px;
		padding: 8px 12px;
	}
	
	/*TODO: Add this to the live site (currently awaiting Dan's approval)*/
	/*
	.product-section .key-details-section .left-column
	{
		margin-right: 10px;
	}
	
	.product-section .key-details-section .right-column
	{
		margin-left: 10px;
	}
	*/
	
	body.layout-product-list-post .related-posts-section .post-cards .elementor-posts
	{
		grid-template-columns: repeat(3, 1fr);
	}
	
	body.layout-wide-review-post .related-posts-section .post-cards .elementor-posts
	{
		grid-template-columns: repeat(4, 1fr);
	}
	
	#content > .ast-container
	{
		display: flex;
	}
	
	#secondary .sidebar-main
	{
		height: 100%;
	}
	
	#secondary .widget.solar-quiz-box
	{
		position: sticky;
		top: 0;
	}
}

@media (max-width: 768px)
{
	header .main-header-bar .site-branding .site-logo-img a
	{
		display: block;
	}
	
	header .main-header-bar .site-branding .ast-site-identity
	{
		padding: 0;
		margin: 20px 0 10px 0;
	}
	
	.ast-header-break-point .site-header .main-header-bar-wrap .site-branding
	{
		flex-basis: auto;
		padding: 0;
	}
	
	.main-header-container .ast-main-header-bar-alignment
	{
		margin: 0;
	}
	
	header .main-header-bar .main-header-container .main-header-bar-navigation
	{
		padding: 0;
	}
		
	header .main-header-bar .ast-mobile-menu-buttons
	{
		margin: 0px 0 10px 0;
	}
	
	.main-navigation ul li a, .ast-header-break-point .main-navigation ul li a
	{
		padding: 0 30px;
	}
	
	.ast-header-break-point .main-header-bar .main-header-bar-navigation .page_item_has_children > .ast-menu-toggle, .ast-header-break-point .main-header-bar .main-header-bar-navigation .menu-item-has-children > .ast-menu-toggle
	{
		right: 20px;
	}
	
	.main-header-menu li
	{
		margin: 0;
	}
	
	.ast-header-break-point .ast-site-identity
	{
		width: auto;
	}
	
	.ast-header-break-point .site-header .main-header-bar-wrap .site-branding, .ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons
	{
		flex: 1 1 auto;
	}
	
	header .main-header-container
	{
		flex-direction: row;
	}
	
	header .main-header-bar .ast-mobile-menu-buttons
	{
		margin: 10px 0 10px 0;
	}
	
	header .main-header-bar .site-branding .ast-site-identity
	{
		margin: 20px 0 20px 0;
	}
	
	.ast-header-break-point .ast-mobile-header-stack .ast-mobile-menu-buttons
	{
		width: auto;
	}
	
	body.layout-company-review-page .company-details > .left-column, body.layout-company-review-page .company-details > .right-column
	{
		flex-shrink: 1;
		padding: 10px;
	}
	
	body.layout-product-list-post .banner-and-featured-products-section .featured-products-section .featured-product-column
	{
		max-width: none;
	}
	
	.category-cards-inner-section .elementor-row
	{
		align-items: center;
		flex-direction: column;
	}
	
	.category-cards-inner-section .card-column
	{
		width: auto;
		max-width: 350px;
	}
}

@media (min-width: 767px)
{

}

@media (max-width: 767px)
{
	.product-section
	{
		padding: 0 15px;
	}
	
	.product-section .product-image.full-size
	{
		margin: 0px -15px 0px -15px;
		width: calc(100% + 30px);
	}
	
	.product-section .card-badge
	{
		right: -15px;
	}
	
	body.layout-state-search-page #primary, body.layout-city-search-page #primary, body.layout-solar-companies-main-page #primary
	{
		margin-bottom: 0!important;
	}

	body.layout-state-search-page #secondary, body.layout-city-search-page #secondary, body.layout-solar-companies-main-page #secondary
	{
		margin-top: 0!important;
	}
	
	.solar-quiz-box
	{
		background-image: url('../../plugins/business-directory/assets/sidebar-solar-quiz-bg-2.jpg');
		background-size: cover;
	}
	
	.secondary .solar-quiz-box .zip-code-entry-form .zip-code-input, .primary .solar-quiz-box .zip-code-entry-form .zip-code-input
	{
		margin: 0 0 20px 0;
		width: 100%;
		max-width: 170px;
	}
	
	.primary .solar-quiz-box .zip-code-entry-form, .secondary .solar-quiz-box .zip-code-entry-form
	{
		flex-direction: column;
		justify-content: center;
	}
	
	body.layout-single-product-review-post .lead-section .left-column
	{
		margin-bottom: 30px;
	}
	
	body.layout-single-product-review-post .lead-section .right-column
	{
		padding: 0;
	}
	
	body.layout-single-product-review-post .lead-section .author-bio
	{
		margin-bottom: 30px!important;
	}
	
	body.layout-single-product-review-post .pros-and-cons-section .left-column,
	body.layout-single-product-review-post .pros-and-cons-section .right-column
	{
		width: 100%;
		margin: 0 0 30px 0;
	}
	
	body.layout-single-product-review-post .pros-and-cons-section
	{
		margin: 0;
	}
	
	body.layout-product-list-post .related-posts-section .post-cards .elementor-posts
	{
		grid-template-columns: repeat(1, 1fr);
	}
	
	body.layout-blog-post .related-posts-outer-container .section-heading,
	body.layout-product-list-post .related-posts-outer-container .section-heading,
	body.layout-wide-review-post .related-posts-outer-container .section-heading
	{
		text-align: center;
	}
}

@media (max-width: 700px)
{
	.review-info img.alignright
	{
		margin: 0 auto;
		float: none;
		display: block;
	}
}

@media (min-width: 650px)
{

}

@media (max-width: 650px)
{
	body.layout-wide-review-post .review-banner-section .laptop-screenshot .elementor-image
	{
		position: static;
		z-index: auto;
	}
	
	body.layout-wide-review-post .review-banner-section .laptop-screenshot
	{
		width: auto;
		height: auto;
	}
}

@media (min-width: 600px)
{
	
}

@media (max-width: 600px)
{
	.business-search-results .business-details
	{
		flex-direction: column;
	}
	
	.business-search-results .left-column-inner-container
	{
		margin: 25px auto 15px auto;
	}
	
	.business-search-results .middle-column-inner-container .company-name
	{
		text-align: center;
	}

	.business-search-results .middle-column-inner-container
	{
		text-align: center;
		padding: 10px 0;
	}
	
	.business-search-results .middle-column-inner-container .company-name
	{
		margin: 0 0 10px 0;
	}
	
	.business-search-results .middle-column-inner-container .ratings-count
	{
		margin: 10px 0 10px 0;
	}
	
	.business-search-results .right-column-inner-container .company-rating
	{
		margin-bottom: 0;
	}
}

@media (max-width: 550px)
{
	.solar-quiz-box
	{
		align-items: center;
		text-align: center;
	}
	
	.solar-quiz-box .zip-code-entry-form
	{
		flex-direction: column;
	}
	
	.business-directory-sidebar .solar-quiz-box .zip-code-entry-form
	{
		align-items: center;
	}
	
	.solar-quiz-box .zip-code-entry-form .zip-code-input
	{
		margin: 0 0 15px 0;
		text-align: center;
	}
}

@media (min-width: 500px)
{
	body.layout-blog-post .ast-advanced-headers-breadcrumb,
	body.layout-blog-post-2 .ast-advanced-headers-breadcrumb,
	body.layout-product-list-post .ast-advanced-headers-breadcrumb,
	body.layout-single-product-review-post .ast-advanced-headers-breadcrumb,
	body.layout-wide-review-post .ast-advanced-headers-breadcrumb
	{
		margin-bottom: -35px;
		margin-top: 15px;
		margin-left: 20px;
		line-height: 20px;
	}
	
	body.layout-blog-post-2 .ast-advanced-headers-breadcrumb
	{
		margin-left: 0;
	}
	
	body.layout-product-list-post .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-product-list-post .ast-advanced-headers-breadcrumb a,
	body.layout-blog-post .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-blog-post .ast-advanced-headers-breadcrumb a,
	body.layout-solar-companies-main-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-solar-companies-main-page .ast-advanced-headers-breadcrumb a,
	body.layout-state-search-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-state-search-page .ast-advanced-headers-breadcrumb a,
	body.layout-city-search-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-city-search-page .ast-advanced-headers-breadcrumb a,
	body.layout-company-review-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-company-review-page .ast-advanced-headers-breadcrumb a,
	body.layout-wide-review-post .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-wide-review-post .ast-advanced-headers-breadcrumb a
	{
		color: #ffffff;
	}
	
	body.layout-site-info-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-site-info-page .ast-advanced-headers-breadcrumb a,
	body.layout-product-cards-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-product-cards-page .ast-advanced-headers-breadcrumb a,
	body.layout-blog-post-2 .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-blog-post-2 .ast-advanced-headers-breadcrumb a,
	body.layout-blog-archive-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-blog-archive-page .ast-advanced-headers-breadcrumb a,
	body.layout-search-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-search-page .ast-advanced-headers-breadcrumb a,
	body.layout-author-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-author-page .ast-advanced-headers-breadcrumb a,
	body.layout-date-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-date-page .ast-advanced-headers-breadcrumb a,
	body.layout-category-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-category-page .ast-advanced-headers-breadcrumb a,
	body.layout-attachment-page .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-attachment-page .ast-advanced-headers-breadcrumb a,
	body.layout-single-product-review-post .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.layout-single-product-review-post .ast-advanced-headers-breadcrumb a
	{
		color: #000000;
	}
	
	body.light-breadcrumbs .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.light-breadcrumbs .ast-advanced-headers-breadcrumb a,
	body.light-on-dark-breadcrumbs .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.light-on-dark-breadcrumbs .ast-advanced-headers-breadcrumb a
	{
		color: #ffffff;
	}
	
	body.dark-breadcrumbs .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.dark-breadcrumbs .ast-advanced-headers-breadcrumb a,
	body.dark-on-light-breadcrumbs .ast-advanced-headers-breadcrumb .ast-breadcrumbs,
	body.dark-on-light-breadcrumbs .ast-advanced-headers-breadcrumb a
	{
		color: #000000;
	}
	
	body.light-on-dark-breadcrumbs .ast-advanced-headers-breadcrumb .ast-breadcrumbs .trail-items
	{
		background-color: #333333;
		padding: 0 5px;
	}
	
	body.dark-on-light-breadcrumbs .ast-advanced-headers-breadcrumb .ast-breadcrumbs .trail-items
	{
		background-color: #ffffff;
		padding: 0 5px;
	}	
}

@media (max-width: 500px)
{
	.product-section
	{
		padding-left: 15px!important;
		padding-right: 15px!important;
	}
	
	.product-review-column > .elementor-column-wrap
	{
		padding: 0!important;
	}
	
	.ast-title-bar-wrap
	{
		display: none;
	}
	
	body.layout-product-cards-page h1
	{
		margin: 35px 0 20px 0;
	}
	
	.cta-button
	{
		font-size: 19px;
		padding: 9px 20px;
	}
	
	body.layout-product-list-post .banner-and-featured-products-section.full-size .banner-image
	{
		margin-bottom: 30px;
	}
	
	body.layout-product-list-post .banner-and-featured-products-section .banner-text h1
	{
		color: #000;
	}
}

@media (min-width: 450px)
{

}

@media (max-width: 450px)
{
	.cta-button
	{
		font-size: 17px;
		padding: 7px 15px;
	}
}

@media (min-width: 400px)
{

}

@media (max-width: 400px)
{
	.cta-button
	{
		font-size: 15px;
		padding: 7px 13px;
	}
}

@media (min-width: 350px)
{

}

@media (max-width: 350px)
{
	.cta-button
	{
		font-size: 12px;
		padding: 6px 12px;
	}
}

@media (min-width: 300px)
{

}

@media (max-width: 300px)
{
	.cta-button
	{
		font-size: 10px;
		padding: 5px 8px;
	}
}