/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Vars
# Global
# Navigation
# Home
# My Shop
# Footer
# Responsive
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Vars
--------------------------------------------------------------*/

:root {
	--color-blue: #00AAE8;
	--color-light-blue: #47C3F0;
	--color-green: #66BF6D;
	--color-mid-green: #60B795;
	--color-light-green: #99C355;
	--color-grey: #55565A;
	--color-light-grey: #ededed;
	--color-dark-grey: #54565A;
	--color-white: #fff;
	--color-black: #000;
	--transition: 0.35s ease all;
}

/*--------------------------------------------------------------
# Global
--------------------------------------------------------------*/

html {
	scroll-behavior: smooth;
}

body * {
	scroll-margin-top: 80px;
	-webkit-font-smoothing: antialiased;
}

body {
	font-family: 'Nunito', sans-serif;
	overflow-x: hidden !important;
	color: var(--color-dark-grey);
}

h1 {
	margin: 0 0 20px;
	line-height: 1.2;
	font-size: 36px;
	font-weight: 700;
}

h2 {
	font-size: 28px;
	margin: 0 0 15px;
	line-height: 1.4;
	font-weight: 800;
	color: var(--color-dark-grey);
}

h3 {
	font-size: 18px;
	font-weight: 600;
	margin: 0 0 10px;
	line-height: 1.4;
	color: var(--color-dark-grey);
}

p {
	margin: 0 0 15px;
}

p strong {
	font-weight: 500;
}

p,
ol li,
ul li {
	font-size: 15px;
	line-height: 1.4;
	font-weight: 300;
}

a, 
a:active, 
a:focus,
a:hover,
a:visited {
	outline: 0;
	text-decoration: none;
	font-weight: 500;
	color: var(--teal);
}

ul, 
ol {
	margin: 0 0 20px;
	padding-left: 20px;
}

img {
	display: block;
}

#page {
	max-width: var(--desktop-width);
	margin: 0 auto;
	position: relative;
	overflow-x: hidden;
}

.post, 
.page {
	margin: 0;
}

.home .entry-header, 
.entry-footer {
	display: none;
}

h1.entry-title {
	font-size: 28px;
    margin: 0 0 15px;
    line-height: 1.4;
    font-weight: 800;
    color: var(--color-dark-grey);
}

.entry-content, 
.hentry {
	margin: 0;
}

#primary {
	padding-bottom: 130px;
	min-height: calc(100vh - 100px);
	transition: 0.3s ease all;
}

body:not(.home) #primary {
	margin-top: 40px;
}

.max-width {
	padding: 0 30px;
	/*max-width: 1300px;*/
	max-width: 800px;
	margin: 0 auto;
}

.flex {
	display: flex;
	flex-wrap: wrap;
}

.space-between {
	justify-content: space-between;
}

.align-center {
	align-items: center;
}

.blue {
	background-color: var(--color-blue);
}

.light-blue {
	background-color: var(--color-light-blue);
}

.green {
	background-color: var(--color-green);
}

.mid-green {
	background-color: var(--color-mid-green);
}

.light-green {
	background-color: var(--color-light-green);
}

.grey {
	background-color: var(--color-grey);
}

.light-grey {
	background-color: var(--color-light-grey);
}

.fwp-button {
	background-color: grey;
	text-transform: uppercase;
	border-radius: 30px;
	padding: 8px 17px;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.5px;
	transition: 0.35s ease all;
}

.fwp-button.grey {
	background-color: var(--color-grey);
	color: var(--color-white);
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/

#masthead {
	position: sticky;
	top: 0;
	z-index: 9999;
}

.site-branding {
	width: 100%;
	background-color: var(--color-white);
	text-align: center;
	padding: 20px 30px;
}

.site-branding img {
	display: block;
	margin: 0 auto;
}

#site-navigation {
	background-color: var(--color-light-grey);
	padding: 18px 0;
	position: sticky;
	top: 0;
	height: 70px;
}

#site-navigation .max-width > a {
	display: inline-block;
}

#site-navigation img {
	display: block;
}

#coffeerm-button {
	background-color: transparent;
	right: 0;
	top: auto;
	float: right;
	display: block;
	position: relative;
	top: -3px;
}

#coffeerm-button span {
	border-radius: 5px;
	background-color: var(--color-dark-grey);
}

.portal-currencies {
	width: 100%;
	background-color: var(--color-light-grey);
}

.portal-currencies > div,
.portal-currencies a {
	padding: 14px;
	text-align: center;
	color: var(--color-white);
	font-weight: 600;
	text-decoration: none;
}

.portal-currencies .max-width {
	padding-top: 0;
	padding-bottom: 0;
}

.portal-currencies .fb {
	width: 45%;
}

.portal-currencies .bb {
	width: 20%;
}

.portal-currencies .fourex {
	width: 35%;
}

#responsive-menu-items {
	background-color: var(--color-white);
	padding-top: 15px;
	display: block;
	max-width: 260px;
}

#responsive-menu-items::before {
	content: '';
	display: block;
	background-image: url('/wp-content/uploads/2025/11/logo.svg');
	width: 156px;
	height: 78px;
	margin: 6px auto;
	margin-bottom: 40px;
}

#responsive-menu-items a {
    font-size: 16px;
    padding: 6px 25px;
    border-bottom: 1px solid rgba(0,0,0,0.05);
}

ul.responsive-menu-items li ul.sub-menu {
	box-shadow: none;
}

/* ul.responsive-menu-items li.menu-item-has-children::after {
	display: none;
} */

ul.responsive-menu-items li ul.sub-menu a {
	opacity: 0.6;
	font-size: 13px !important;
}

ul.responsive-menu-items li.menu-item-has-children::after {
    border-left: 8px solid #404040;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    top: 10px;
    right: 20px;
}

/*--------------------------------------------------------------
# Home
--------------------------------------------------------------*/

.banner-carousel {
	padding-top: 5px;
}

.banner-carousel-images {
	max-width: 1240px;
	border-radius: 25px;
	margin: 30px auto;
	padding: 0;
}

.banner-carousel-images .glide__track {
	box-shadow: 1px 1px 8px #00000026;
	border-radius: 25px;
}

.banner-carousel .glider-slide {
	/* min-height: 350px; */
	position: relative;
	object-fit: cover;
	background-position: center;
}

.promo-flag {
	position: absolute;
	top: 10px;
	left: 10px;
	background-color: var(--color-teal);
	color: var(--color-white);
	text-transform: uppercase;
	font-weight: 700;
	padding: 3px 10px;
	border-radius: 30px;
	font-size: 10px;
}

.glide__bullets {
	margin: 10px auto;
	text-align: center;
}

.glide__bullet {
	cursor: pointer;
	width: 10px;
	height: 10px;
	padding: 0;
	border-radius: 50%;
	border: none;
	background-color: var(--color-light-grey);
}

.glide__bullet.glide__bullet--active {
	width: 11px;
	height: 11px;
	background-color: var(--color-grey);
	opacity: 0.3;
}

.glider-carousel-container {
	margin: 30px auto;
	padding-left: 0;
	padding-right: 0;
}

.portal-link,
.portal-text-links a {
	margin: 1% 0;
	border-radius: 12px;
	text-align: center;
	padding: 30px;
}
.portal-text-links a {
	padding:20px;
}

.portal-link:nth-child(1), 
.portal-link:nth-child(2), 
.portal-link:nth-child(3) {
	width: 32%;
}

.portal-link:nth-child(4), 
.portal-link:nth-child(5) {
	width: 49%;
}

.portal-text-links a {
	width: 49%;
	@media screen and (max-width: 500px) {
		width:100%;
	}
}

.portal-text-links a:nth-child(3),
.portal-text-links a:nth-child(4),
.portal-text-links a:nth-child(5){
	width: 32.5%;
	@media screen and (max-width: 680px) {
		width:49%;
	}
	@media screen and (max-width: 500px) {
		width:100%;
	}
}
.portal-text-links a:nth-child(5) {
	@media screen and (max-width: 680px) {
		width:100%;
	}
}
@media screen and (max-width: 500px) {
	.portal-text-links a:nth-child(1),
	.portal-text-links a:nth-child(3),
	.portal-text-links a:nth-child(5){
		background-color: var(--color-light-grey);
		h3 {
			color:black;
		}
	}

}

.my-rewards.portal-links {
    padding: 0px;
    margin-bottom: 30px;
}

.my-rewards .portal-link:nth-child(1), 
.my-rewards .portal-link:nth-child(2) {
	width: 49%;
	@media screen and (max-width: 430px) {
		width: 100%;
	}
}

.my-rewards .portal-link:nth-child(3),
.my-rewards .portal-link:nth-child(4), 
.my-rewards .portal-link:nth-child(5) {
	width: 32%;
	@media screen and (max-width: 715px) {
		width: 49%;
	}
	@media screen and (max-width: 430px) {
		width: 100%;
	}
}
.my-rewards .portal-link:nth-child(5) {
	@media screen and (max-width: 715px) {
		width:100%;
	}
}

.portal-link .icon-wrap {
	width: 100%;
	height: 50px;
	text-align: center;
	position: relative;
}

.portal-link .icon-wrap img {
	min-height: 50px;
	display: block;
	margin: 0 auto;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
}

.portal-link h3,
.portal-text-links a h3 {
	color: var(--color-white);
	font-weight: 700;
	font-size: 20px;
	margin: 20px 0 0;
}
.portal-text-links a h3 {
	margin:0px;
	font-size: 16px;
}

.product-category-carousel .slick-track, 
.product-category-carousel .slick-list {
	display: flex !important;
	padding: 3px 0;
}

.product-category-carousel .slick_slides {
    padding: 0px;
}

.product-category-carousel .slick-slide div, 
.product-category-carousel .slick-slide .category-block a {
	height: 100%;
}

div.slick-slide {
    position: relative;
	height: inherit;
}

.slick_inner {
	margin-right: 100px;
}

.product-category-carousel .slick_inner {
	margin-right: 100px;
}

/* .slick-list {
	overflow: visible;
} */

.slick-list::before {
	position: absolute;
	top: -15px;
	bottom: 0px;
	right: calc(100% + 0px);
	width: 100%;
	background-color: white;
	content: '';
	z-index: 9;
	height: calc(100% + 30px);
}

.featured-product-carousel .slick-slide {
	margin: 10px;
	@media screen and (max-width: 768px) {
		margin-left: 7px;
		margin-right: 7px;
	}
	@media screen and (max-width: 419px) {
		margin-left: 4px;
		margin-right: 4px;
	}
}

.product-cat-groceries .guest-ctas, 
.product-cat-special-deals .guest-ctas {
    margin-bottom: 30px;
    margin-top: 20px;
}

.guest-ctas .button {
	width: 100%;
	text-align: center;
}

.carousel-heading {
	padding: 0 30px;
	margin-bottom: 5px;
}

.product-category-carousel .glide__slides {
	padding: 10px 5px;
}

.product-category-carousel .category-block {
	text-align: center;
}

.product-category-carousel .category-block a {
	box-shadow: 0px 0px 8px 1px #00000017;
	display: block;
	border-radius: 12px;
	min-height: 125px;
	position: relative;
	text-align: center;
	margin: 0 auto;
	background-color: var(--color-white);
	margin-left: 5px;
	margin-right: 5px;
	padding: 25px;
}

.product-category-carousel .category-block img {
	margin: 0 auto;
}

.product-category-carousel .category-name {
	font-size: 13px;
	font-weight: 700;
	color: var(--color-grey);
	display: block;
	margin: 15px 0 0;
	line-height: 1.2;
}

.product-carousel-wrapper {
	margin-bottom: 20px;
}

.featured-product-carousel .glide__slides {
	padding: 10px 5px;
}

.product-cats {
	margin: 50px auto;
}

.head-wrap a {
	font-size: 17px;
	margin-top: 10px;
}

.browse-by-brand {
	padding: 65px 0;
	margin: 65px auto;
}

.browse-by-brand .product-category-carousel .category-block a {
	height: 145px;
	display: flex;
	align-items: center;
}

.light-grey .slick-list::before {
	background-color: var(--color-light-grey);
}

.browse-by-brand .slick-track {
	margin-left: 0;
}

.adv {
	border-radius: 25px;
	box-shadow: 1px 1px 8px #00000026;
	padding: 0;
	margin: 50px auto;
	/*max-width: 1240px;*/
	max-width: 730px;
	overflow: hidden;
}

.adv-b {
	margin: 0;
	height: auto;
	/* max-height: 400px; */
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.adv-blocks .adv {
	width: 31%;
	padding: 0;
	margin: 0;
}

.featured-product-carousel {
	margin: 0 -5px;
}

.product-slide {
	float: none;
	margin: 0;
	padding: 0;
	width: 100% !important;
	margin-left: 0;
	box-shadow: 0px 0px 8px 1px #00000017;
	display: block;
	border-radius: 15px;
	padding: 25px 30px;
	min-height: 70px;
	position: relative;
	text-align: center;
	margin: 0 auto;
	background-color: var(--color-white);
	text-align: left;
	/* height: 100%; */
}

.product-slide {
	height: 100%;
}

.product-slide .product-short-description {
	padding: 5px 0;
}

.product-slide .product-short-description p:last-child {
	margin-bottom: 0;
}

.product-slide .product-short-description span {
	font-weight: 700;
	text-transform: uppercase;
	font-size: 13px;
}

.product-slide .product-short-description .note {
	margin-top: -15px;
	font-size: 12px;
	font-style: italic;
}

.product-slide .product-short-description .regular-price {
	margin: 10px 0 0;
}

.product-slide .product-short-description .regular-price span {
	font-size: 18px;
	color: var(--color-grey);
}

.product-slide .product-short-description .price, 
.product-slide .product-short-description .fb-price {
	font-size: 11px;
	font-weight: 500;
	font-style: italic;
	opacity: 0.5;
}
.product-slide .product-short-description .fb-price {
	opacity: 1;
	color: var(--color-green);
	font-weight: bold;
}

.archive-add-to-cart.button.add_to_cart_button.ajax_add_to_cart {
	position: absolute;
	right: 15px;
	top: 0;
	background-color: var(--color-grey);
	border-radius: 50%;
	width: 32px;
	height: 32px;
	color: var(--color-white);
	font-size: 25px;
	text-align: center;
	padding: 0;
	line-height: 1.2;
	cursor: pointer;
	transition: var(--transition);
}

.archive-add-to-cart.button.add_to_cart_button.ajax_add_to_cart:hover {
	opacity: 0.7;
}

.archive-add-to-cart.button.add_to_cart_button.ajax_add_to_cart::after {
	display: none;
}

.woocommerce a.added_to_cart {
	text-transform: uppercase;
	font-size: 11px;
	font-weight: 800;
	padding-top: 9px;
}

.product-slide .product-image img {
	margin: 0;
	height: 140px !important;
  	object-fit: contain;
  	object-position: center;
}

.fourex-offers .product-slide {
	padding: 0;
	overflow: hidden;
	background-color: var(--color-light-grey);
}

.fourex-offers .product-slide .product-image img {
	width: 100%;
	/*height: 250px;*/
	height: 150px;
	border-radius: 15px;
	object-fit: cover;
	object-position: center;
}

.fourex-offers .product-slide .product-title {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 13px;
	margin: 20px 30px 3px;
}

.fourex-offers .product-slide .product-description {
	margin: 0 30px;
}

.fourex-offers .product-slide a {
	margin: 10px 30px 20px;
	display: inline-block;
}

.button.button-view-now.button-insufficient-fourex {
	background-color: var(--color-grey);
}

.button.button-view-now.button-insufficient-fourex:hover {
	background-color: var(--color-blue);
}

.button.green.booknow.button-insufficient-fourex.button-disabled,
.button.green.booknow.button-insufficient-fourex.button-disabled:hover {
	position: absolute;
	right: 30px;
	bottom: 30px;
	color: var(--color-white);
	background-color: var(--color-grey);
	font-size: 13px;
	padding: 7px 14px;
	border-radius: 30px;
	font-weight: 800;
	opacity: 0.3;
	cursor: disabled;
	transition: var(--transition);
}

/*--------------------------------------------------------------
# My Shop
--------------------------------------------------------------*/

main.my-shop {
    padding-top: 20px;
}

.my-shop .portal-currencies {
    background-color: var(--color-light-grey);
    padding: 22px;
    border-radius: 8px;
    margin-bottom: 12px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.my-shop .portal-currencies > div,
.my-shop .portal-currencies > a {
	width: 31.5%;
	border-radius: 8px;
	margin: 3px 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 15px 25px;
	color: var(--color-white);
	text-decoration: none;
	transition: 0.2s linear all;
	@media screen and (max-width: 768px) {
		width: 100%;
	}
}
.portal-link {
	transition: 0.2s linear all;
}
.my-shop .portal-currencies > a:hover,
.portal-link:hover {
	background-color: var(--color-grey);
	opacity:0.9;
}

.my-shop .portal-currencies p {
	margin: 0;
	font-weight: 500;
}

.my-shop .portal-currencies span {
	font-size: 15px;
	line-height:1.4;
}

.my-shop .portal-links,
.my-rewards.portal-links {
	padding: 0;
	.portal-link .wrap {
		@media screen and (max-width: 715px) {
			flex-direction: column;
		}
	}
}

.my-shop .front1 .portal-link:nth-child(1), 
.my-shop .front1 .portal-link:nth-child(2), 
.my-shop .front1 .portal-link:nth-child(3), 
.my-shop .front1 .portal-link:nth-child(4) {
	width: 49%;
	@media screen and (max-width: 430px) {
		width:100%;
	}
}

.my-shop .front2 .portal-link:nth-child(1), 
.my-shop .front2 .portal-link:nth-child(2), 
.my-shop .front2 .portal-link:nth-child(3),
.my-shop .front2 .portal-link:nth-child(4) {
	width: 23.5%;
	h3 {
		font-size:18px;
	}
	@media screen and (max-width: 680px) {
		width:49%;
	}
	@media screen and (max-width: 430px) {
		width:100%;
	}
}
/* @media screen and (max-width:500px) {
	.my-shop .portal-link:nth-child(7) {
		margin:5px auto;
	}
} */

.my-shop .front1 .portal-link:nth-child(1) .wrap, 
.my-shop .front1 .portal-link:nth-child(2) .wrap,
.my-rewards .portal-link:nth-child(1) .wrap, 
.my-rewards .portal-link:nth-child(2) .wrap  {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	gap: 25px;
}

.my-shop .front1 .portal-link:nth-child(1) .icon-wrap,
.my-shop .front1 .portal-link:nth-child(2) .icon-wrap,
.my-rewards .portal-link:nth-child(1) .icon-wrap,
.my-rewards .portal-link:nth-child(2) .icon-wrap {
	width: auto;
}

.my-shop .front1 .portal-link:nth-child(1) .icon-wrap img, 
.my-shop .front1 .portal-link:nth-child(2) .icon-wrap img,
.my-rewards .portal-link:nth-child(1) .icon-wrap img,
.my-rewards .portal-link:nth-child(2) .icon-wrap img{
	max-width: 85px;
}

.my-shop .front1 .portal-link:nth-child(1) h3,
.my-shop .front1 .portal-link:nth-child(2) h3,
.my-rewards .portal-link:nth-child(1) h3,
.my-rewards .portal-link:nth-child(2) h3 {
	margin: 0;
	text-align: left;
	@media screen and (max-width: 715px) {
		text-align: center;
	}
}

.my-shop .front1 .portal-link:nth-child(1) h3 span,
.my-shop .front1 .portal-link:nth-child(2) h3 span,
.my-rewards .portal-link:nth-child(1) h3 span,
.my-rewards .portal-link:nth-child(2) h3 span {
	display: block;
	font-size: 15px;
	line-height: 1.2;
}

.create-list {
	margin-top: 10px;
	border: 1.5px solid var(--color-dark-grey);
	border-radius: 16px;
	padding: 30px;
	position: relative;
}

.create-list h2, 
.create-list p {
	margin-bottom: 0;
}

.create-list a {
	position: absolute;
	right: 0;
	width: 10%;
	background-color: var(--color-grey);
	display: block;
	height: 100%;
	top: 0;
	border-top-right-radius: 14px;
	border-bottom-right-radius: 14px;
	text-align: center;
	color: var(--color-white);
	font-size: 38px;
	line-height: 3;
	font-weight: 800;
}

/*--------------------------------------------------------------
# Rewards
--------------------------------------------------------------*/

.rewards-top-wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.spendable-balance {
	display: flex;
	align-items: center;
}

.spendable-balance p {
	font-size: 18px;
}

.spendable-balance span {
	margin-bottom: 13px;
	margin-left: 8px;
	font-weight: 800;
}

.button.create-account {
	background-color: var(--color-grey);
	color: var(--color-white);
	border-radius: 30px;
	text-transform: uppercase;
	font-size: 12px;
	padding: 5px 13px;
	display: inline-block;
	margin: 0 0 20px;
	transition: var(--transition);
}

.button.create-account:hover {
	background-color: var(--color-blue);
}

.loyalty-status {
	background-color: var(--color-light-grey);
	padding: 30px 30px 35px;
	border-radius: 25px;
	text-align: center;
	margin-bottom: 35px;
	width: 100%;
	position: relative;
}

.reward-summary {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.reward-summary .loyalty-status, .reward-summary .fex-wheel-block {
    width: calc(50% - 10px);
    padding-top: 30px;
	@media screen and (max-width: 720px) {
		width: 100%;
	}
}

.reward-summary .loyalty-status-wrap {
    width: 100%;
    text-align: center;
}

.reward-summary .buttons-wrap {
    text-align: center;
    width: 100%;
}

.reward-summary .pie-wrap {
    position: relative;
    max-width: 100%;
    margin: 0 auto;
    order: unset !important;
}

.reward-summary .this-month {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.reward-summary .this-month p.balance {
	margin-bottom:0px;
}

.reward-summary .this-month span {
    color: var(--color-light-green);
    font-size: 38px;
    font-weight: 900;
    display: block;
    line-height: 1.2;
}

.reward-summary .this-month p.out-of span {
    font-size: 17px;
    color: var(--color-grey);
    font-weight: 500;
}

.reward-summary .fex-wheel-block h3 {
	font-size: 20px;
    margin: 0 0 20px;
}

.reward-summary .fex-wheel-meta {
    text-align: center;
    line-height: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.loyalty-status .flex {
	max-width: 500px;
	margin: 0 auto;
}

.loyalty-status-wrap {
	text-align: left;
}

.loyalty-status-wrap h3 {
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 15px;
}

.loyalty-status-wrap span {
	color: var(--color-light-green);
	font-size: 38px;
	font-weight: 900;
	display: block;
	line-height: 1.2;
}

.loyalty-status-wrap p {
	font-weight: 700;
	font-size: 19px;
}

.loyalty-status-wrap p.balance {
	text-transform: uppercase;
	font-size: 12px;
	opacity: 0.7;
	margin: 0;
}

.loyalty-status-wrap p.out-of span {
	font-size: 17px;
	color: var(--color-grey);
	font-weight: 500;
}

.loyalty-wrap .portal-links .portal-link:nth-child(1), 
.loyalty-wrap .portal-links .portal-link:nth-child(2) {
	width: 49%;
	align-items: center;
  	display: flex;
	@media screen and (max-width: 620px) {
		width:100%;
	}
}

.loyalty-wrap .portal-links .portal-link:nth-child(1) .wrap, 
.loyalty-wrap .portal-links .portal-link:nth-child(2) .wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	gap: 25px;
}

.loyalty-wrap .portal-links .portal-link:nth-child(1) .icon-wrap,
.loyalty-wrap .portal-links .portal-link:nth-child(2) .icon-wrap {
	width: auto;
}

.loyalty-wrap .portal-links .portal-link:nth-child(1) .icon-wrap img, 
.loyalty-wrap .portal-links .portal-link:nth-child(2) .icon-wrap img {
	max-width: 85px;
}

.loyalty-wrap .portal-links .portal-link:nth-child(1) h3, 
.loyalty-wrap .portal-links .portal-link:nth-child(2) h3 {
	margin: 0;
	text-align: left;
	font-size: 25px;
	max-width: 200px;
	line-height: 1;
}

.loyalty-wrap .portal-links .portal-link:nth-child(3), 
.loyalty-wrap .portal-links .portal-link:nth-child(4), 
.loyalty-wrap .portal-links .portal-link:nth-child(5) {
	width: 32%;
}

.loyalty-status h3 {
  font-size: 20px;
  margin: 0 0 20px;
}

.loyalty-status img {
  display: block;
  max-width: 220px;
  border-radius: 15px;
  margin-bottom: 40px;
}

.pie-wrap {
  position: relative;
  max-width: calc(100% - 140px);
}

.pie-background {
  --p: 100;
  --b: 40px;
  --w: 250px;
  width: var(--w);
  aspect-ratio: 1;
  position: relative;
  margin: 0 auto;
}

.pie-background::before {
  content: "";
  position: absolute;
  border-radius: 50%;
  inset: 0;
  background: conic-gradient(#fff 100%, #fff 0);
  -webkit-mask: radial-gradient(
    farthest-side,
    #0000 calc(99% - var(--b)),
    #000 calc(100% - var(--b))
  );
  mask: radial-gradient(farthest-side, #0000 calc(99% - var(--b)), #000 calc(100% - var(--b)));
}

.pie-box-shadow {
  --p: 100;
  --b: 40px;
  --w: 250px;
  width: var(--w);
  aspect-ratio: 1;
  position: relative;
  box-shadow: inset 5px 2.5px 10px rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.pie {
  --b: 40px;
  --w: 250px;
  width: var(--w);
  aspect-ratio: 1;
  position: relative;
  display: inline-grid;
  place-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.pie:before,
.pie:after {
  content: "";
  position: absolute;
  border-radius: 50%;
}

.pie::before {
  inset: 0;
  background: radial-gradient(farthest-side, var(--color-blue) 98%, #0000) top/var(--b) var(--b) no-repeat,
    conic-gradient(var(--color-blue) calc(calc(var(--c) / 4) * 1%), var(--color-light-green) calc(var(--c) * 1%), #0000 0);
  -webkit-mask: radial-gradient(
    farthest-side,
    #0000 calc(99% - var(--b)),
    #000 calc(100% - var(--b))
  );
  mask: radial-gradient(farthest-side, #0000 calc(99% - var(--b)), #000 calc(100% - var(--b)));
}

.pie::after {
  inset: calc(50% - var(--b) / 2);
  background: var(--color-light-green);
  transform: rotate(calc(var(--c) * 3.6deg)) translateY(calc(50% - var(--w) / 2));
}

.pie p {
  font-size: 17px;
  font-weight: 600;
  margin: 0;
  text-align: center;
}

.pie p span {
  display: block;
  color: var(--color-light-green);
  font-size: 60px;
  line-height: 1;
  font-weight: 800;
}

.loyalty-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.loyalty-wrap .portal-links {
	width: 100%;
	margin-top: 18px;
}

.goals {
  width: 100%;
}

.goal {
  background-color: #efefef;
  border-radius: 25px;
  padding: 30px;
  margin: 10px 0;
  display: flex;
  justify-content: space-between;
}

.goal.completed {
  background: rgb(181, 126, 16);
  background: linear-gradient(
    90deg,
    rgba(181, 126, 16, 1) 0%,
    rgba(255, 243, 165, 1) 88%,
    rgba(181, 126, 16, 1) 100%
  );
}

.goal .left {
  min-width: 220px;
}

.goal .right {
  width: calc(100% - 230px);
  text-align: right;
}

.goal p {
  margin: 2px 0 0;
  font-weight: 600;
  font-size: 17px;
}

.progress {
  width: 40%;
  background-color: #e5e5e5;
  height: 25px;
  border-radius: 30px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  max-width: 200px;
}

.progress::after {
  content: "";
  display: block;
  width: calc(var(--w) * 1%);
  background-color: var(--color-green);
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  border-radius: 30px;
}

.goal.completed .progress::after {
  background: rgb(181, 126, 16);
  background: linear-gradient(
    90deg,
    rgba(181, 126, 16, 1) 0%,
    rgba(227, 191, 87, 1) 65%,
    rgba(181, 126, 16, 1) 100%
  );
}

.goals .right span {
  display: inline-block;
  vertical-align: middle;
  width: 90px;
}

a.earn-more {
	background-color: var(--color-grey);
	border-radius: 30px;
	color: var(--color-white);
	text-transform: uppercase;
	text-decoration: none;
	font-size: 13px;
	font-weight: 700;
	padding: 5px 14px 4px;
	transition: 0.35s ease all;
	display: inline-block;
	vertical-align: middle;
	margin-left: 20px;
}

a.earn-more:hover {
  background-color: var(--color-green);
}

.goal.completed a.earn-more {
  background: rgb(116, 106, 63);
  background: linear-gradient(90deg, rgba(116, 106, 63, 1) 0%, rgba(90, 67, 17, 1) 100%);
  color: #e8c761;
}

.ctas {
  width: 31%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.ctas .cta {
  background-color: #efefef;
  border-radius: 20px;
  padding: 30px 20px;
  width: 100%;
  margin: 10px 0;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
}

.ctas .cta p {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
}

.ctas .cta a {
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 14px;
  font-weight: 600;
  margin-top: 10px;
  display: block;
  color: #00aae9;
}

.ctas .cta:nth-child(2) a {
  color: #66bf6d;
}

.ctas .cta:nth-child(3) a {
  color: #26afb3;
}

.ctas .cta a .fa {
  font-size: 12px;
  position: relative;
  top: -1.5px;
}

.ctas .cta img {
  max-height: 110px;
  margin-bottom: 12px;
}

.fourwaysrewards-history {
  padding: 30px;
  width: 100%;
  background-color: var(--color-light-grey);
  border-radius: 20px;
  margin-top: 20px;
}

.fourwaysrewards-history h2 {
  margin: 0 0 8px;
}

.fourwaysrewards-account-content {
  width: 100%;
  display: table;
}

.fwr-table {
  display: table;
  width: 100%;
  border-collapse: collapse;
  background-color: #efefef;
  border-radius: 20px;
}

.fwr-table .tr {
  display: table-row;
}

.fwr-table .td {
  display: table-cell;
  border: 1px solid #ccc;
  border-collapse: collapse;
  padding: 5px 10px;
}

.fwr-table .th {
  font-weight: bold;
  background-color: #54565b;
  color: #fff;
  text-transform: uppercase;
}

.fwr-table .reference-note {
	margin-left: 5px;
}

#openMissedPoints, 
.loyalty-overview-button {
	border-radius: 20px;
	padding: 5px 10px 4px;
	color: var(--color-white);
	text-transform: uppercase;
	font-size: 11px;
	border: none;
	font-weight: 600;
	cursor: pointer;
	background-color: var(--color-light-green);
	transition: 0.2s linear all;
}
a.button.green.loyalty-overview-button {
    font-size: 16px;
	color: white;
}
a.button.green.loyalty-overview-button:hover {
	background-color: var(--color-blue);
}
a.loyalty-overview-button.button.blue,
a.bb-overview-button.button.blue {
	background-color: var(--color-blue);
	color: white;
}
a.loyalty-overview-button.button.blue:hover,
a.bb-overview-button.button.blue:hover {
	background-color: var(--color-light-green);
}

a.bb-overview-button.button.blue {
    margin-top: 10px;
    font-size: 14px;
}

#missedPointsModal {
	background-color: rgba(217, 217, 217, 0.63);
	position: fixed;
	top: 0;
	width: 100%;
	height: 100%;
	left: 0;
	z-index: 9999;
}

#missedPointsModal .modal-content {
	position: relative;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 90%;
	max-width: 600px;
	background-color: var(--color-white);
	border-radius: 10px;
	padding: 40px;
	text-align: center;
}

#missedPointsModal h2 {
	font-size: 20px;
	max-width: 310px;
	margin: 0 auto 30px;
}

#missedPointsModal .button {
	background-color: var(--color-blue);
	border-radius: 30px;
	padding: 6px 20px;
	margin: 0 10px 10px;
	text-transform: uppercase;
	color: var(--color-white);
	cursor: pointer;
	transition: var(--transition);
	font-size: 12px;
	display: inline-block;
}

#missedPointsModal .button:hover {
	background-color: var(--color-light-green);
	color: var(--color-white);
}

.close-missed-points {
	position: absolute;
	top: 8px;
	right: 15px;
}

.current-missed ul {
	list-style: none;
	padding-left: 0;
}

/*--------------------------------------------------------------
# Earn Points
--------------------------------------------------------------*/

.sliding-nav {
	/* list-style: none;
	display: flex; */
	padding: 10px 0 20px;
	border-bottom: 1px solid rgba(85, 86, 90, 0.30);
	margin-bottom: 30px;
	/* overflow-x: auto;
	white-space: nowrap; */
}

.sliding-nav .slick-list:after {
    content: '';
    position: absolute;
    right: 0;
    display: block;
    top: 0;
    bottom: 0px;
    width: 0px;
    box-shadow: 0px 0px 23px 31px rgba(255,255,255,1);
} 

.sliding-nav button.slick-arrow {
    position: absolute;
    top: 30px;
}

.slick-prev:before,
.slick-next:before {
	content:'';
}

.sliding-nav .slick-prev .fa-solid, 
.sliding-nav .slick-next .fa-solid {
    color: var(--color-grey);
    font-size: 20px;
}

.sliding-nav li {
	padding-right:20px;
}

.sliding-nav a {
	background-color: transparent;
	border-radius: 30px;
	color: var(--color-dark-grey);
	font-weight: 600;
	padding: 12px 18px;
	display: block;
	font-size: 14px;
	transition: var(--transition);
}

.sliding-nav a:hover,
.sliding-nav a.active {
	background-color: var(--color-grey);
	color: var(--color-white);
}

.sliding-nav li:not(:last-child) a {
	margin-right: 3px;
}

.single-faq {
	margin: 25px 0;
	border-bottom:  1px solid rgba(85, 86, 90, 0.30);
	padding: 0 0 28px;
}

.single-faq:last-child {
	border-bottom: none;
}

.single-faq h3 {
	font-size: 20px;
	font-weight: 700;
}

.single-faq p:last-child {
	margin-bottom: 0;
}

/*--------------------------------------------------------------
# Shop
--------------------------------------------------------------*/

.custom-filter {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}

.custom-filter h2 {
	margin-bottom: 0;
	width: calc(100% - 125px);
	line-height: 1.2;
}

#per_page {
	border: none;
	background-color: transparent;
	font-weight: 500;
	text-transform: uppercase;
}

#filter-trigger,
#qom-filter-trigger {
	font-family: 'Nunito', sans-serif;
	background-color: var(--color-grey);
	color: var(--color-white);
	border: none;
	border-radius: 30px;
	padding: 15px 20px;
	font-weight: 500;
	font-size: 13px;
	cursor: pointer;
	display: flex;
	position: absolute;
	right: 0;
	top: 0;
	transition: var(--transition);
}

#qom-filter-trigger {
	position: static;
}

#filter-trigger span,
#qom-filter-trigger span {
	margin-left: 8px;
	transform: rotate(90deg);
}

.filter-lightbox,
#qom-filter-lightbox {
	position: fixed;
	bottom: 55px;
	width: 100%;
	height: 85%;
	background: var(--color-white);
	z-index: 9999;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	left: 0;
	right: 0;
	margin: 0 auto;
	border-top-left-radius: 30px;
	border-top-right-radius: 30px;
	overflow-y: scroll;
	max-width: 500px;
}

.filter-lightbox::before,
#qom-filter-lightbox::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.4);
	z-index: -1;
}

.filter-panel,
#qom-filter-lightbox .filter-panel {
	padding: 35px;
	width: 90%;
	background-color: var(--color-white);
	border-radius: 30px;
	position: relative;
}

.filter-panel > h2,
#qom-filter-lightbox .filter-panel > h2 {
	font-size: 21px;
	text-transform: capitalize;
	color: var(--color-dark-grey);
	font-weight: 700;
	letter-spacing: 0.5px;
}

.active-filters,
#qom-filter-lightbox .active-filters {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	border-top: 1px solid #b5b5b5;
	border-bottom: 1px solid #b5b5b5;
	margin-top: 25px;
	margin-bottom: 25px;
	padding-top: 25px;
	padding-bottom: 25px;
}

#active-filters-info,
#qom-active-filters-info {
	display: block;
	font-size: 18px;
	font-weight: 700;
	color: var(--color-blue);
	letter-spacing: 0.5px;
}

.term-special-deals #active-filters-info,
.product-cat-parent-special-deals #active-filters-info,
.tax-product_brand #active-filters-info,
.term-special-deals #qom-active-filters-info,
.product-cat-parent-special-deals #qom-active-filters-info,
.tax-product_brand #qom-active-filters-info {
	color: var(--color-green);
}

#active-deals {
	display: block;
	font-size: 12px;
	font-weight: 400;
}

#clear-filters,
#qom-clear-filters {
	font-family: 'Nunito', sans-serif;
	border-radius: 30px;
	font-size: 16px;
	font-weight: 700;
	color: var(--color-white);
	border: none;
	background-color: var(--color-grey);
	padding: 12px 18px;
	cursor: pointer;
	transition: var(--transition);
}

.filter-categories,
.filter-brands,
#qom-filter-lightbox .filter-categories,
#qom-filter-lightbox .filter-brands {
	list-style: none;
	margin: 0;
	padding: 0;
}

.close-lightbox, 
#qom-close-lightbox {
	position: absolute;
	top: 30px;
	right: 30px;
	background-color: transparent;
	border: none;
	cursor: pointer;
	width: 10px;
	padding: 0;
}

.filter-categories li,
.filter-brands li,
#qom-filter-lightbox .filter-categories li,
#qom-filter-lightbox .filter-brands li {
	font-size: 16px;
	font-weight: 400;
	margin-bottom: 5px;
	line-height: 16px;
	padding-bottom: 5px;
	border-bottom: 1px solid lightgrey;
	padding-top: 7px;
}

.custom-radio-label,
#qom-filter-lightbox .custom-radio-label {
	position: relative;
	padding-left: 23px;
	cursor: pointer;
	display: inline-block;
	margin-bottom: 8px;
	width: 100%;
}

.custom-radio-label input.filter-checkbox,
#qom-filter-lightbox .custom-radio-label input.filter-checkbox {
	position: absolute;
	opacity: 0;
	left: 0;
	top: 0;
}

.custom-radio,
#qom-filter-lightbox .custom-radio {
	position: absolute;
	left: 0;
	top: 0;
	width: 16px;
	height: 16px;
	border: 0.5px solid #706F6F;
	border-radius: 50%;
	background-color: var(--color-white);
}

.custom-radio-label input.filter-checkbox:checked + .custom-radio,
#qom-filter-lightbox .custom-radio-label input.filter-checkbox:checked + .custom-radio {
	background-color: #706F6F;
}

.filter-chip,
#qom-filter-lightbox .filter-chip {
	display: inline-block;
	padding: 5px 10px;
	margin: 2px;
	border-radius: 10px;
	font-size: 12px;
	background: var(--color-blue);
	color: var(--color-white);
}

.filter-chip .remove-chip,
#qom-filter-lightbox .filter-chip .remove-chip {
	margin-left: 4px;
	cursor: pointer;
	color: var(--color-white);
	border: 1.5px solid var(--color-white);
	border-radius: 50%;
	width: 15px;
	display: inline-block;
	height: 15px;
	text-align: center;
	line-height: 1;
	font-weight: 500;
	font-size: 10px;
	position: relative;
	top: -1.5px;
}

.term-special-deals .remove-chip,
.product-cat-parent-special-deals .remove-chip,
.tax-product_brand .remove-chip,
.term-special-deals #qom-filter-lightbox .remove-chip,
.product-cat-parent-special-deals #qom-filter-lightbox .remove-chip,
.tax-product_brand #qom-filter-lightbox .remove-chip {
	color: var(--color-blue);
	border: 1.5px solid var(--color-blue);
}

#apply-filters,
#qom-apply-filters {
	font-family: 'Nunito', sans-serif;
	width: 100%;
	margin-top: 20px;
	border-radius: 30px;
	border: none;
	background-color: var(--color-blue);
	color: var(--color-white);
	text-transform: uppercase;
	font-weight: 800;
	padding: 12px 12px 10px;
	cursor: pointer;
	transition: var(--transition);
}

#apply-filters:hover,
#qom-apply-filters:hover {
	background-color: var(--color-green);
	color: var(--color-white);
}

.active-filter-chips,
#qom-active-filter-chips {
	display: flex;
	flex-wrap: wrap;
	margin-top: 12px;
}

.accordion-section,
#qom-filter-lightbox .accordion-section {
	margin-bottom: 20px;
}

.accordion-section h3,
#qom-filter-lightbox .accordion-section h3 {
	font-size: 18px;
	font-weight: 700;
	color: var(--color-dark-grey);
	margin-bottom: 15px;
	letter-spacing: 0.3px;
}

html.filter-open,
body.filter-open {
	overflow: hidden;
}

.accordion-title {
	cursor: pointer;
}

.accordion-section {
	background-color: var(--color-light-grey);
	padding: 20px;
	border-radius: 13px;
	margin: 15px 0;
}

.accordion-section h3 {
	font-weight: 700;
	color: var(--color-blue);
	text-transform: uppercase;
	font-size: 14px;
	letter-spacing: 0.5px;
}

.woocommerce-breadcrumb,
.woocommerce-result-count,
.woocommerce-ordering,
#per-page-form {
	display: none;
}

/* .woocommerce .products ul, 
.woocommerce ul.products {
	display: grid;
	justify-content: space-between;
	grid-template-columns: repeat(auto-fill, 32%);
} */

.woocommerce .products ul::before, 
.woocommerce ul.products::before {
	display: none;
}

.woocommerce ul.products li.product, 
.woocommerce-page ul.products li.product {
	/* float: none;
	margin: 0;
	width: 100%; */
	margin-bottom: 30px;
}

.woocommerce ul.products li.product .product-slide, 
.woocommerce-page ul.products li.product .product-slide {
	width: 100%;
}

.woocommerce nav.woocommerce-pagination ul {
	border: none;
}

.woocommerce nav.woocommerce-pagination ul li {
	border: none;
}

.woocommerce nav.woocommerce-pagination ul li a {
	transition: var(--transition);
}

.woocommerce nav.woocommerce-pagination ul li a:focus, 
.woocommerce nav.woocommerce-pagination ul li a:hover, 
.woocommerce nav.woocommerce-pagination ul li span.current {
	background: transparent;
	color: var(--color-blue);
}

.shop-category-pills {
	list-style: none;
	display: flex;
	padding: 10px 0 20px;
	border-bottom: 1px solid rgba(85, 86, 90, 0.30);
	margin-bottom: 30px;
	overflow-x: auto;
	white-space: nowrap;
}

.shop-category-pills a {
	background-color: transparent;
	border-radius: 30px;
	color: var(--color-dark-grey);
	font-weight: 700;
	padding: 12px 28px;
	display: block;
	font-size: 15px;
	transition: var(--transition);
}

.shop-category-pills a:hover,
.shop-category-pills a.active {
	background-color: var(--color-grey);
	color: var(--color-white);
}

.shop-category-pills li:not(:last-child) a {
	margin-right: 3px;
}

.post-type-archive-product #primary {
	position: relative;
}

.single-product .regular-price {
	margin: 15px 0 0;
}

.single-product .price,
.single-product .woocommerce-Price-amount,
.single-product .woocommerce-price-suffix {
 	font-size: 20px;
	font-weight: 800;
}

.custom-single-product {
	padding: 40px 0 90px;
	background-color: var(--color-white);
	border-top-left-radius: 25px;
	border-top-right-radius: 25px;
	margin: 0px auto 0;
	width: 100%;
	z-index: 2;
	position: relative;
	min-height: calc(100vh - 80px);
	@media screen and (min-width: 768px) {
		padding-top: 55px;
		margin: -20px auto 0;
	}
}

.custom-single-product .max-width {
	position: relative;
	@media screen and (min-width: 768px) {
		display: flex;
  		flex-wrap: wrap;
  		justify-content: space-between;
	}
}

.back-button:not(.close-lightbox) {
	border: none;
	background-color: transparent;
	padding: 0;
	right: 20px;
	top: 20px;
	cursor: pointer;
	z-index: 1;
	width: 100%;
	text-align: left;
	font-weight: 500;
	margin-bottom: 50px;
	padding-bottom: 20px;
	text-align: left;
	border-bottom: 1px solid rgba(85, 86, 90, 0.30);
}

.custom-single-product .product-image {
	margin-bottom: 25px;
	position: relative;
	@media screen and (min-width: 768px) {
		width: 40%;
	}
}

.custom-single-product .product-content-wrap {
	padding-bottom: 40px;
	@media screen and (min-width: 768px) {
		width: 57%;
	}
}

.custom-single-product .product-image img {
	margin: 0 auto;
	max-height: 250px;
	object-fit: contain;
	object-position: center;
}

.custom-single-product .product-brand {
	text-transform: uppercase;
	font-weight: 900;
	font-size: 18px;
	margin-bottom: 7px;
	letter-spacing: 0.5px;
	color: var(--color-dark-grey);
}

.custom-single-product .product-title {
	font-size: 20px;
	text-transform: capitalize;
	font-weight: 400;
	margin-bottom: 5px;
	color: var(--color-dark-grey);
}

.custom-single-product .fb-price {
	font-size: 15px;
	font-weight: 600;
	/* color: var(--color-dark-grey); */
	/* opacity: 0.5; */
	font-style: italic;
	opacity: 1;
	color: var(--color-green);
	font-weight: bold;
}

.custom-single-product .product-short-description {
	padding: 0;
}

.custom-single-product .product-short-description p {
	font-size: 18px;
	font-weight: 500;
	margin-top: 10px;
	letter-spacing: 0.5px;
}

.product-information, 
.terms-and-conditions {
	border-top: 1px solid rgba(85, 86, 90, 0.30);
	margin-top: 30px;
	padding-top: 25px;
}

.product-information h2, 
.terms-and-conditions h2 {
	font-size: 20px;
	margin: 0 0 5px;
}

body .single_add_to_cart_button.button.alt {
	font-family: 'Nunito', sans-serif;
	width: 100%;
	margin-top: 20px;
	text-transform: uppercase;
	border-radius: 7px;
	padding: 17px 15px 15px;
	cursor: pointer;
	background-color: var(--color-light-green) !important;
	transition: var(--transition);
}

body .single_add_to_cart_button.button.alt:hover {
	background-color: var(--color-blue) !important;
}

/*--------------------------------------------------------------
# FAQ
--------------------------------------------------------------*/

.faq-header {
	border-bottom: 1px solid rgba(85, 86, 90, 0.30);
	padding-bottom: 20px;
	margin-bottom: 30px;
}

.faq-cat-toggle {
	font-family: 'Nunito', sans-serif;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	border: 0;
	padding: 15px 28px;
	text-align: left;
	cursor: pointer;
	background-color: var(--color-light-grey);
	border-radius: 7px;
	margin: 10px 0;
	font-size: 12px;
	transition: var(--transition);
}

.faq-cat-toggle[aria-expanded="true"] {
	background-color: var(--color-light-green);
	color: var(--color-white);
}

.faq-cat-title {
	font-size: 20px;
	font-weight: 700;
}

.faq-cat-icon {
	font-size: 24px;
	line-height: 1;
	font-weight: 800;
	min-width: 22px;
	text-align: right;
}

.faq-cat-panel {
	display: none;
	padding: 0 0 18px;
}

.faq-cat-inner {
	padding: 0 20px 8px;
}

.faq-accordion .single-faq {
	border-bottom: 1px solid rgba(0,0,0,.12);
}

.faq-accordion .faq-toggle {
	font-family: 'Nunito', sans-serif;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: transparent;
	border: 0;
	padding: 15px 15px 15px 0;
	text-align: left;
	cursor: pointer;
}

.faq-accordion .faq-toggle span {
	font-size: 15px;
}

.faq-accordion .single-faq {
	padding: 0;
	margin: 0;
	border-bottom: 1px solid #8A8B8E;
}

.faq-accordion .faq-title {
	font-size: 18px;
	font-weight: 600;
}

.faq-accordion .faq-icon {
	font-size: 22px;
	line-height: 1;
	font-weight: 700;
	min-width: 20px;
	text-align: right;
}

.faq-accordion .faq-panel {
	display: none;
	padding: 0 0 18px;
}

.faq-accordion .faq-content > :first-child {
	margin-top: 0;
}

.faq-accordion .faq-content > :last-child {
	margin-bottom: 0;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/

body .gfield_required {
	display: none !important;
}

body .gform_wrapper .gform_footer .gform_button.button,
body .gform_wrapper .button.gform_button_select_files.gform-theme-button {
	background-color: var(--color-light-green) !important;
	border-radius: 30px !important;
	box-shadow: none !important;
	outline: none !important;
	border: none !important;
	padding: 10px 16px !important;
	min-height: auto !important;
	font-weight: 600 !important;
	transition: var(--transition) !important;
}

body .gform_wrapper .gform_footer .gform_button.button:hover,
body .gform_wrapper .button.gform_button_select_files.gform-theme-button:hover {
	background-color: var(--color-blue) !important;
}

.gform-theme--framework .gfield:where(.gfield--type-fileupload, 
.gfield--input-type-fileupload) .gform_drop_area {
	background-color: var(--color-light-grey);
	border: none;
	border-radius: 17px;
	box-shadow: none;
}

.gform-theme--framework .gfield:where(.gfield--type-fileupload, 
.gfield--input-type-fileupload) .gform_drop_area::before {
	display: none !important;
}

.gform-theme--framework .gfield:where(.gfield--type-fileupload, 
.gfield--input-type-fileupload) .gform_drop_instructions {
	font-size: 20px;
	font-weight: 700;
	color: var(--color-dark-grey);
}

#input_8_7 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

/*--------------------------------------------------------------
# Cart
--------------------------------------------------------------*/

body .woocommerce-error, 
body .woocommerce-info, 
body .woocommerce-message {
	width: 100%;
	border-top-color: var(--color-light-green);
}

body .woocommerce-error:focus-visible,
body .woocommerce-info:focus-visible, 
body .woocommerce-message:focus-visible {
	outline: none;
}

body .woocommerce-error::before, 
body .woocommerce-info::before,
body .woocommerce-message::before {
	content: "\e015";
	color: var(--color-light-green);
}

body.woocommerce .woocommerce-error .button, 
body.woocommerce .woocommerce-info .button, 
body.woocommerce .woocommerce-message .button, 
body.woocommerce-page .woocommerce-error .button, 
body.woocommerce-page .woocommerce-info .button, 
body.woocommerce-page .woocommerce-message .button {
	float: right;
	background-color: var(--color-light-green);
	border-radius: 30px;
	text-transform: uppercase;
	color: var(--color-white);
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
	transition: var(--transition);
}

body.woocommerce .woocommerce-error .button:hover, 
body.woocommerce .woocommerce-info .button:hover, 
body.woocommerce .woocommerce-message .button:hover, 
body.woocommerce-page .woocommerce-error .button:hover, 
body.woocommerce-page .woocommerce-info .button:hover, 
body.woocommerce-page .woocommerce-message .button:hover {
	background-color: var(--color-blue);
	color: var(--color-white);
}

.custom-cart-page .cart-items-table { 
	width: 100%; 
	border-collapse: collapse; 
}

.custom-cart-page .cart-items-table td { 
	padding: 14px 10px; 
	vertical-align: middle; 
}

.custom-cart-page .col-remove { 
	width: 44px; 
}

.custom-cart-page .col-image { 
	width: 120px; 
}

.custom-cart-page .col-qty { 
	width: 160px; 
}

.custom-cart-page .col-cost { 
	width: 140px; 
	text-align: center; 
	font-weight: 700;
	font-size: 18px;
	line-height: 1.2;
}

@media screen and (max-width: 640px) {
	.custom-cart-page .cart-items-table,
	.custom-cart-page .cart-items-table tbody {
		display: block;
	}

	.custom-cart-page .cart-items-table tr {
		display: flex;
		flex-wrap: wrap;
		border-bottom: 1px solid #eee;
		padding: 20px 0;
		gap:10px;
	}

	.custom-cart-page .cart-items-table td {
		display: block;
		padding: 5px 0;
		height: auto;
	}

	.custom-cart-page .col-image {
		width: 80px;
		order: 1;
	}

	.custom-cart-page .col-details {
		/* flex: 1; */
		order: 2;
		padding-left: 15px;
		width: calc(100% - 140px);
	}

	.custom-cart-page .col-remove {
		width: 40px;
		order: 3;
		display: flex;
		justify-content: flex-end;
		align-items: flex-start;
	}

	.custom-cart-page .col-qty {
		width: calc(50% - 40px);
		order: 4;
		margin-top: 15px;
	}

	.custom-cart-page .col-cost {
		width: 50%;
		order: 5;
		margin-top: 20px;
		text-align: right;
		display: flex;
		align-items: center;
		justify-content: flex-end;
	}
}

.brand-name {
	display: block;
	font-weight: 900;
	margin-bottom: 2px;
	text-transform: uppercase;
	font-size: 13px;
}

.product-title { 
	margin: 0; 
}

.product-title a {
	font-weight: 300;
	font-size: 14px;
	display: block;
	margin: 0;
}

.variation-meta { 
	font-size: 13px; 
	opacity: .8; 
	margin-top: 6px; 
}

.qty-wrap { 
	display: flex; 
	align-items: center; 
	gap: 8px; 
}

.qty-btn {
	font-family: 'Nunito', sans-serif;
	width: 30px;
	height: 30px;
	border: none;
	background: var(--color-grey);
	border-radius: 50%;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
	color: var(--color-white);
	padding: 0;
	font-weight: 900;
}

.qty-wrap input.qty {
	font-family: 'Nunito', sans-serif;
	width: 34px !important;
	text-align: center !important;
	height: 34px;
	font-weight: 900;
	border: none;
	outline: none;
	-moz-appearance: textfield;
}

.qty-wrap input.qty::-webkit-outer-spin-button,
.qty-wrap input.qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.cart-summary { 
	margin-top: 26px; 
	padding-top: 18px; 
	border-top: 1px solid rgba(0,0,0,.12); 
}

.cart-summary .summary-row { 
	display: flex; 
	justify-content: space-between; 
	padding: 8px 0; 
}

.cart-summary .summary-row.total { 
	font-weight: 800; 
}

.checkout-button.button { 
	display: inline-block; 
	margin-top: 14px; 
}

.woocommerce-cart .entry-header {
	display: none;
}

.custom-cart-page .wrap > h2 {
	padding-bottom: 22px;
	margin-bottom: 25px;
	border-bottom: 1px solid rgba(85, 86, 90, 0.30);
}

.cart-section > h3 {
	border-radius: 8px;
	padding: 8px 18px;
	color: var(--color-white);
	text-transform: uppercase;
	font-weight: 600;
}

.cart-section.cart-section-products > h3 {
	background-color: var(--color-blue);
}

.cart-section.cart-section-brand-hub > h3 {
	background-color: var(--color-grey);
}

.fb-bb-under-price {
	font-size: 12px;
}

.remove-from-cart {
	background-color: var(--color-grey);
	display: block;
	text-align: center;
	border-radius: 50%;
	width: 24px;
	height: 24px;
}

.remove-from-cart img {
	display: block;
	text-align: center;
	width: 15px;
	transform: rotate(6deg) translateY(-50%) translateX(-50%);
	position: relative;
	top: calc(50% + 1px);
	margin: 0;
	left: calc(50% - 0.5px);
	position: relative;
}

.col-image img {
	box-shadow: 0 0 4.279px 1.167px rgba(0, 0, 0, 0.09);
	border-radius: 5px;
	padding: 8px;
}

img.woocommerce-placeholder.wp-post-image {
    padding: 30px;
}
@media screen and (min-width: 640px) {
	.custom-cart-page img.woocommerce-placeholder.wp-post-image {
		padding:10px;
	}
}
.cart-totals-wrap {
	background-color: var(--color-light-grey);
	padding: 25px 25px 0;
	border-radius: 10px;
}

.cart-totals-wrap h2 {
	text-transform: capitalize;
}

.woocommerce .cart-totals-wrap table.shop_table {
	border: none;
}

.woocommerce .cart-totals-wrap table.shop_table th {
	padding: 0;
	border: none;
}

.woocommerce .cart-totals-wrap table.shop_table td {
	text-align: right;
	border: none;
}

.woocommerce-cart .cart-totals-wrap .wc-proceed-to-checkout a.checkout-button {
	background-color: var(--color-light-green);
	text-transform: uppercase;
	font-size: 16px;
	border-radius: 10px;
	transition: var(--transition);
}

.woocommerce-cart .cart-totals-wrap .wc-proceed-to-checkout a.checkout-button:hover {
	background-color: var(--color-blue);
}

.custom-cart-page.is-updating {
	opacity: .6;
	pointer-events: none;
}

body .woocommerce .return-to-shop .button {
	background-color: var(--color-light-green);
	color: var(--color-white);
	text-transform: uppercase;
	border-radius: 30px;
	font-size: 13px;
	transition: var(--transition);
}

body .woocommerce .return-to-shop .button:hover {
	background-color: var(--color-blue);
}

/*--------------------------------------------------------------
# Checkout
--------------------------------------------------------------*/


body.woocommerce-checkout .woocommerce .col2-set .col-1, 
body.woocommerce-checkout .woocommerce-page .col2-set .col-1,
body.woocommerce-checkout .woocommerce .col2-set .col-2, 
body.woocommerce-checkout .woocommerce-page .col2-set .col-2 {
    float: none;
    width: 100%;
}
.woocommerce form .form-row label {
    font-weight: bold;
}
.woocommerce-shipping-fields {
	display: none;
}
.woocommerce-billing-fields > h3,
#order_review_heading {
	background-color: var(--color-blue);
    border-radius: 8px;
    padding: 8px 18px;
    color: var(--color-white);
    text-transform: uppercase;
    font-weight: 600;
}
#order_review_heading {
	background-color: var(--color-green);
}

#add_payment_method #payment, 
.woocommerce-cart #payment, 
.woocommerce-checkout #payment {
    background: var(--color-light-grey);
    border-radius: 5px;
	text-align: center;
}

body .wc_payment_methods {
	display:none;
}

body div #payment #place_order, .button.order-now {
    color: #fff;
    line-height: 1;
    background-color: #66bf6d;
    border: none;
    border-radius: 30px;
    text-transform: uppercase;
    font-size: 25px;
    padding: 12px 25px;
    font-weight: 700;
    margin-bottom: 15px;
    -webkit-transition: 0.35s ease all;
    -ms-transition: 0.35s ease all;
    transition: 0.35s ease all;
}
body div #payment #place_order:hover, .button.order-now:hover {
    background-color: #00aae8;
    color: #fff;
}
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order {
    float: none;
}
/*--------------------------------------------------------------
# Order / Spares
--------------------------------------------------------------*/

#quick-order-menu {
	margin: 30px auto 70px;
}

.qom-list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}

#qom-search-wrap {
	width: 100%;
	text-align: right;
	margin-bottom: 10px;
	position: relative;
}

#qom-search-wrap::after {
	content: '';
	display: block;
	background-image: url('/wp-content/uploads/2025/11/search-white.svg');
	width: 19px;
	height: 19px;
	background-color: var(--color-grey);
	border-radius: 30px;
	padding: 22px 32px;
	background-size: 21px;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	right: auto;
	top: 0;
	left: calc(100% - 425px);
}

.qom-list.favHit {
	justify-content: unset;
}

.qom-list h1 {
	line-height: 1.1;
	margin-bottom: 20px;
	text-align: center;
}

.qom-line-item .clear {
	min-height: 0 !important;
}

div.mCSB_container {
	display: flex;
	flex-wrap: wrap;
	column-gap: 20px;
	row-gap: 20px;
	/* justify-content: space-between; */
}

.qom-top-line {
	background-color: var(--color-grey);
	overflow: auto;
	color: var(--color-white);
	border-radius: 10px;
	text-transform: uppercase;
	padding: 10px 15px 8px;
	font-size: 15px;
	width: 100%;
	display: flex !important;
	justify-content: space-between !important;
}

.qom-line-item:not(.qom-top-line) {
	padding: 12px 15px;
	overflow: auto;
	font-size: 14px;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	background-color: var(--color-light-grey);
	column-gap: 5px;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
	border-radius: 10px;
}

.qom-top-line .qom-quantity {
	padding-top: 5px;
	text-align: center;
	margin-left: 11px;
	font-weight: bold;
}

.qom-heading {
	width: 26%;
}

.qom-heading em.aircon-note {
	text-align: left;
	display: block;
	font-size: 12px;
	line-height: 1.2;
	margin-top: 3px;
}

/*.qom-top-line .qom-price {
	margin-right: 30px;
}*/

.qom-quantity,
.qom-addtocart {
	width: auto;
	float: left;
	position: relative;
	text-align: center;
}

.qom-addtocart span {
	display: block;
	line-height: 1.3;
	font-size: 12px;
	color: #ff0000;
}

/*.qom-price {
	width: 110px;
	float: left;
	text-align: center;
	font-weight: bold !important;
	padding-top: 5px;
	background-color: #e5e5e5;
	height: 30px;
}*/

body:not(.page-id-203) .qom-capacity,
body:not(.page-id-203) .qom-pipe-size {
    visibility: hidden;
}

.qom-capacity, 
.qom-pipe-size, 
.qom-excl, 
.qom-incl {
	width: 13%;
}

.qom-vat {
	width: 10%;
}

.qom-addtocart {
	/*width: 19%;*/
	width: 200px;
}

.qom-heading.colour {
	display: inline-block;
}

.qom-heading h4, 
.qom-top-line > div {
	margin: 0;
	/* padding: 8px 10px; */
	font-size: 0.8em;
	line-height: 15px;
	display: inline-block;
	vertical-align: middle;
	/* padding-bottom: 10px; */
	text-align: left;
	font-weight: 600;
}

.qom-heading h4 {
	margin: 0;
	font-size: 1em;
	line-height: 15px;
	padding-bottom: 0;
}

.scroll-wrap {
	max-height: 480px;
	min-height: 480px;
	margin-top: 15px;
	width: 100%;
	overflow-y: scroll;
	margin-bottom: 20px;
	position: relative;
}
.scroll-wrap::before {
    content: 'No products matched';
    position: absolute;
    left: 0px;
    top: 0px;
    background-color: var(--color-light-grey);
    padding: 12px 15px;
    border-radius: 10px;
    z-index: -1;
}

.qom-line-item:not(.qom-top-line) h4,
.qom-line-item:not(.qom-top-line) .qom-price {
	font-weight: 400;
}

#qom-search {
	font-family: 'Nunito', sans-serif;
	border: none;
	outline: none;
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 500;
	border-radius: 0;
	padding: 13px 25px 12px;
	width: 100%;
	background-color: var(--color-light-grey);
	border-radius: 30px;
	margin-bottom: 10px;
	width: calc(100% - 360px);
}

.qom-quantity input {
	width: 40px;
	margin: 5px auto 0;
	display: block;
	height: 20px;
	text-align: center;
	padding: 1px 0 0;
	border-radius: 0;
	border: 2px solid black;
	color: #000;
	font-size: 12px;
}

.fts-cart-adjust-wrap { 
	display: flex; 
	align-items: center; 
	gap: 8px; 
}

.fts-cart-adjust-wrap > div {
	font-family: 'Nunito', sans-serif;
	width: 30px;
	height: 30px;
	border: none;
	background: var(--color-grey);
	border-radius: 50%;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
	color: var(--color-white);
	padding: 0;
	font-weight: 900;
	position: relative;
}

.fts-cart-adjust-wrap input {
	font-family: 'Nunito', sans-serif;
	width: 34px !important;
	text-align: center !important;
	height: 34px;
	font-weight: 900;
	border: none;
	outline: none;
	-moz-appearance: textfield;
	background-color: transparent;
	color: var(--color-grey);
}

.fts-cart-adjust-wrap input::-webkit-outer-spin-button,
.fts-cart-adjust-wrap input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

button.quick-order {
	position: absolute;
	border-radius: 0;
	display: block;
	min-height: 100%;
	width: 100%;
	border-width: 0;
	border-color: #000000;
	font-weight: bold;
	background-color: transparent;
}

button.quick-order::after {
	content: "";
	position: absolute;
	height: 80%;
	width: 1px;
	background-color: #d0d0d0;
	left: 0;
	top: 10%;
}

.quick-order span:not(#qom-active-filters-info):not(.filter-chip):not(.remove-chip):not(.custom-radio):not(.qom-filter-trigger-arrow) {
	position: absolute;
	top: 55%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	font-size: 15px;
}

.qom-line-item.loading .quick-order span:nth-child(1):not(#qom-active-filters-info):not(.filter-chip):not(.remove-chip):not(.custom-radio):not(.qom-filter-trigger-arrow),
.qom-line-item.added .quick-order span:nth-child(1):not(#qom-active-filters-info):not(.filter-chip):not(.remove-chip):not(.custom-radio):not(.qom-filter-trigger-arrow),
.quick-order span:nth-child(2):not(#qom-active-filters-info):not(.filter-chip):not(.remove-chip):not(.custom-radio):not(.qom-filter-trigger-arrow),
.quick-order span:nth-child(3):not(#qom-active-filters-info):not(.filter-chip):not(.remove-chip):not(.custom-radio):not(.qom-filter-trigger-arrow) {
	display: none;
}

.qom-line-item.loading .quick-order span:nth-child(2):not(#qom-active-filters-info):not(.filter-chip):not(.remove-chip):not(.custom-radio):not(.qom-filter-trigger-arrow) {
	display: block;
	font-size: 25px;
}

.qom-line-item.added .quick-order span:nth-child(3):not(#qom-active-filters-info):not(.filter-chip):not(.remove-chip):not(.custom-radio):not(.qom-filter-trigger-arrow) {
	display: block;
	font-size: 25px;
	color: #316732;
}

.fts-loader {
	padding-top: 7px;
}

.sorter {
	margin-bottom: 25px;
	width: 100%;
	float: none;
	margin-right: 0;
}

#qom-cats-button {
	width: 100%;
	margin: 0;
	border: 0;
	border-radius: 0;
	outline: none !important;
	background-color: #fff;
	font-family: "Nunito", sans-serif;
	color: #55565a;
	font-size: 15px;
}

#qom-cats-menu {
	border: none;
	font-family: "Nunito", sans-serif;
}

#qom-cats-menu div {
	font-size: 15px;
	padding: 4px 15px !important;
}

#qom-cats-menu .ui-state-active,
#qom-cats-menu .ui-widget-content .ui-state-active,
#qom-cats-menu .ui-widget-header .ui-state-active,
#qom-cats-menu a.ui-button:active,
#qom-cats-menu .ui-button:active,
#qom-cats-menu .ui-button.ui-state-active:hover {
	border: 1px solid #2ab1b5;
	background: #2ab1b5;
	font-weight: normal;
	color: #ffffff;
}

.qom-primary-head,
.qom-secondary-head {
	text-align: center;
}

.qom-line-item.loading .quick-order,
.qom-line-item.added .quick-order {
	pointer-events: none;
}

.qom-primary-item[data-slug="uncategorised"],
#qom-cats-menu .ui-menu-item:nth-child(2) {
	display: none;
}

.qom-primary-item,
.qom-secondary-item {
	background-color: transparent;
	border: 0px solid #181415 !important;
	margin: 3px;
	background-size: 100% 100%;
	padding: 5px 0 !important;
	border-radius: 0;
	font-size: 16px;
	cursor: pointer;
}

.qom-primary-item:hover,
.qom-secondary-item:hover {
	color: #181415;
}

/*.qom-primary-item.active, 
.qom-secondary-item.active {
	background-color: #181415;
	font-weight: 600;
	padding: 10px 12px;
	color: #fff;
}*/

.qom-secondary-item-list {
	display: none;
}

#qom-go-next {
	background-color: var(--color-light-green);
	color: var(--color-white);
	width: 100%;
	display: block;
	text-align: center;
	padding: 11px;
	text-transform: uppercase;
	border-radius: 10px;
	font-weight: 500;
	cursor: pointer;
	transition: var(--transition);
}

#qom-go-next:hover {
	background-color: var(--color-blue);
	color: var(--color-white);
}

.qom-popup {
	background-color: rgba(217, 217, 217, 0.63);
	position: fixed;
	top: 0;
	width: 100%;
	height: 100%;
	left: 0;
	z-index: 9999;
}

.popup-wrapper {
	position: relative;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 90%;
	max-width: 400px;
	background-color: var(--color-white);
	border-radius: 10px;
	padding: 40px;
	text-align: center;
}

.popup-closer {
	position: absolute;
    right: 40px;
	cursor: pointer;
}

.popup-content h3 {
	font-size: 20px;
	max-width: 280px;
	margin: 0 auto 30px;
}

.qom-popup-actions .button {
	border: 1.5px solid var(--color-blue);
	border-radius: 30px;
	padding: 3px 30px;
	margin: 0 10px 10px;
	text-transform: uppercase;
	color: var(--color-blue);
	cursor: pointer;
	transition: var(--transition);
}

.qom-popup-actions .button:hover {
	background-color: var(--color-light-green);
	border-color: var(--color-light-green);
	color: var(--color-white);
}

.button.qom-yes {
	background-color: var(--color-blue);
	color: var(--color-white);
}

.button.qom-yes:hover {
	background-color: var(--color-light-green);
	border-color: var(--color-light-green);
	color: var(--color-white);
}

input.fts-cart-quantity-input {
	width: 60px;
}

.fts-cart-adjust {
	text-align: center;
	margin: 0 auto;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

.fts-cart-adjust-wrap {
	position: relative;
}

/* .fts-cart-adjust>div {
	display: inline-block;
} */

.out-of-stock span {
	padding-top: 7px;
}

body.fts-loading a.next {
	color: black;
	background-color: lightgrey;
	cursor: not-allowed;
}

body.fts-loading a.next:active {
	pointer-events: none;
}

.fts-cart-apply {
	cursor: pointer;
	background-color: var(--color-grey);
	border-radius: 15px;
	color: var(--color-white);
	text-transform: uppercase;
	padding: 5px 20px 4px;
	font-weight: 600;
	transition: var(--transition);
}

.fts-cart-apply:hover {
	background-color: var(--color-blue);
	color: var(--color-white);
}

.fts-cart-add {
	cursor: pointer;
	background-color: var(--color-blue);
	border-radius: 15px;
	color: var(--color-white);
	text-transform: uppercase;
	padding: 5px 26px 4px;
	font-weight: 600;
	margin: 0 0 0 auto;
	transition: var(--transition);
}

.fts-cart-add:hover {
	background-color: var(--color-light-green);
}

.fts-cart-down,
.fts-cart-up {
	width: 15px;
	height: 15px;
	position: relative;
	cursor: pointer;
	position: absolute;
	background-color: #69c070;
	font-size: 10px;
	-webkit-transition: 0.35s ease all;
	-ms-transition: 0.35s ease all;
	transition: 0.35s ease all;
}

.fts-cart-down:hover,
.fts-cart-up:hover {
	background-color: #55565a;
}

.fts-cart-down {
	top: 0;
	right: 0;
}

.fts-cart-up {
	top: 0;
	right: 0;
}

.fts-cart-down span,
.fts-cart-up span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 100%;
	color: #fff;
}

.fts-cart-down span {
	top: 3px;
}

.fts-cart-up span {
	top: 1px;
}

.fts-cart-up span::after {
	content: "+";
	font-size: 18px;
	position: relative;
	top: 2px;
}

.fts-cart-down span::after {
	content: "-";
	font-size: 18px;
	position: relative;
	top: 0;
}

.fts-cart-amount {
	width: 70px;
	height: 30px;
	position: absolute;
	background-color: #fff;
	font-size: 12px;
	left: 0;
	border: 3px solid #e5e5e5;
}

.fts-cart-amount span {
	color: #55565a;
	position: absolute;
	top: 50%;
	text-align: center;
	width: 100%;
	left: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
}

body .mCS-dark-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
	width: 6px;
	opacity: 1;
	border-radius: 0;
}

body .mCSB_inside > .mCSB_container {
	margin-right: 0;
}

.select-hidden {
	display: none;
	visibility: hidden;
	padding-right: 10px;
}

.select {
	cursor: pointer;
	display: inline-block;
	position: relative;
	font-size: 16px;
	color: #fff;
	width: 100%;
	height: 35px;
}

.select-styled {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	color: #55565a;
	background-color: #fff;
	padding: 5px 15px;
	-moz-transition: all 0.2s ease-in;
	-o-transition: all 0.2s ease-in;
	-webkit-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
}

.select-styled::after {
	content: "";
	width: 0;
	height: 0;
	border: 7px solid transparent;
	border-color: #55565a transparent transparent transparent;
	position: absolute;
	top: 15px;
	right: 10px;
}

.select-styled:hover,
.select-styled:active,
.select-styled.active {
	background-color: #fff;
}

/*.select-styled:active:after, 
.select-styled.active:after {
	top: 9px;
	border-color: transparent transparent #fff transparent;
}*/

.select-options {
	display: none;
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	z-index: 999;
	margin: 0;
	padding: 0;
	list-style: none;
	background-color: #fff;
}

.select-options li {
	color: #55565a;
	margin: 0;
	padding: 12px 0;
	text-indent: 15px;
	border-top: 1px solid #962d22;
	-moz-transition: all 0.15s ease-in;
	-o-transition: all 0.15s ease-in;
	-webkit-transition: all 0.15s ease-in;
	transition: all 0.15s ease-in;
}

.select-options li:hover {
	color: #fff;
	background: #2ab1b5;
}

.select-options li[rel="hide"] {
	display: none;
}

/* .sorter.one-stop > label,
.sorter.one-stop > .select {
	display: none;
} */

.sorter > label,
.sorter > .select {
	display: none;
}

a.fav,
.accordion.favourites .accordion-heading,
.accordion.oss-cats .accordion-heading {
	display: block;
	background-color: #c6c7c9;
	width: 100%;
	padding: 4px 14px 3px;
	color: #fff;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 600;
	font-size: 14px;
	margin-top: 10px;
	-webkit-transition: 0.35s ease all;
	-ms-transition: 0.35s ease all;
	transition: 0.35s ease all;
	display: none;
}

a.fav:hover,
.accordion.favourites .accordion-heading:hover,
.accordion.favourites .accordion-heading.ui-state-active,
.accordion.oss-cats .accordion-heading:hover,
.accordion.oss-cats .accordion-heading.ui-state-active {
	background-color: #2ab1b5;
}

.accordion.favourites .accordion-heading::after,
.accordion.oss-cats .accordion-heading::after {
	right: 10px;
}

.accordion.favourites .accordion-content p, 
.accordion.oss-cats .accordion-content p {
	margin: 10px 0;
	line-height: 1.2;
	font-size: 14px;
	cursor: pointer;
	padding: 12px 20px;
	font-weight: 700;
	border-radius: 30px;
}

.accordion.favourites .accordion-content p.active, 
.accordion.oss-cats .accordion-content p.active {
	background-color: var(--color-grey);
	color: var(--color-white);
}

.accordion.favourites .scroll-wrap, 
.accordion.oss-cats .scroll-wrap {
	margin-top: 10px;
	min-height: unset;
	display: flex;
}

.clear-filter {
	display: inline-block;
	background-color: #2ab1b5;
	color: #fff;
	font-size: 12px;
	margin-top: 15px;
	padding: 4px 12px;
	text-transform: uppercase;
	border-radius: 30px;
	font-weight: 600;
	cursor: pointer;
	-webkit-transition: 0.35s ease all;
	-ms-transition: 0.35s ease all;
	transition: 0.35s ease all;
}

.clear-filter:hover {
	color: #fff;
	background-color: #66bf6d;
}

a.next.add-to-cart.disable,
a.next.disable,
a.order-now.disable {
	-webkit-filter: grayscale(100);
	filter: grayscale(100);
	opacity: 0.7;
	cursor: not-allowed;
}

span.disable-markup,
span.disable-serial,
span.disable-serial-next {
	position: fixed;
	right: 36px;
	bottom: 88px;
	width: 130px;
	font-size: 12px;
	text-align: center;
	color: red;
}

span.disable-serial-next.bottom125 {
 	bottom: 125px;
}

span.disable-serial {
	position: initial;
	display: block;
	margin: 0 auto;
	margin-bottom: 10px;
}

.autocomplete-suggestions {
	background-color: #fff;
	margin: 0 auto;
	padding: 15px 20px 16px;
	overflow-y: scroll;
	border-radius: 20px;
	box-shadow: 1px 1px 8px rgba(0,0,0,0.2);
	cursor: pointer;
}

.qom-spares-model {
	display: flex;
}

.qom-spares-model h4 {
	margin: -1px 0 0 10px;
}

.qom-no-results-ctas .portal-links {
	padding: 0;
	margin-top: 20px;
}

#qom-search-wrap {
	display: flex;
	gap: 10px;
	align-items: center;
	flex-wrap: wrap;
}

#qom-stock-toggle {
	font-family: 'Nunito', sans-serif;
	border: none;
	border-radius: 30px;
	text-transform: uppercase;
	font-size: 12px;
	padding: 15px 20px;
	margin-bottom: 10px;
	width: 170px;
	cursor: pointer;
	transition: var(--transition);
	font-weight: 600;
	background-color: var(--color-light-green);
	color: var(--color-white);
}

.qom-stock-toggle.is-active {
	background-color: var(--color-grey) !important;
}

#qom-prev-purchase-toggle {
	font-family: 'Nunito', sans-serif;
	border: none;
	border-radius: 30px;
	text-transform: uppercase;
	font-size: 12px;
	padding: 15px 20px;
	margin-bottom: 10px;
	width: 170px;
	cursor: pointer;
	transition: var(--transition);
	font-weight: 600;
	background-color: var(--color-grey);
	color: var(--color-white);
}

.qom-prev-purchase-toggle.is-active {
	background-color: var(--color-light-green) !important;
}

/*--------------------------------------------------------------
# Product Search
--------------------------------------------------------------*/

.page-id-409 .entry-header {
	display: none;
}

.product-model-search {
	text-align: center;
	padding-top: 15px;
}

.product-model-search h3 {
	font-size: 15px;
	margin-bottom: 25px;
}

.fw-product-search {
	max-width: 500px;
	margin: 0 auto;
	position: relative;
}

.fw-product-search::after {
	content: '';
	display: block;
	background-image: url('/wp-content/uploads/2025/11/search-white.svg');
	width: 19px;
	height: 19px;
	background-color: var(--color-grey);
	border-radius: 30px;
	padding: 21px 32px;
	background-size: 21px;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	right: 0;
	top: 0;
}

#autocomplete {
	font-family: 'Nunito', sans-serif;
	text-transform: uppercase;
	font-weight: 700;
	outline: none;
	background-color: #e5e5e5;
	border: none;
	border-radius: 30px;
	padding: 9px 22px;
	color: var(--color-grey);
	width: 100%;
}

a.next.search_spares {
	position: relative;
	right: unset;
	bottom: unset;
	margin: 40px auto 20px;
	display: block;
	text-align: center;
	background-color: var(--color-light-green);
	color: var(--color-white);
	text-transform: uppercase;
	border-radius: 7px;
	width: 100%;
	max-width: 500px;
	padding: 10px;
	font-weight: 500;
	cursor: pointer;
	transition: var(--transition);
}

a.next.search_spares:hover {
	background-color: var(--color-blue);
}

a.next.search_spares.disabled {
	background-color: var(--color-light-grey);
	color: var(--color-grey);
	cursor: not-allowed;
	/* pointer-events: none; */
}

.qom-search-form {
	margin-top: 30px;
	position: relative;
}

#qom-q {
	font-family: 'Nunito', sans-serif;
	width: 100%;
	border: none;
	background-color: var(--color-light-grey);
	border-radius: 30px;
	padding: 13px 25px;
	font-weight: 600;
	outline: none;
}

.qom-search-form button {
	background-color: var(--color-grey);
	border: none;
	border-radius: 30px;
	padding: 15.5px 27px;
	position: absolute;
	right: 0;
	top: 0;
	cursor: pointer;
}

.qom-search-term {
	display: flex;
}

.qom-search-term h3 {
	margin: -3px 0 0 7px;
}

.qom-search-group {
	margin: 30px 0;
}

.qom-group-title {
    margin: 0 0 12px;
}

.qom-search-group .qom-top-line {
	margin-bottom: 10px;
}

.button.qom-go-next {
	background-color: var(--color-light-green);
	color: var(--color-white);
	width: 100%;
	display: block;
	text-align: center;
	padding: 11px;
	text-transform: uppercase;
	border-radius: 10px;
	font-weight: 500;
	cursor: pointer;
	transition: var(--transition);
}

.button.qom-go-next:hover {
	background-color: var(--color-blue);
	color: var(--color-white);
}

/*--------------------------------------------------------------
# FourEx
--------------------------------------------------------------*/

/* .deductions-modal h2 {
    margin-top: 30px;
} */

.modal-content h3 {
	margin-top:20px;
}

.experiences-archive-container, 
.single-experience-container {
	max-width: 800px;
	padding: 0 30px;
}

.single-experience-container {
	padding: 0 10px;
	margin-bottom: 0;
}

.fex-balance-header .fex-label {
	font-size: 15px;
}

.single-experience-container .entry-header {
	padding: 50px 30px 32px;
	background-color: var(--color-light-grey);
}

a.button.green.booknow {
	right: 30px;
	bottom: 30px;
	color: var(--color-white);
	background-color: var(--color-green);
	font-size: 13px;
	padding: 7px 14px;
	border-radius: 30px;
	font-weight: 800;
	transition: var(--transition);
}

a.button.green.booknow:hover {
	background-color: var(--color-light-green);
}

.fex-info-box {
	padding: 25px;
	text-align: center;
}

.fex-cost-box {
	background-color: var(--color-green);
	color: var(--color-white);
}

.fex-info-box h3 {
	font-size: 15px;
	font-weight: 700;
	text-transform: capitalize;
	letter-spacing: 0;
	color: var(--color-white);
}

.experience_archive_card-image {
	height: auto;
	width: 120px;
}

.experience_archive_card-content {
	width: calc(100% - 120px);
	padding: 15px 25px;
	background-color: var(--color-light-grey);
}

.experience_archive_card-description h3 {
	font-size: 19px;
	font-weight: 700;
	color: var(--color-grey);
}

.experience_archive_card-description .excerpt {
	font-size: 13px;
}

.experience_archive_card-description .cost {
	font-size: 14px;
}

.experience-archive-card {
	box-shadow: 0 1px 6px rgba(0,0,0,0.1);
}

.experience_archive_card-image.contain img {
	padding-right: 10px;
}

.experience_archive_card-button .button {
	color: var(--color-white);
	border-radius: 30px;
	transition: var(--transition);
}

.experience_archive_card-button .button-book-now {
	background-color: var(--color-green);
}

.experience_archive_card-button .button-book-now:hover {
	background-color: var(--color-light-green);
}

.experiences-tabs {
	margin-bottom: 28px;
	padding-bottom: 8px;
}

.experiences-tabs a {
	color: var(--color-grey) !important;
	font-weight: 600 !important;
}

.experiences-tabs a.active {
	background-color: var(--color-grey);
	color: var(--color-white) !important;
}

.fex-wheel-block {
	background-color: var(--color-light-grey);
	border-radius: 15px;
	padding: 50px;
	margin: 25px 0 35px;
	margin-top: 0;
	position: relative;
}

.fex-wheel-block .wrap {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 650px;
	margin: 0 auto;
}

.fex-wheel-block .pie-wrap {
	margin: 0 auto;
	order: 2;
}

.fex-wheel-meta > p:first-child {
	font-size: 40px;
	color: var(--color-light-green);
	font-weight: 800;
}

.fex-wheel-meta > p:first-child strong {
	font-size: 26px;
	font-weight: 700;
	color: var(--color-grey);
}

.fex-wheel-notice-wrap {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.fex-wheel-block .notice-wrap {
	position: relative;
	display: inline-flex;
	align-items: end;
	justify-content: center;
	cursor: pointer;
	position: absolute;
	right: 20px;
	top: 20px;
}

.fex-wheel-block .info-icon,
.fex-info-icon {
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--color-white);
	color: var(--color-grey);
	font-size: 13px;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	transition: 0.2s ease;
}

.fex-wheel-notice {
	position: absolute;
	background: transparent;
	color: var(--color-blue);
	padding: 10px 12px;
	border-radius: 8px;
	font-size: 13px;
	line-height: 1.2;
	white-space: nowrap;
	opacity: 0;
	visibility: hidden;
	transition: 0.2s ease;
	z-index: 50;
	left: 25px;
	top: -15px;
	font-weight: 700;
}

.fex-wheel-block .notice {
	position: absolute;
	background: transparent;
	color: var(--color-grey);
	padding: 10px 12px;
	border-radius: 8px;
	font-size: 11px;
	line-height: 1.2;
	opacity: 0;
	visibility: hidden;
	transition: 0.2s ease;
	z-index: 50;
	right: 100%;
	top: -15px;
	width: 140px;
	text-align: right;
}

.fex-wheel-block .notice-wrap:hover .notice,
.fex-wheel-notice-wrap:hover .fex-wheel-notice {
 	opacity: 1;
	visibility: visible;
}

.fex-wheel-block .pie-outer::before {
	background: radial-gradient(farthest-side, var(--color-light-green) 98%, #0000) top/var(--b) var(--b) no-repeat, conic-gradient(var(--color-light-green) calc(calc(var(--c) / 4) * 1%), var(--color-light-green) calc(var(--c) * 1%), #0000 0);
}

.fex-wheel-block .pie-outer::after {
	background: var(--color-light-green);
	z-index: 1;
}

.fex-wheel-block .pie-inner::before {
	background: radial-gradient(farthest-side, var(--color-blue) 98%, #0000) top/var(--b) var(--b) no-repeat, conic-gradient(var(--color-blue) calc(calc(var(--c2) / 4) * 1%), var(--color-blue) calc(var(--c2) * 1%), #0000 0);
}

.fex-wheel-block .pie-inner::after {
	background: var(--color-blue);
	transform: rotate(calc(var(--c2) * 3.6deg)) translateY(calc(50% - var(--w) / 2));
	z-index: 2;
}

.experiences-archive-container, 
.single-experience-container {
	width: 100%;
}

.experience_archive_card-button {
	width: 150px;
}

.experience_archive_card-description {
	width: calc(100% - 165px);
}

/*--------------------------------------------------------------
# Brand Hub
--------------------------------------------------------------*/

.brandbucks-status .loyalty-status-wrap {
	text-align: center;
	margin: 0 auto;
}

.brandbucks-status .loyalty-status-wrap p {
	margin-bottom: 10px;
}

.bb-tooltip p {
	text-align: center;
	margin-bottom: 28px;
	font-size: 17px;
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}

.bb-tooltip + .portal-links {
	margin: 0 0 30px;
}

.bb-tooltip + .portal-links .portal-link.cta {
	width: 49%;
}

.bb-tooltip + .portal-links .portal-link.cta .wrap {
	display: flex;
	align-items: center;
	text-align: left;
	justify-content: center;
}

.bb-tooltip + .portal-links .portal-link.cta .wrap .icon-wrap {
	width: 90px;
}

.bb-tooltip + .portal-links .portal-link.cta h3 {
	margin: 0;
	width: calc(100% - 100px);
	max-width: 185px;
	line-height: 1.2;
}

.shop-category-list.bb-category-list {
	margin-top: 30px;
}

.brandbucks-form-wrap {
    margin-top: 30px;
    background-color: var(--color-light-grey);
    padding: 30px;
    border-radius: 20px;
}

.brandbucks-form-wrap .gform-theme--framework .gfield:where(.gfield--type-fileupload, 
.brandbucks-form-wrap .gfield--input-type-fileupload) .gform_drop_area {
    background-color: #ffffff;
}

#gform_2 input {
	border-radius: 30px;
	outline: none;
	border-color: var(--color-grey);
}

#gform_2 .add_list_item {
	background-color: var(--color-light-green);
	outline: none;
	border-color: var(--color-light-green);
}

body .gform_required_legend {
	display: none;
}

.brand-assets-wrap {
	margin-top: 25px;
}

.brand-assets-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.brand-asset-card {
	border: 1px solid var(--color-dark-grey);
	border-radius: 15px;
	padding: 30px;
	text-align: center;
	width: 31%;
	transition: var(--transition);
}

.brand-asset-card:hover {
	border-color: var(--color-green);
}

.brand-asset-card__logo {
	height: 35px !important;
	width: auto;
	margin: 0 auto;
	object-fit: contain;
}

.gform-theme--framework .gfield:where(.gfield--type-fileupload, 
.gfield--input-type-fileupload, 
.gfield--type-post_image) .ginput_preview .gfield_fileupload_progressbar_progress {
	background-color: var(--color-light-green);
}

.gform-theme--framework .gfield:where(.gfield--type-fileupload, 
.gfield--input-type-fileupload, 
.gfield--type-post_image) .ginput_preview .gfield_fileupload_progress::after {
	color: var(--color-light-green);
}

/*--------------------------------------------------------------
# Support
--------------------------------------------------------------*/

.support-description {
	border-top: 1px solid rgba(85, 86, 90, 0.30);
	padding-top: 20px;
	margin-bottom: 25px;
}

.support-description h3 {
	font-weight: 800;
	margin-bottom: 5px;
}

.enquiries {
	background-color: var(--color-light-green);
	border-radius: 10px;
	padding: 30px 35px;
	text-align: center;
	margin-top: 50px;
}

.enquiries h3 {
	color: var(--color-white);
	font-weight: 800;
	font-size: 16px;
}

.enquiries p {
	color: var(--color-white);
}

.social-media a {
	width: 30px;
	height: 30px;
	display: inline-block;
	background-color: var(--color-white);
	color: var(--color-light-green);
	border-radius: 50%;
	font-size: 17px;
	line-height: 1.9;
	margin: 0 10px;
}

body .gform-theme--foundation .gform_fields {
	grid-row-gap: 12px;
	row-gap: 12px;
}

body .gform-theme--foundation .gfield input.large, 
body .gform-theme--foundation .gfield select.large,
body .gform-theme--foundation .gfield textarea {
	background-color: #f9f9f9;
	border: none;
	border-radius: 30px;
	padding: 24px;
	box-shadow: none;
	outline: none;
}

body .gform-theme--foundation .gfield textarea {
	border-radius: 15px;
	resize: none;
}

#gform_submit_button_13 {
	margin: 0 0 0 auto;
	background-color: var(--color-blue) !important;
	text-transform: uppercase;
}

#gform_submit_button_13:hover {
	background-color: var(--color-light-green) !important;
}

/*--------------------------------------------------------------
# My Account
--------------------------------------------------------------*/

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-navigation {
	float: left;
	width: 20%;
	background-color: #f5f5f5;
	padding: 22px 28px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul,
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a,
.woocommerce-MyAccount-navigation a {
	text-transform: capitalize;
	font-size: 16px;
	display: block;
	padding: 5px 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
.woocommerce-MyAccount-navigation .is-active a {
	font-weight: 900;
}

.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-MyAccount-content {
	float: right;
	width: 75%;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button.button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button.button {
	font-family: 'Nunito', sans-serif;
	text-transform: capitalize;
	background-color: var(--color-blue);
	color: var(--color-white);
	border-radius: 30px;
	font-weight: 400;
	transition: var(--transition);
	padding: 8px 6px;
	font-size: 12px;
}
a.woocommerce-button.button.order-again {
    margin-left: 5px;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button.button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button.button:hover {
	background-color: var(--color-green);
	color: var(--color-white);
}

.woocommerce .woocommerce-customer-details address {
	border: none;
	padding: 0;
	font-size: 14px;
	font-weight: 300;
}

.woocommerce form .form-row .input-text, 
.woocommerce form .form-row select {
	padding: 12px 22px;
	background-color: #f9f9f9;
	border: none;
	border-radius: 30px;
	color: var(--color-grey);
	font-size: 15px;
	outline: none;
}

fieldset {
	padding: 0;
	border: none;
}

table + .order-again,
.woocommerce-orders-table__header.woocommerce-orders-table__header-reorder,
.woocommerce-orders-table__cell.woocommerce-orders-table__cell-reorder {
	display: none;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/

.site-footer {
	background-color: var(--color-light-grey);
	padding: 20px 0 12px;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 2;
}

.site-footer .site-info {
	max-width: 800px;
}

.site-footer .site-info a {
	text-align: center;
	display: block;
}

.site-footer .site-info img {
	display: block;
	margin: 0 auto 8px;
	max-height: 20px;
}

.site-footer .site-info span {
	font-size: 13px;
	display: block;
}

body .cart-count-display.cart-full::after {
	top: -5px;
	right: 10px;
	background-color: var(--color-dark-grey);
	color: var(--color-white);
	padding: 0 5px;
	border-radius: 50%;
}

/*--------------------------------------------------------------
# Warranties
--------------------------------------------------------------*/

#warranties {
	margin: 30px 0 0;
	list-style: none;
	padding: 0;
}

#warranties li a {
	display: block;
	width: 100%;
	text-align: center;
	background-color: var(--color-grey);
	color: var(--color-white);
	border-radius: 30px;
	margin: 0 0 10px;
	padding: 14px;
	transition: var(--transition);
}

#warranties li a:hover {
	background-color: var(--color-blue);
}

/*--------------------------------------------------------------
# Responsive
--------------------------------------------------------------*/

@media (max-width: 1023px) {
	.goal {
		padding: 20px 30px;
	}
}

@media (max-width: 810px) {
	.site-footer {
		position: fixed;
	}
	.qom-line-item:not(.qom-top-line) {
		width: 49%;
	}
	.scroll-wrap {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#quick-order-menu .qom-line-item.qom-top-line { 
		display: none !important;
	}
	#quick-order-menu .qom-line-item {
		display: grid;
		align-items: center;
		grid-template-columns: 1fr;
		border: 1px solid #eee;
		border-radius: 10px;
		padding: .9rem 1rem;
	}
	#quick-order-menu .qom-line-item .qom-heading {
		grid-column: 1 / -1;
		flex-direction: column;
		align-items: flex-start;
		margin-bottom: .5rem;
		width: 100%;
	}
	#quick-order-menu .qom-line-item > div[data-label] {
		display: grid;
		grid-template-columns: minmax(85px, 40%) 1fr;
		column-gap: .75rem;
		row-gap: .25rem;
		padding: .25rem 0;
		width: 100%;
	}
	#quick-order-menu .qom-line-item > div[data-label]::before {
		content: attr(data-label);
		font-weight: 600;
		opacity: .8;
	}
	#quick-order-menu .qom-line-item .qom-addtocart {
		grid-column: 1 / -1;
		margin-top: .5rem;
		width: 100%;
	}
	.fts-cart-adjust {
		width: 100%;
	}
	.fts-cart-add {
		margin: 0;
	}
	.fts-cart-apply {
		margin-left: 10px;
	}
	.qom-page-spares .scroll-wrap {
		min-height: auto;
	}
}

@media (max-width: 767px) {
	.goal {
		flex-wrap: wrap;
	}
	.goal .left {
		min-width: unset;
		width: 100%;
		text-align: center;
	}
	.goal .right {
		width: 100%;
		text-align: center;
		margin-top: 10px;
	}
	.progress {
		width: 100%;
		max-width: unset;
		margin-bottom: 10px;
	}
	.pie-background,
	.pie-box-shadow,
	.pie {
		--b: 38px;
		--w: 240px;
	}
	.bb-tooltip + .portal-links .portal-link.cta {
		width: 100%;
	}
	.brand-asset-card {
		padding: 20px 15px 15px;
		width: 100%;
		margin-bottom: 10px;
	}
	.woocommerce-account .woocommerce-MyAccount-navigation, 
	.woocommerce-MyAccount-navigation {
		float: none;
		width: 100%;
		margin-bottom: 35px;
	}
	.woocommerce-account .woocommerce-MyAccount-navigation ul, 
	.woocommerce-MyAccount-navigation ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.woocommerce-account .woocommerce-MyAccount-navigation ul li:not(:last-child), 
	.woocommerce-MyAccount-navigation ull li:not(:last-child) {
		margin-right: 20px;
	}
	.woocommerce-account .woocommerce-MyAccount-content, 
	.woocommerce-MyAccount-content {
		float: none;
		width: 100%;
	}
	.woocommerce table.shop_table_responsive tbody th, .woocommerce-page table.shop_table_responsive tbody th {
		display: block;
	}
	.woocommerce-cart .cart-totals-wrap table.shop_table th {
		display: none;
	}
	.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-actions::before {
		display: none;
	}
	.woocommerce-orders-table__cell.woocommerce-orders-table__cell-reorder {
		display: none !important;
	}
}

@media (max-width: 639px) {
	#qom-search,
	#qom-stock-toggle,
	#qom-prev-purchase-toggle {
		width: 100%;
	}
	#qom-search-wrap::after {
		left: calc(100% - 65px);
	}
	.loyalty-status-wrap {
		text-align: center;
		width: 100%;
		margin-bottom: 25px;
	}
	.pie-wrap {
		margin: 0 auto;
	}
	.fex-wheel-notice {
		background: var(--color-white);
	}
}

@media (max-width: 540px) {
	.woocommerce ul.products[class*=columns-] li.product, 
	.woocommerce-page ul.products[class*=columns-] li.product {
		width: 100%;
	}
	.fwg-rewards-exe {
		margin-top:20px;
		width:100%;
	}
	.pie-wrap {
		margin: 0 auto;
		max-width: 100%;
	}
}

@media (max-width: 480px) {
	h2 {
		font-size: 23px;
	}
	.qom-line-item:not(.qom-top-line) {
		width: 100%;
	}
	#filter-trigger, #qom-filter-trigger {
		position: relative;
	}
	.fex-info-boxes {
		flex-wrap: wrap;
	}
	.fex-info-box {
		flex: unset;
		width: 100%;
	}
	.fwr-table {
		font-size: 12px;
	}
	.fourwaysrewards-history {
		padding: 25px;
	}
	.loyalty-wrap .portal-links .portal-link:nth-child(1) h3, 
	.loyalty-wrap .portal-links .portal-link:nth-child(2) h3 {
		font-size: 21px;
	}
	.experience_archive_card-image {
		width: 100%;
	}
	.experience_archive_card-image.contain img {
		max-width: 250px;
		margin: 0 auto;
		padding: 8px 0;
	}
	.experience_archive_card-content {
		width: 100%;
		padding: 20px 25px;
	}
	.woocommerce-account .woocommerce-MyAccount-navigation ul li {
		width: 100%;
		margin: 0 !important;
	}
	.filter-panel, #qom-filter-lightbox .filter-panel {
		padding: 20px 22px;
		border-radius: 18px;
	}
	.custom-radio-label, #qom-filter-lightbox .custom-radio-label {
		font-size: 13px;
	}
	.close-lightbox, #qom-close-lightbox {
		top: 20px;
		right: 20px;
	}
}