/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* Add "Metric" Custom Font CSS */
@font-face {
	font-family: 'Metric';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	unicode-range: U+000-5FF;
	src: local(''),
		url('/wp-content/themes/generatepress_child/fonts/MetricWeb-Regular.woff2') format('woff2'),
		url('/wp-content/themes/generatepress_child/fonts/MetricWeb-Regular.woff') format('woff');
}
@font-face {
	font-family: 'Metric';
	font-style: normal;
	font-weight: 300;
	font-display: auto;
	unicode-range: U+000-5FF;
	src: local(''),
		url('/wp-content/themes/generatepress_child/fonts/MetricWeb-Light.woff2') format('woff2'),
		url('/wp-content/themes/generatepress_child/fonts/MetricWeb-Light.woff') format('woff');
}
@font-face {
	font-family: 'Metric';
	font-style: normal;
	font-weight: 100;
	font-display: auto;
	unicode-range: U+000-5FF;
	src: local(''),
		url('/wp-content/themes/generatepress_child/fonts/MetricWeb-Thin.woff2') format('woff2'),
		url('/wp-content/themes/generatepress_child/fonts/MetricWeb-Thin.woff') format('woff');
}
@font-face {
	font-family: 'Metric';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	unicode-range: U+000-5FF;
	src: local(''),
		url('/wp-content/themes/generatepress_child/fonts/MetricWeb-Bold.woff2') format('woff2'),
		url('/wp-content/themes/generatepress_child/fonts/MetricWeb-Bold.woff') format('woff');
}
/* End Custom Fonts CSS */


b, strong {
    font-weight: 400;
}

/* slider */
.elementor-slide-description p, 
.product-slider-section h2,
.header-sub-headline h2 {
	font-size: 24px !important;
	text-transform: none;
}
.elementor-slide-description h2 {
	font-size: 54px;
}
.elementor-slide-description h3 {
	font-size: 34px;
}
.elementor-swiper .swiper-slide {
    padding: 0px;
}
/* home 3 column */
#home-3-column h3 {
	font-size: 30px;
}

/* products */ 
.col-2-products h3.elementor-heading-title {
	max-width: 60%;
}
#single-product .elementor-flip-box .elementor-icon {
    font-size: 60px;
}
#product-downloads .elementor-toggle-item,
.faq .elementor-toggle-item {
    background: #21201F;
}
.elementor-widget-flip-box.elementor-widget:not(:last-child) {
    margin-bottom: 15px;
}
.elementor-flip-box .elementor-icon-wrapper {
    margin-bottom: 10px !important;
}
.content-headline h2 {
	font-size: 40px;
}
.content-headline h3 {
	font-size: 24px !important;
	text-transform: none;
	width: 40%;
    margin: auto;
}

/* product sub pages */
.swiper-slide-inner .elementor-image-carousel-caption {
    padding-top: 20px;
}


/* header */

.main-navigation .main-nav ul ul li a {
    padding-left: 20px;
}

.secondary-navigation {
    background-color: #141414 !important;
}
.alertbar a:hover {
	color: #ddd;
}
.main-navigation {
   border-top: 1px solid #333;
}
.one-container .site-content {
	padding: 0 40px;
}
.navigation-branding {
    margin-left: 30px !important;
}
.main-navigation .main-nav ul li a, .secondary-navigation .main-nav ul li a, .secondary-navigation .menu-toggle {
    padding-right: 30px !important;
}

/* main navigation */
.main-navigation a {
    font-size: 16px;
}
.navigation-branding img, .site-logo.mobile-header-logo img {
    height: 50px !important;
}
/* mobile nav */
.slideout-navigation:not(.do-overlay) .main-nav {
    margin: 10px 0 10px 10px;
}

/* phone and email icons inside mobile menu */
.main-navigation a.elementor-social-icon {
  background-color: rgba(0,0,0,0);
	font-size: 22px !important;
	display: flex;
}
.main-navigation .elementor-social-icons-wrapper.off-canvas {
  order: 1;
  position: relative;
	display: flex; 
	align-items: center; 
	margin-right: 10px;
}

/* posts */
.elementor-posts .elementor-post__excerpt {
    margin-bottom: 30px !important;
}
/* post read more buttons */
.elementor-widget-wrap .elementor-element .elementor-post .elementor-post__read-more {
    font-size: 18px;
    font-weight: 300;
    letter-spacing: -0.1px;
    color: #fff !important;
    background-color: #C80028;
    border-radius: 0px 0px 0px 0px;
    padding: 12px 24px;
}
.elementor-widget-wrap .elementor-element .elementor-post .elementor-post__read-more:hover {
	background-color: #99021e;
}

/* distributor service section */ 
.distributor-service .elementor-col-50:first-child a:hover {
    color: #fff !important;
}
.distributor-service .elementor-col-50:last-child h2,
.distributor-service .elementor-col-50:last-child a,
.distributor-service .elementor-col-50:last-child a:hover {
    color: #252422 !important;
}

/* distributor search */
body .ssf-main-content {
    font-family: inherit !important;
}
.ssf-main-content input {
    font-size: 20px !important;
    font-weight: 400;
    border: 0px;
}
.ssf-content-section #applyFilterOptions {
    padding: 12px 24px;
    border-radius: 0;
    box-shadow: none;
    background: center center no-repeat #c80028;
    color: white;
    font-family: inherit;
    font-size: 18px;
    text-transform: none;
}
.ssf-content-section #applyFilterOptions:hover {
    background: #99021e !important;
}
.ssf-content-section .small-6 {
    width: 100%;
	margin-left: 0;
}
.ssf-content-section .arrow-toggler:hover:after {
	color: #666;
}
.ssf-content-section .ssf-panel {
    background-color: #2c2b2a;
    border: none;
}
.ssf-panel.store-locator__actions-bar {
    background: #2c2b2a !important;
}
.ssf-content-section h2.title.space-bottom-3x {
    color: #fff;
	font-size: 32px;
    padding-top: 10px;
    text-align: center;
    margin-bottom: 20px !important;
}
.ssf-content-section .infobox__marker {
    background-color: #c80028;
	border: 3px solid #c80028;
    color: #fff;
    font-size: 25px;
    font-weight: normal;
}
.ssf-content-section .store-locator__infobox.is-active .infobox__marker {
    background-color: #66CC33;
	border: 3px solid #66CC33;
}
.ssf-main-content,
#mainContent .section {
    background-color: transparent !important;
}
.filter__row,
.ssf-panel.store-locator__actions-bar {
    background: #fff;
}
.ssf-main-content td,
.ssf-main-content table {
    border: 0px;
}
.pad-bottom-2x.medium-pad-bottom-4x.store-locator-section {
	padding-bottom:0;
}
@media only screen and (min-width: 64.063em) {
	.large-3, .large-9 {
		width: 50% !important;
	}
	#distributor-search #storeLocator__storeList .medium-4 {
		width: 50% !important;
		max-width: 50% !important;
	}
	#distributor-search #ssf_adress_input_box {
		padding-left: 15px !important;
		padding-right: 15px !important;
		background: #21201F !important;
		margin: 0 20px;
	}
	.field-holder__icon ~ .ssf-field {
    	height: 50px;
		border-color: none;
	}
}
@media only screen and (min-width: 40.063em) {
	.medium-clear-left, .medium-up-clear-left {
		clear: none !important;
	}
}

/* legal stuff */
.legal ul, 
.legal ol {
    margin: 0 0 1.5em 1em;
	font-weight: bold;
}

/* footer */
#footer-links-section h4 {
	font-size: 22px;
}
#footer-links ul {
  list-style: none;
	margin: 0;
}
.footer-menu .elementor-nav-menu a,
.footer-menu .elementor-nav-menu a:focus, 
.footer-menu .elementor-nav-menu a:hover {
    padding: 0 20px;
    line-height: inherit;
}
.footer-menu .elementor-nav-menu a:hover,
.footer-menu .elementor-nav-menu a:focus, 
.footer-menu .elementor-nav-menu a:active {
    color: #efefef;
}
.footer-nav .elementor-nav-menu .elementor-item,
.footer-nav .elementor-nav-menu .elementor-item:hover {
    padding-top: 10px;
}
.footer-bottom-menu a {
	padding-right: 20px;
	color: #efefef;
}
.footer-bottom-menu a:hover, .footer-bottom-menu a:focus, .footer-bottom-menu a:active {
    color: #c80028;
}

@media only screen and (min-width: 1168px) {
	.elementor-swiper-button-prev {
		left: 80px !important;
	}
	.elementor-swiper-button-next {
		right: 80px !important;
	}
	.product-features .elementor-swiper-button-prev {
		left: 160px !important;
	}
	.product-features .elementor-swiper-button-next {
		right: 160px !important;
	}
}

@media (max-width: 768px) {
		.elementor-slides .swiper-slide-bg {
			-webkit-background-size: cover !important;
			background-size: cover !important;
			background-position: 100% !important;
	}
	.elementor-slides .elementor-slide-description p {
    font-size: 16px !important;
	}
	.elementor-slides .elementor-slide-description h1 {
		font-size: 28px;
	}
	.elementor-slides .elementor-slide-description h2 {
		font-size: 22px;
	}
	.elementor-slides .elementor-slide-description h3 {
		font-size: 20px;
	}
}


/* nav icons */
.main-navigation .mobile-bar-items a,
.menu-toggle {
    line-height: inherit;
}
.icon-menu-bars svg,
.pro-close svg {
    font-size: 30px;
}
.icon-search svg {
    font-size: 22px;
}
/*.icon-arrow svg {
    height: 1.6em;
    width: 1.6em;
}
*/

/* button */
button, html input[type="button"], input[type="reset"], input[type="submit"], a.button, a.button:visited, a.wp-block-button__link:not(.has-background) {
    color: #ffffff;
    background-color: #c80028;
}
button:hover, html input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover, a.button:hover, a.button:visited:hover, a.wp-block-button__link:not(.has-background):hover {
    background-color: #99021e;
}
label input, label select {
    font-weight: 400;
	color: #000;
}
.elementor-button.elementor-slide-button.elementor-size-sm {
    color: #FFFFFF;
    border: none !important;
	background-color: #C80028 !important;
    border-radius: 0px;
}
.elementor-button.elementor-slide-button.elementor-size-sm:hover {
	background-color: #99021e !important;
}
.go-button .elementor-cta__button.elementor-button {
    padding: 12px 24px !important;
    width: 124px;
}

/* warranty check tool */
.elementor-section#warranty-check-section {
	min-height: calc(100vh - 300px);
}
/*.warranty-search-form label:first-child {
    width: 100% !important;
}*/
/*.warranty_search_form, .warranty-info-wrapper {
    width: 100% !important;
    max-width: 100% !important;
}*/
/*
.warranty-search-form label:first-child {
    width: 60% !important;
}
.warranty-search-form label:nth-child(2) {
    width: 20% !important
}
.warranty_search_form input[type="search"] {
    width: 100%;
}
.warranty_search_form label select#warranty_serial_country {
-webkit-appearance: none;
    -webkit-border-radius: 0px;
    background-image: url("data:image/svg+xml;utf8,<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='24' height='24' viewBox='0 0 24 24'><path fill='%23444' d='M7.406 7.828l4.594 4.594 4.594-4.594 1.406 1.406-6 6-6-6z'></path></svg>");
    background-position: 100% 50%;
    background-repeat: no-repeat;
}

h3.warranty-result-title {
    padding-top: 40px;
    font-size: 22px;
}

.warranty-info-wrapper .grid-50.first-column {
    padding-left: 0;
}

.company {
	color: #c80028;
	font-weight: bold;
	font-size: 30px;
	display: inline-block;
    vertical-align: -2px;
}

.warranty-info-wrapper table {
    width: auto;
}
.warranty-info-wrapper td {
    padding: 0;
	padding-right: 20px;
	color: #c80028;
	font-weight: 400;
	border: none;
	border-bottom: 1px solid rgba(255,255,255,.1);
    white-space: nowrap;
}
td.warranty_field {
	color: #fff;
	font-weight: 300;
}
.warning {
	color: #c80028;
	font-weight: 400;
	font-size: 110%;
}
.warning span {
    line-height: 1.2;
    display: inline-block;
    padding-top: 10px;
	font-size: 85%;
}

@media only screen and (max-width: 840px) {
	table.responsive {
	margin-bottom: 0;
	overflow: hidden;
	overflow-x: scroll;
	display: block;
	}
}

@media (min-width: 1025px) {
	.warranty-info-wrapper .grid-40 {
		width: 29%;
		padding-top: 50px;
	}
	.warranty-info-wrapper .grid-50.first-column {
		padding-left: 0;
		width: 40%;
	}
}
 */

@media (max-width: 768px) {
    /* mobile menu logo */
	.navigation-branding {
    	margin-left: 10px !important;
	}
	/* mobile search icon */
	.main-navigation .menu-bar-items {
		order: 1;
		margin-right: 10px;
		margin-left: 10px !important;
	}
	/* hamburger and search icon color */
	.main-navigation .main-nav ul li a, .main-navigation .menu-toggle, .main-navigation .menu-bar-items {
    	color: #fff;
	}
	.content-headline h2, h3 {
		font-size: 25px !important;
	}
	.content-headline h3 {
    	width: 100%;
	}	
	.mobile-hide {
		display: none;
	}
	.secondary-navigation {
        display: none;
    }
	.elementor-element#contact-widget {
    	top: 250px;
	}
	.elementor-posts article.elementor-post {
        display: block;
    }
    .elementor-post__thumbnail__link {
        margin-bottom: 20px;
    }
	.elementor-global-7346 .elementor-social-icon {
		font-size: 20px;
		padding: .5em;
		margin-right: 5px;
	}
	/* footer */
	.footer-menu .elementor-nav-menu a {
		padding: 5px 0 !important;
	}
	.footer-menu .elementor-nav-menu {
		display: block !important;
	}
	.footer-bottom-menu a {
		display: block;
	}
	.generate-back-to-top {
    	right: 10px;
		bottom: 45px;
	}
	.mobile-relative.elementor-widget-image {
    	position: relative !important;
		top: 25px !important;
		right:0 !important;
		margin: auto !important;
	}
	.col-2-products h3.elementor-heading-title {
    	max-width: 100%;
	}
}

@media (min-width: 769px) and (max-width: 1024px) {
    /* CSS in here for tablet only */
}
@media (min-width: 1025px) {
    /* CSS in here for desktop only */
}
/* ----------- Laptop ----------- */
@media screen 
  and (min-device-width: 1200px) 
  and (max-device-width: 1600px) 
  and (-webkit-min-device-pixel-ratio: 1) { 
	.col-2-products .elementor-row .elementor-element > .elementor-element-populated {
    	padding: 50px 50px 50px 50px !important;
	}
	.col-2-products .elementor-widget-text-editor {
   		max-width: 220px !important;
	}
	.product-slider-section .elementor-element .swiper-slide-contents,
	#slider-section .elementor-element .swiper-slide-contents {
    	max-width: 38% !important;
	}
	.product-slider-section .elementor-element .swiper-slide-contents h1,
	#slider-section .elementor-element .swiper-slide-contents h1,
	#slider-section .elementor-element .swiper-slide-contents h2 {
    	font-size: 48px;
		line-height: 1.1;
	}
	.elementor-slide-description p, 
	.product-slider-section h2,
	.header-headline h2 {
		font-size: 20px !important;
	}
	/* header image */
	#inverters-sub-header.elementor-section.elementor-top-section  {
    	background-position: 0px -151px;
	}
}