/*
Theme Name: Porto Child
Theme URI: https://www.portotheme.com/wordpress/porto
Author: P-THEMES
Author URI: https://www.portotheme.com/
Description: Porto Responsive WordPress + eCommerce Theme.
Version: 1.1
Template: porto
License: Commercial
License URI: http://themeforest.net/licenses/regular_extended
Tags: woocommerce, corporate, ecommerce, responsive, blue, black, green, white, light, dark, red, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, fixed-layout, responsive-layout, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready
*/

/*************** ADD YOUR CUSTOM CSS HERE  ***************/

/* Product Subcategories */
.search #mobile-cat-slider {display:none !important;}
@media (min-width: 768px) {
	.subcategories-grid {display:grid;grid-template-columns:repeat(4, 1fr);grid-gap:2rem;padding:1rem 2rem;margin-bottom:2rem;border-bottom:3px solid #34495e;}
	.subcategory a:hover img{animation: gelatine 1s;}
	@keyframes gelatine {
	  from, to { transform: scale(1, 1); }
	  25% { transform: scale(0.9, 1.1); }
	  50% { transform: scale(1.1, 0.9); }
	  75% { transform: scale(0.95, 1.05); }
	}
}
@media (max-width: 768px) {
	#mobile-cat-slider {margin: 4rem 1rem;}
	#mobile-cat-slider .slider-nav-button {background:#3d566e;width:52px;height:52px;display:block;position:absolute;border-radius:50px;transform:translateY(50%);bottom:50%;cursor:pointer;z-index:1;box-shadow:0 0 20px rgba(0,0,0,0.2);transition:background-color 200ms ease;}
	#mobile-cat-slider .slider-nav-button:hover, #mobile-cat-slider .slider-nav-button:active, #mobile-cat-slider .slider-nav-button:focused {background:#4cbd8b !important;}
	#mobile-cat-slider .slider-prev:after, #mobile-cat-slider .slider-next:after {content:'';width:20px;height:20px;display:block;background-size:cover;background-position:center;position:absolute;top:50%;left:50%;transform: translate(-50%, -50%);margin-top:0;}
	#mobile-cat-slider .slider-prev:after {background-image:url('/wp-content/themes/porto-child/images/chevron-left-solid-white.svg');}
	#mobile-cat-slider .slider-next:after {background-image:url('/wp-content/themes/porto-child/images/chevron-right-solid-white.svg');}
	#mobile-cat-slider .slider-prev{left:-5%;}
	#mobile-cat-slider .slider-next{right:-5%;}
	#mobile-cat-slider .slider-nav-button.slick-hidden {display:none;}
	#mobile-cat-slider .slick-track, #mobile-cat-slider .slick-list {display:flex;align-items:center;}
	#mobile-cat-slider .slide {margin:0 1rem;display: flex; flex-wrap: wrap; justify-content: center; align-items: center; text-align: center;}
	#mobile-cat-slider .slide img {width:100% !important;max-width:none;object-fit:contain;}
	#mobile-cat-slider .slick-slider {margin: 0 5rem 3.5rem !important;}
	#mobile-cat-slider .slick-dots li.slick-active button:before {color:#3d566e;}
	#mobile-cat-slider .slick-dots li button:before {font-family:'slick';font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:'•';text-align:center;font-size: 40px;color:#4cbd8b;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}
}
@media (max-width:550px){
	#mobile-cat-slider .slide {margin:0 6rem;}
	#mobile-cat-slider .slider-nav-button {width:42px;height:42px;}
}
.subcategory {text-align:center;}
.subcategory h2 {margin:15px 0;color:#34495e;font-weight:500;font-size:18px;}
.subcategory img {background:#c6cacd;border-radius:50%;max-height:150px;}

/* Mobile Menu Fixes */
#header .mobile-toggle {color:#33495d !important;}
.panel-opened #header .mobile-toggle {color:#fff;}
#side-nav-panel {width:100% !important;transform:translateX(-100%);}
.accordion-menu li.menu-item>a {padding:10px 15px;}
.accordion-menu .arrow {width:45px;height:45px;line-height:45px;padding:0;top:0;}
#side-nav-panel .accordion-menu .arrow, #side-nav-panel .side-nav-panel-close {font-size:20px;}

.mega-menu .narrow li.menu-item>a {padding:15px;}
.mega-menu .narrow li.menu-item-has-children>a:before {font-size:14px;opacity:1;}

#header .searchform .live-search-list {z-index:999999;}
#mini-cart .cart-popup {z-index:999999;}
/********************/

#header .main-menu { overflow: visible; }

.header-row .header-center { padding: 0; }

#header .main-menu > li.menu-item {margin:0px auto 0px auto;z-index:99999;}

#topcontrol {bottom: 28px !important;}
#topcontrol i {color: #fff !important;}

/********** Cold Banner **********/
.cold-winter h1 {font-family: Roboto; font-size:3rem; color:#212e3b; text-shadow: none; font-weight: 900;}
.cold-winter .shadow-text {text-shadow:-4px 2px 5px #212e3b; color: #fff; font-size: 1.1rem; -webkit-text-stroke: 0.4px #000;}
.cold-winter .dark-blue-button a {background-color:#212e3b !important; color:#fff; font-family: Roboto; font-weight: 200; font-size: 2rem; padding: 0.2rem 1rem;}
.cold-winter .dark-blue-button a:hover {color:#212e3b !important; background-color:#fff !important; border: 3px solid #212e3b; font-weight: 400;}
.cold-winter .middle-text {margin-top: 2rem; width:35%; margin-left:auto; margin-right: auto;}
.cold-winter .middle-text h4:first-child {margin-bottom: 2rem;}
.advert-banner .owl-carousel .owl-item img {max-height: 359px;}
.advert-banner .vc_btn3.btn {margin-top: 2.5rem;}

.hide {display:none;}

/** d4d **/
.main-menu-wrap {
	margin-bottom: 20px; /** removed unnecessary desktop menu margin and instead reassigned it to the wrapper **/
}
@media (min-width: 992px) {
.header-bottom {
	border-top:0px; /* set desktop menu obsolete border */
	}
}
#header .main-menu > li.menu-item:first-of-type {
    margin: 0px auto 0px 0px; /* fix desktop nav menu first menu padding */
}
@media (max-width: 991px) {
	#side-nav-panel .searchform input[type="text"]{
		color:#ffffff; /* set mobile nav search color */
	}
}
/*** fix for footer questions telephone number not showing ***/

#footer h3.vc_custom_heading.text-color-primary.mb-4.mb-md-0.align-left.heading-primary {
    color: #cccccc !important;
}
/** change testimonial quote icon colour **/
.testimonial blockquote:before {
    color: #4cbd8b;
}
/*** change background for TrustPilot Footer Top ***/
.footer-top {
	padding: 20px 0px;
	background: #f4f4f4;
}

/***  amendments for 'request a quote' system  ***/

.ywraq-form-table-wrapper .yith-ywraq-mail-form-wrapper {
    background: #fafafa;
    margin-top: 20px;
}
.yith-ywraq-mail-form-wrapper h3 {
    font-size: 2em;
    color: #4cbc8b;
    margin-top: 20px;
}
a.add-request-quote-button.button:hover {
    text-decoration: none;
}
@media (min-width: 768px) {
.ywraq-form-table-wrapper td.actions input[type="submit"] {
    margin-left: 20px;
}
}
/*** hides -OR- on product pages caused by Stripe ***/
#wc-stripe-payment-request-button-separator {padding:0px 0px !important; display:none !important;}

#wc-stripe-payment-request-wrapper {
    display: none !important;
}

/*** removes border lines on product pages ***/
.single_variation_wrap, .single-product .cart:not(.variations_form) {
	border:none;
}

/*** increases border line on single product page under the review stars ***/
.single-product .woocommerce-product-rating:after {
	width:100% !important;
}

/*** changes colour of price on single product page ***/
.price {
    color: #34495e !important;
}

/*** changes request a quote message field label 
#yith-ywraq-mail-form #rqa_message_row > label {
    display: none;
}
#yith-ywraq-mail-form #rqa_message_row:before {
    content: 'Address and VAT Number';
}***/


/*** for new optional extras when using cross sells ***/
.related-optional-extras {
    background-color: #f4f4f4;
    padding:15px;
    margin-bottom:20px;
}
ul.optional-extras-products {
    display: grid;
    justify-content: space-between;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    margin: 0;
    padding: 0;
}
.optional-extras-single-product::marker {
    content:none;
}
ul.optional-extras-products p.product.woocommerce.add_to_cart_inline { /* price */
    border: none !important; 
    padding: 0 !important;
     display: block;
    font-size: 1.125rem;
    margin-bottom: 1rem;
    color: #34495e;
    font-weight: 600;
    line-height: 100%;
}
.optional-extras-products .yith-wcwl-add-button {
    display: none;
}

ul.optional-extras-products .add_to_cart_button {
    background-color: #34495e;
    border: 1px solid #34495e;
    color: #fafbfb;
}
ul.optional-extras-products .add_to_cart_button:before {
    content: "\e8ba";
    font-family: "Porto";
}
ul.optional-extras-products li {/** shows elipsis and truncates title text if larger than 250px li width */
    /*width: 250px;*/
    -webkit-box-flex: 1;
    flex: 1;
    margin-right:20px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
ul.optional-extras-products li > .optional-extra-title { /* product title */
    font-size: .9375rem;
    font-weight: 400;
    line-height: 1.35;
    letter-spacing: -.01em;
    margin-bottom: .45rem;
    color: #323232;
}

ul.optional-extras-products .add-links {
    display: flex;
    align-items: center;
}
ul.optional-extras-products .add-links .added_to_cart {
    margin-left: 10px;
}
/*** hides image from modal pop-up window when adding an optional product to the basket only on a single-product page **/
.single-product .after-loading-success-message .success-message-container .msg-box img {
    display:none;
}

/** hides default message "You've just added this product to the cart:" when an optional extra is added to the cart **/
.single-product .after-loading-success-message .success-message-container .msg {
    display:none;
}
.single-product .after-loading-success-message .success-message-container .msg-box:before {
    content:'Product added to the basket';
    color: #333333;
}
/*** END - for new optional extras when using cross sells ***/
/*** mini-cart pop-up styling for mobile devices ***/
@media (max-width: 767px) {
    #mini-cart .cart-popup {
        right: -70px;
    }
}
/*** styling for new mini-cart in sidebar ***/
#side-nav-panel #mini-cart {
    padding: 10px 15px;
    width: 100%;
}
#side-nav-panel .side-cart #mini-cart .cart-popup {
    width: 100%;
    right: 0px;
}
#side-nav-panel .side-cart {
    text-align: center;
}
#side-nav-panel #mini-cart .minicart-icon {
    border: 2px solid #ffffff;
}

/******************** SALE BANNER ********************/
.page-id-8172 .owl-item:first-child {max-height: 359px;}

.page-id-8172.owl-carousel .owl-item img {max-height: 359px;}

.page-id-8172 .vc_btn3.btn {margin-top: 2.5rem;}

#saletext {right: 8vw; top: 30vh; position: absolute;}

#saletext h2 {
	color: #fff;
	text-shadow: -2px -2px 0 #000, 2px -2px 0 #000, -2px 2px 0 #000, 2px 2px 0 #000;
	font-weight: 800;
  	font-size: x-large;
}

#salebutton {right: 20vw; top: 30vh; position: absolute;}

#salebutton .vc_btn3.btn {
    background-color: #fff !important;
    color: #000 !important;
    border: 5px solid #000;
    font-weight: 600 !important;
    font-size: x-large;
    text-shadow: 1px 2px 0 #a70915;
    transform: skew(-20deg);
}

@media (max-width: 428px) {	
	.saleimage {width:100vw; top:0; position: absolute;}
	#saletext {left: 0vw; top:30vh; position: absolute;}
	#saletext h2 {font-size: small;}
	#salebutton {left: 8vw; top:30vh; position: absolute;}
}

@media  (min-width: 429px) and (max-width: 619px) {	
	.saleimage {top:0; position: absolute;}
	.saleimage img {height:30vh !important;}
	#saletext {left: 0vw; top:31vh; position: absolute;}
	#saletext h2 {font-size: small;}
	#salebutton {left: 8vw; top:30vh; position: absolute;}
}

@media (min-width: 620px) and (max-width: 767px) {
	#swissag {width: 65%}
	#flomec {width: 60%;}
	.saleimage {width:70vw; height:40vh; top:0vh; position:absolute;}
	#saletext {left: 4vw; top:29vh;}
	#saletext h2 {font-size: medium;}
	#salebutton {left: 20vw; top:31vh; font-size: large; text-shadow: 1px 1.5px 0 #a70915;}
}

@media (min-width: 769px) {#swissag {width: 40%;} #flomec {width: 40%;}}

@media (min-width: 768px) and (max-width: 959px) {
	.saleimage {width:70vw; top:0vh; position:absolute;}
	#saletext {right: 4vw; top:25vh;}
	#saletext h2 {font-size: medium;}
	#salebutton {right: 10vw; top:24vh;}
}

@media (max-width: 960px){
.cold-winter .middle-text {width:100%;}
}

@media (min-width: 960px) and (max-width: 1200px) {
	#saletext {right:1vw; top: 18vh;}
	#saletext h2 {font-size: large;}
	#salebutton {right: 5vw; top:18vh;}
}

@media (min-width: 1200px){#swissag {width: 30%;}}

/****************************************/


/***** Product Category FAQ *****/
.product-cat-faq {margin:3rem 0;}
.product-cat-faq h3 {text-align:center;margin-bottom:1.5rem;}
.product-cat-faq .accordion-tab {margin-bottom:10px;}
.product-cat-faq .accordion-tab-header {
	background-color: var(--porto-primary-color);
    color: #fff;
    cursor: pointer;
    transition: .15s ease-out;
    padding: 12px 20px 12px 15px;
    border-left: 3px solid var(--porto-primary-color);
    display: block;
    font-size: 1.1em;
    min-height: 20px;
    position: relative;
    font-weight: 600;
}
.product-cat-faq .accordion-tab.active .accordion-tab-header {background-color:var(--porto-secondary-color);}
.product-cat-faq .arrow {
    position: absolute;
    font-size: 8px;
    top: calc(50% + 0.25em);
    right: 14px;
    border-top: 2px solid;
    border-right: 2px solid;
    border-color: inherit;
    width: 1em;
    height: 1em;
    transition: transform .3s,top .3s;
    -webkit-backface-visibility: hidden;
    transform: translate3d(0,-50%,0) rotate(-45deg);
    transform-origin: center;
    text-align: center;
    transition: transform .3s;
    top: calc(50% - 0.75em);
    transform: rotate(135deg);
    border-color: #fff;
}
.product-cat-faq .accordion-tab-content {height:0;overflow:hidden;transition:height 0.3s ease-in-out;}
.product-cat-faq .accordion-tab-content .accordion-content-wrapper {padding:2rem;}
.product-cat-faq .active .arrow {
	position: absolute;
    font-size: 8px;
    top: calc(50% + 0.25em);
    right: 14px;
    border-top: 2px solid;
    border-right: 2px solid;
    border-color: inherit;
    width: 1em;
    height: 1em;
    transition: transform .3s,top .3s;
    -webkit-backface-visibility: hidden;
    transform: translate3d(0,-50%,0) rotate(-45deg);
    transform-origin: center;
    text-align: center;
}
.product-cat-faq .accordion-tab-content p:last-of-type {margin-bottom: 0;}
/***********************************/