/*
Theme Name: Child Theme
description: Child stylesheet containing CSS hacks and overrides for Elementor, WooCommerce, and more.
Author: MyWork
Author URL: http://mywork.com.au
Template: hello-elementor
Version: 2.5.0
Text Domain: child-theme
*/
/* Global START */
body,
html {
	overflow-x: hidden;
}
p:last-child {
	margin-bottom: 0;
}
/* Remove Focus Outline On Buttons and Other Elements */
*:focus,
[type=button]:focus,
[type=submit]:focus,
button:focus {
	outline: none;
}
/* make columns multiline */
section.multiline > .elementor-container > .elementor-row/* ,
section.multiline > .elementor-container > .elementor-column,
section.multiline > .elementor-container */ {
	flex-wrap: wrap;
}
@media (min-width: 1025px) {
	section.multiline.col-1 > .elementor-container > .elementor-row > .elementor-column {
		width: 100%;
	}
	section.multiline.col-2 > .elementor-container > .elementor-row > .elementor-column {
		width: 50%;
	}
	section.multiline.col-3 > .elementor-container > .elementor-row > .elementor-column {
		width: calc(100% / 3);
	}
	section.multiline.col-4 > .elementor-container > .elementor-row > .elementor-column {
		width: 25%;
	}
	section.multiline.col-5 > .elementor-container > .elementor-row > .elementor-column {
		width: 20%;
	}
}
/* Align columns center */
.align-center > .elementor-container > .elementor-row,
.align-center > .elementor-container,
.align-center > .elementor-container > .elementor-column {
	justify-content: center;
}
/* Align columns left */
.align-left > .elementor-container > .elementor-row,
.align-left > .elementor-container,
.align-left > .elementor-container > .elementor-column {
	justify-content: flex-start;
}
/* Align columns right */
.align-right > .elementor-container > .elementor-row,
.align-right > .elementor-container,
.align-right > .elementor-container > .elementor-column {
	justify-content: flex-end;
}
/* Align Sections Right */
.section-right.elementor-section .elementor-container {
	margin-right: 0;
}
/* Align Sections Left */
.section-left.elementor-section .elementor-container {
	margin-left: 0;
}
/* Align Inline Items Center */
.align-items-center .elementor-widget-wrap {
	justify-content: center;
}
/* Align Inline Items Right */
.align-items-right .elementor-widget-wrap {
	justify-content: flex-end;
}
/* OL UL margin bottom */
ol, ul {
	margin-bottom: 0.9rem;
}
/* Remove Left Border of Sub Menu Items */
ul.elementor-nav-menu--dropdown a,
ul.elementor-nav-menu--dropdown a:focus,
ul.elementor-nav-menu--dropdown a:hover {
	border-left: 0 !important;
}
/* Element Orders */
@media (max-width: 1024px) {
	.order-n10-tablet { order: -10; }
	.order-n9-tablet { order: -9; }
	.order-n8-tablet { order: -8; }
	.order-n7-tablet { order: -7; }
	.order-n6-tablet { order: -6; }
	.order-n5-tablet { order: -5; }
	.order-n4-tablet { order: -4; }
	.order-n3-tablet { order: -3; }
	.order-n2-tablet { order: -2; }
	.order-n1-tablet { order: -1; }
	.order-0-tablet { order: 0; }
	.order-1-tablet { order: 1; }
	.order-2-tablet { order: 2; }
	.order-3-tablet { order: 3; }
	.order-4-tablet { order: 4; }
	.order-5-tablet { order: 5; }
	.order-6-tablet { order: 6; }
	.order-7-tablet { order: 7; }
	.order-8-tablet { order: 8; }
	.order-9-tablet { order: 9; }
	.order-10-tablet { order: 10; }
}
@media (max-width: 767px) {
	.order-n10-mobile { order: -10; }
	.order-n9-mobile { order: -9; }
	.order-n8-mobile { order: -8; }
	.order-n7-mobile { order: -7; }
	.order-n6-mobile { order: -6; }
	.order-n5-mobile { order: -5; }
	.order-n4-mobile { order: -4; }
	.order-n3-mobile { order: -3; }
	.order-n2-mobile { order: -2; }
	.order-n1-mobile { order: -1; }
	.order-0-mobile { order: 0; }
	.order-1-mobile { order: 1; }
	.order-2-mobile { order: 2; }
	.order-3-mobile { order: 3; }
	.order-4-mobile { order: 4; }
	.order-5-mobile { order: 5; }
	.order-6-mobile { order: 6; }
	.order-7-mobile { order: 7; }
	.order-8-mobile { order: 8; }
	.order-9-mobile { order: 9; }
	.order-10-mobile { order: 10; }
}
/* Push Flex Widets Left or Right */
@media (min-width: 1025px) {
	.push-right-desktop {
		margin-left: auto;
	}
	.push-left-desktop {
		margin-right: auto;
	}
}
@media (max-width: 1024px) {
	.push-right-tablet {
		margin-left: auto;
	}
	.push-left-tablet {
		margin-right: auto;
	}
}
@media (max-width: 767px) {
	.push-right-mobile {
		margin-left: auto;
	}
	.push-left-mobile {
		margin-right: auto;
	}
}
/* Tables - For overriding Elementor's default table styling - Elementor's styling is below, edit values to override elementor's default styling */
/* table {
	background-color: transparent;
	width: 100%;
	margin-bottom: 15px;
	font-size: 0.9em;
	border-spacing: 0;
	border-collapse: collapse;
} */
table td,
table th {
	/* padding: 15px;
	line-height: 1.5;
	vertical-align: top; */
	border: inherit;
}
/* table th {
    font-weight: 700;
} */
/* table tfoot th,
table thead th {
    font-size: 1em;
} */
/* table caption + thead tr:first-child td,
table caption + thead tr:first-child th,
table colgroup + thead tr:first-child td,
table colgroup + thead tr:first-child th,
table thead:first-child tr:first-child td,
table thead:first-child tr:first-child th {
    border-top: 1px solid #ccc;
} */
table tbody > tr:nth-child(odd) > td,
table tbody > tr:nth-child(odd) > th {
    background-color: transparent;
}
table tbody tr:hover > td,
table tbody tr:hover > th {
    background-color: transparent;
}
/* table tbody + tbody {
    border-top: 2px solid #ccc;
} */
/* @media (max-width: 767px) {
    table table {
        font-size: 0.8em;
    }
    table table td,
    table table th {
        padding: 7px;
        line-height: 1.3;
    }
    table table th {
        font-weight: 400;
    }
} */
/* Fix Fancybox Styling */
.fancybox-button {
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	font-size: 1rem !important;
}
/* Global END */

/* Sticky Header START */
section.sticky-header {
    --header-height: 86px;
    --opacity: 1;
    --shrink-me: 0.8;
    --logo-width: 170px;
    /* --sticky-background-color: var( --e-global-color-633bcce ); You can now simply add a background colour to the header section in Elementor and the CSS below will deal with when to show the background colour and when to be transparent */
    --transition: .3s ease-in-out;

    transition: all var(--transition);
}
section.sticky-header.elementor-sticky--effects {
    /* background-color: var(--sticky-background-color) !important; */
    background-image: none !important;
    opacity: var(--opacity) !important;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}
section.sticky-header:not(.elementor-sticky--effects) {
    background-color: transparent !important;
}
section.sticky-header > .elementor-container {
    transition: min-height var(--transition);
}
section.sticky-header.elementor-sticky--effects > .elementor-container {
    min-height: calc(var(--header-height) * var(--shrink-me))!important;
    height: calc(var(--header-height) * var(--shrink-me));
}
section.sticky-header .elementor-nav-menu .elementor-item {
    transition: padding var(--transition);
}
section.sticky-header > .elementor-container .head-logo {
    transition: width var(--transition);
}
section.sticky-header.elementor-sticky--effects .head-logo {
    width: calc(var(--logo-width) * var(--shrink-me)) !important;
}
section.sticky-header > .elementor-container .head-btn a {
    transition: all var(--transition);
}
section.sticky-header.elementor-sticky--effects .head-btn a {
    padding: calc(15px * var(--shrink-me)) calc(30px * var(--shrink-me));
}
/* Sticky Header END */

/* Password Protect Form */
#content.post-password-required {
	padding: 100px 0 !important;
	text-align: center;
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 20px;
}
#content.post-password-required form.post-password-form {
	
}
#content.post-password-required form.post-password-form p {
	
}
#content.post-password-required form.post-password-form p:last-child {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 30px;
}
#content.post-password-required form.post-password-form p:last-child label {
	display: flex;
	align-items: center;
}
#content.post-password-required form.post-password-form p:last-child label input {
	margin: 0 12px;
}
#content.post-password-required form.post-password-form p:last-child input[type="submit"] {
	
}
/* FacetWP */
/* .facetwp-checkbox {
	background-image: none !important;
	position: relative;
	padding-right: 25px;
	margin-bottom: 7px !important;
}
.facetwp-checkbox::before {
	position: absolute;
	content: "";
	width: 12px;
	height: 12px;
	border: 1px solid var( --e-global-color-ac9a27d );
	top: 3px;
	left: 0;
}
.facetwp-checkbox.checked::before {
	background-color: var( --e-global-color-ac9a27d );
}
.facetwp-counter {
	
}
.facetwp-display-value {
	padding-right: 0 !important;
	font-size: 0.9rem;
	line-height: 1.4;
	display: block;
}
.facetwp-expand {
	position: absolute;
	right: 0;
	top: -6px;
}
.facetwp-expand i {
	font-size: 12px;
	padding: 10px;
}
.flyout-row h3 {
	font-size: 1rem;
}
.facetwp-selections > ul {
	margin-top: 15px;
	margin-bottom: 0;
	padding: 0;
	margin-left: -5px;
	margin-right: -5px;
}
.facetwp-selections > ul > li {
	font-size: 13px;
	line-height: 1.3;
	padding: 8px 15px;
	border: 1px solid var( --e-global-color-2a08f77 );
	display: inline-block;
	vertical-align: middle;
	background: #fff;
	margin: 5px;
}
.facetwp-selections > ul > li:hover {
	background-color: var( --e-global-color-ac9a27d );
	border-color: var( --e-global-color-ac9a27d );
	color: #fff;
}
.facetwp-selections > ul > li span:not(.facetwp-selection-label):hover {
	text-decoration: underline;
}
.facetwp-selections .facetwp-selection-value {
	background-image: none !important;
	padding: 5px 0 !important;
	margin: 0 !important;
}
.facetwp-selections .facetwp-selection-value + .facetwp-selection-value {
	margin-left: 15px !important;
}
.facetwp-selections .facetwp-selection-value::after {
	content: "\f00d";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	line-height: 1;
	font-size: 10px;
	display: inline;
	margin-left: 10px;
} */

/* Woocommerce Customisations */
/* Notifications */
.woocommerce-notices-wrapper {
	margin: 0 auto;
	max-width: 1400px;
	padding: 0 20px;
}
.woocommerce-notices-wrapper > div {
	margin-top: 20px;
}
/* Product Page */
/* Fixed Width For Image Column */
/* @media (min-width: 1025px) {
	.prod-col-img {
		width: 605px !important;
	}
	.prod-col-details {
		width: calc(100% - 605px) !important;
	}
} */
/* Product Image/Gallery */
@media (min-width: 1025px) {
	/* Change Number of additional images per row */
	.woocommerce div.product div.images .flex-control-thumbs li {
		width: calc(100% / 4);
	}
	.woocommerce div.product .woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1) {
		clear: none;
	}
	/* VERSION 1 - Vertical Scrolling Thumbnails - Desktop Only */
	/* .woocommerce-page div.product div.images {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-item-align: center;
		align-self: center;
	}
	.woocommerce-page div.product div.images .flex-viewport {
		margin-left: 180px;
		margin-bottom: 0 !important;
	} */
	/* NEW VERSION - 100% height */
	/* .woocommerce div.product div.images .flex-control-thumbs {
		overflow: auto;
		margin: 0 20px 0 0 !important;
		padding-right: 10px;
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		height: 100%;
		width: 160px;
		direction: rtl;
		padding-right: 0px;
		padding-left: 10px;
	} */
	/* OLD VERSION - Set height 
	.woocommerce div.product div.images .flex-control-thumbs {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-flex: 1;
		-ms-flex: 1 0 160px;
		flex: 1 0 160px;
		max-height: 425px;
	} */
	/* .woocommerce div.product div.images .flex-control-thumbs li {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		width: 100%;
		margin: 0px;
        width: 100%;
        padding: 0 !important;
		background: #fff;
	}
	.woocommerce div.product div.images .flex-control-thumbs li + li {
		margin-top: 10px;
	}
	.woocommerce-product-gallery ul.flex-direction-nav {
		left: 180px;
	} */
}
@media (max-width: 1024px) {
	/* VERSION 2 - Horizontal Scrolling Thumbnails - Kicks in on Tablet / Mobile
	.woocommerce div.product div.images .flex-control-thumbs {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		overflow: auto;
		margin: 0 !important;
		padding: 10px 0;
	}
	.woocommerce div.product div.images .flex-control-thumbs li {
		padding: 0 !important;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-box-flex: 1;
		-ms-flex: 1 0 20%;
		flex: 1 0 20%;
	}
	.woocommerce div.product div.images .flex-control-thumbs li + li {
		margin-left: 10px;
	} */
}
/* Global - Do Not Comment Out When Using
.woocommerce div.product div.images .flex-control-thumbs {
	scrollbar-width: thin;
	scrollbar-color: #F1F4F8 var( --e-global-color-secondary );
}
.woocommerce div.product div.images .flex-control-thumbs::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}
.woocommerce div.product div.images .flex-control-thumbs::-webkit-scrollbar-track {
	background: #F1F4F8;
}
.woocommerce div.product div.images .flex-control-thumbs::-webkit-scrollbar-thumb {
	background-color: var( --e-global-color-secondary );
	border-radius: 0px;
	border: 0px solid var( --e-global-color-secondary );
} */
/* Breadcrumbs */
.woocommerce .woocommerce-breadcrumb {
	margin-bottom: 0;
}
/* Product Price - If you want to show savings - Also uncomment in fuctions.php */
/* .prod-price .price ins .woocommerce-Price-amount,
.prod-price .prod-sale-new {
	color: #d9534f;
	font-weight: bolder;
}
.prod-price .prod-sale-new {
	margin-right: 5px;
}
.prod-price .prod-sale-discount {
	margin-left: 20px;
}
.prod-price .prod-sale-discount .prod-sale-label {
	margin-right: 5px;
}
.prod-price .prod-sale-discount .prod-sale-amount {
	display: none;
}
.prod-price .prod-sale-discount .prod-sale-amount:before {
	content: "$";
	position: relative;
	display: inline;
} */
/* Fancybox Arrows */
.woocommerce-product-gallery ul.flex-direction-nav {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 99;
    width: 100%;
    margin: 0;
    padding: 0px;
    list-style: none;
	height: 0;
	display: flex;
	/* justify-content: space-between; */
}
.woocommerce-product-gallery li.flex-nav-prev {
	/* margin-left: -50px; */
	margin-right: 0.5em;
}
.woocommerce-product-gallery li.flex-nav-next {
	/* margin-right: -50px; */
}
/* .woocommerce-product-gallery a.flex-next {visibility: hidden;}
.woocommerce-product-gallery a.flex-prev {visibility: hidden;} */
.woocommerce-product-gallery a.flex-prev::before,
.woocommerce-product-gallery a.flex-next::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	line-height: 1;
	font-size: 18px;
	width: 36px;
	height: 36px;
	text-align: center;
	border-radius: 500px;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
.woocommerce-product-gallery a.flex-next::after {
	content: '\f054';
}
.woocommerce-product-gallery a.flex-prev::before {
    content: '\f053';
}
.woocommerce-product-gallery ul.flex-direction-nav li a {
	color: #000;
	font-size: 0;
	line-height: 0;
	display: flex;
	/* opacity: 0.5; */
}
.woocommerce-product-gallery ul.flex-direction-nav li a:hover {
	text-decoration: none;
	/* opacity: 1; */
}
/* Plus Minus Buttons - If using WPC Product Quantity for WooCommerce - Activated by default */
.woopq-quantity-input,
.woopq-quantity-input-plus,
.woopq-quantity-input-minus {
	height: 48px;
	border-color: var( --e-global-color-2a08f77 );
}
.woopq-quantity-input-plus,
.woopq-quantity-input-minus {
	line-height: 48px;
}
.woopq-quantity-input-minus {
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	border-right: 0;
}
.woopq-quantity-input-plus {
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	border-left: 0;
}
.prod-stock-cart form.cart > .quantity input {
	border-radius: 0 !important;
	background: #fff;
	border-left-width: 0;
	border-right-width: 0;
	border-top-width: 1px;
	border-bottom-width: 1px;
}
.elementor-widget-woocommerce-cart .woocommerce .input-text.qty {
	line-height: 48px;
	height: 48px;
	max-height: 100%;
	border-radius: 0;
	text-align: center;
	border-left-width: 0;
	border-right-width: 0;
}
/* Product Stock */
.woocommerce div.product .out-of-stock {
	font-size: 20px !important;
	text-transform: uppercase;
	border-radius: 5px;
	padding: 15px 25px;
	color: #999;
	background-color: #f3f3f3;
    line-height: 1;
    font-weight: 700;
	vertical-align: middle;
	text-align: center;
	margin-bottom: 0 !important;
}
/* Product Tabs */
/* Description */
.woocommerce div.product .woocommerce-tabs ul.tabs li {
	margin: 0 5px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li:first-child {
	margin-left: 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
	padding-left: 0 !important;
}
.woocommerce div.product.elementor .woocommerce-tabs .panel {
	padding: 30px;
	border-left: 1px solid var( --e-global-color-2a08f77 );
	border-right: 1px solid var( --e-global-color-2a08f77 );
	border-bottom: 1px solid var( --e-global-color-2a08f77 );
}
.woocommerce .woocommerce-tabs .woocommerce-Tabs-panel h2 {
	margin: 0 0 20px 0;
}
@media (max-width: 600px) {
	.woocommerce div.product.elementor .woocommerce-tabs .panel {
		padding: 20px;
	}
}
/* Attributes */
/* td.woocommerce-product-attributes-item__value {
	padding: 0 12px !important;
}
table.woocommerce-product-attributes.shop_attributes {
	margin: 0 0 10px;
} */
/* Reviews */
.comment-form-rating {
	display: block;
	margin: 20px 0 0 0;
}
.woocommerce div.product.elementor .woocommerce-tabs .panel .comment-form label {
	font-weight: 600;
	margin-bottom: 15px;
}
#review_form #respond textarea {
	margin: 0 0 9px;
}
@media (max-width: 470px) {	
	.woocommerce .woocommerce-tabs ul.wc-tabs li {
		display: block;
		float: none;
		padding: 0;
		margin: 0;
	}
	.woocommerce div.product .woocommerce-tabs ul.tabs {
		padding: 0 !important;
	}
	.woocommerce div.product .woocommerce-tabs ul.tabs li,
	.woocommerce div.product .woocommerce-tabs ul.tabs li a {
		display: block;
		border-radius: 0;
		margin: 0;
	}
}
/* Cart Page */
.woocommerce-cart .woocommerce table.cart td.actions a.cart-cont {
	margin-left: 10px;
	padding: var(--forms-buttons-padding,.88rem 2rem);
	color: var(--forms-buttons-normal-text-color,#818a91);
	border: 2px var(--forms-buttons-border-type,solid) var(--forms-buttons-border-color,#5bc0de);
	background-color: #fff;
}
/* Checkout */
.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-checkout-review-order-table .cart_item td.product-name .checkout-prod-img {
	max-width: 50px;
	min-width: 50px;
	width: 50px;
	margin-right: 20px;
}