:root {
--sv-primary-color: #D68E31 ;
--sv-primary-hover-color: var(--sv-color-purple) ;
--sv-sale-color: #ce141d ;
--sv-toggle-text-color: #49585e ;
--sv-product-image-background-color: #FFF ;
--sv-toggle-background-color: #e9e9e9 ;
--sv-section-background-color: #f6f6f6 ;
--sv-head-cart-color: #474747 ;
--sv-head-cart-background-color: #FFF;
--sv-head-cart-product-border: rgba(179,133,203,0.1) ;
--sb-color-white: #fff;
--sb-color-black: #000;
}

/* Generic */

body .content .productsListing .product {
	padding-bottom: 0;
}
body .shopErrorDisplay.show {
	text-align: center;
}

/* Headcart */
body .headCartContainer {
	display: flex;
	justify-content: center;
}
body .headCartContainer .cart {
	padding: 0;
	border: none;
	background-color: transparent;
}
body .headCartContainer .cart .icon {
	display: block;
	width: 1rem;
	height: 1rem;
	position: relative;
}
body .headCartContainer .cart .icon svg * {
	fill: #474747;
}
body .headCartContainer .cart .icon .count {
	width: 0.5rem;
	height: 0.5rem;
	position: absolute;
	border-radius: 100%;
	background: #7B2C84;
	top: -0.25rem; right: -0.25rem;
}
body .shopHeadContainer .headCartPopup, 
body .shopHeadContainer .accountUtilityPopup {
	top: 3.375rem;
	border: 0.0625rem solid var(--sv-color-light-blue);
	border-top: 0;
}
body .shopHeadContainer .headCartPopup .cartItem {
	border-color: var(--sv-color-light-blue);
}
body .shopHeadContainer .headCartPopup .cartItem .remove {
	padding: 0;
	border: none;
	background-color: transparent;
}
body .shopHeadContainer .headCartPopup .cartItem a img {
	object-fit: contain;
	font-family: 'object-fit: contain;';
}
body .shopHeadContainer .headCartPopup .total {
	font-size: 0.75rem;
}
body .shopHeadContainer .headCartPopup .total,
body .shopHeadContainer .headCartPopup .buttonContainer .chkSbmt {
	text-transform: uppercase;
}
body .shopHeadContainer .headCartPopup .buttonContainer .chkSbmt {
	background-color: transparent;
	border: 0.0625rem solid var(--sv-color-primary);
}
body .shopHeadContainer .headCartPopup .buttonContainer .chkSbmt:hover,
body .shopHeadContainer .headCartPopup .buttonContainer .chkSbmt:hover,
body .shopHeadContainer .headCartPopup .buttonContainer .chkSbmt:focus,
body .shopHeadContainer .headCartPopup .buttonContainer .chkSbmt:focus {
	color: var(--sv-color-white);
	background-color: var(--sv-color-primary);
}

/* Breadcrumbs */
body .contentContainer .breadcrumbContainer.wrapper.header-active {
	padding: 1.25rem;
}
body .contentContainer .breadcrumbContainer.wrapper.header-active:after {
	content: '';
	display: block;
	border-color: #E2E2E2;
}
body .contentContainer .breadcrumbContainer:after {
	display: none;
}
body .contentContainer .breadcrumbContainer.wrapper {
	display: flex;
	justify-content: flex-end;
	padding: 1.25rem;
}
body .contentContainer .breadcrumbContainer a {
	margin-right: 0.5rem;
	line-height: 0.875rem;
}
body .contentContainer .breadcrumbContainer a:last-of-type {
	margin-right: 0;
}
body .contentContainer .breadcrumbContainer a:after {
	padding-left: 0.5rem;
	color: #C5C5C5 !important;
}

/* Listing Pages */
body .categoryHeader:after {
	padding-bottom: 17.5rem;
}
body .categoryHeader img {
	color: transparent;
}
body .content.pageTop {
	padding: 0 0 3.75rem 0;
}
body .content.pageTop .prodListingMeta {
	margin-top: 2rem;
}
body #js-productsListing .content.pageTop h1.bg-title {
	position: relative;
	padding: 1.25rem 0 !important;
}
body #js-productsListing .content.pageTop h1.bg-title:before,
body #js-productsListing .content.pageTop h1.bg-title:after {
	content: '';
	z-index: -1;
	width: 100vw;
	height: 100%;
	display: block;
	top: 0; left: -50vw;
	position: absolute;
	background: var(--sv-color-primary);
}
body #js-productsListing .content.pageTop h1.bg-title:after {
	left: unset;
	right: -50vw;
}
body #js-productsListing .content.pageTop .wrapper {
	text-align: center;
}
body aside.sidebar .section:last-child {
	padding-bottom: 1rem;
}
body .content.pageTop .wrapper .page,
body .content.pageTop .wrapper .categoryContent {
	margin: 0 auto;
	max-width: 50rem;
	padding: 1rem 0 0;
}
body .content.pageTop .wrapper .page .entryContent .column p:last-of-type {
	padding-bottom: 0;
}
body .content .productsListing .product .inner .h6 {
	font-size: 0.875rem;
	line-height: 1.5rem;
	letter-spacing: 0.1em;
	padding: 1.25rem 0 0.5rem;
}
body .content .productsListing .product a:hover .prodImg, 
body .content .productsListing .product a:focus .prodImg {
	opacity: 1;	
}
body .content .productsListing .product .prodPrice .price {
	font-size: 0.875rem;
}
body .content .productsListing .product .inner .colourSelectors {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
body .content .productsListing .product .inner .colourSelectors .selectorContainer {
	display: block;
	width: 1.25rem;
	height: 1.25rem;
	margin-right: 0.625rem;
	margin-bottom: 0.625rem;
	border: 0.0625rem solid #DEDEDE;
}

/* Product Filtering */
.sb-page #js-productsListing .outerContent.filtering {
	position: relative;
}
.sb-page #js-productsListing .outerContent.filtering .spinner {
	margin: 0 auto;
}
body #js-productsListing > .wrapper.loadWrap .sidebar {
	z-index: 1001;
}
body .sidebarShop .shopFilters .section h5 {
	text-transform: uppercase;
}
body .sidebarShop .shopFilters .section h5 a {
	color: #474747;
	transition: none;
	font-size: 0.875rem;
	padding-bottom: 0.5rem;
}
body .sidebarShop .shopFilters .section.expand ul {
	padding: 0;
}
body .sidebarShop .shopFilters ul li {
	margin: 0;
	border-bottom: none !important;
	padding: 0.625rem 0 !important;
}
body .sidebarShop .shopFilters ul li input[type="checkbox"] {
	margin-right: 0.75rem;
}
body .sidebarShop .shopFilters ul span {
	line-height: 1rem;
	font-size: 0.875rem;
}
body #js-productsListing > .wrapper.loadWrap .sidebar .modalSection:first-of-type {
	padding: 0.875rem 1.25rem 0;
}
body #js-productsListing > .wrapper.loadWrap .sidebar .modalSection:first-of-type h4 {
	font-size: 0.75rem;
	padding-right: 0.5rem;
}
body #js-productsListing > .wrapper.loadWrap #js-filterModalTrigger,
body #js-productsListing > .wrapper.loadWrap .sidebar .modalSection:last-of-type button {
	border-radius: 0;
	color: var(--sv-primary-color);
	background: var(--sb-color-white);
	border-color: var(--sv-primary-color);
}
body #js-productsListing > .wrapper.loadWrap #js-filterModalTrigger:hover,
body #js-productsListing > .wrapper.loadWrap #js-filterModalTrigger:focus,
body #js-productsListing > .wrapper.loadWrap .sidebar .modalSection:last-of-type button:hover,
body #js-productsListing > .wrapper.loadWrap .sidebar .modalSection:last-of-type button:focus {
	color: var(--sb-color-white);
	background: var(--sv-primary-color);
}
body #js-productsListing > .wrapper.loadWrap #js-filterModalTrigger span svg * {
	stroke: var(--sv-primary-color);
}
body #js-productsListing > .wrapper.loadWrap #js-filterModalTrigger:hover span svg *,
body #js-productsListing > .wrapper.loadWrap #js-filterModalTrigger:focus span svg * {
	stroke: var(--sb-color-white);
}

/* Category layout */
body.sb-category-listing #js-productsListing .outerContent {
	padding-bottom: 2rem;
}
body.sb-category-listing main.contentContainer > .wrapper.loadWrap {
	padding: 0;
	max-width: 92.5rem;
}
body .content .categoryListing {
	padding: 0;
	grid-gap: 0;
	display: flex;
	flex-wrap: wrap;
}
body .content .categoryListing .product {
	padding: 0;
	margin: 0 0 2rem 0;
}
body .content .categoryListing .product a {
	position: relative;
}
body .content .categoryListing .product .inner {
	width: auto;
	background: #fff;
	left: 0; bottom: 0;
	position: absolute;
	align-items: flex-start;
	padding: 0.625rem 1.5rem;
}
body .content .categoryListing .product .inner .h6 {
	padding: 0;
	color: var(--sv-color-black);
	text-align: left;
	text-transform: uppercase;
	font-weight: 700;
	line-height: 1rem;
	font-size: 0.75rem;
}
body .content .categoryListing .product .prodImg {
	object-fit: cover;
}
body .content .categoryListing .product .thumb:after {
	padding-bottom: calc(200/460 * 100%);
}
body .content .categoryListing .product.allProducts,
body .content .categoryListing .product.categorySpacer {
	padding: 0;
	background-color: #C6E3EF;
}
body .content .categoryListing .product.allProducts a,
body .content .categoryListing .product.categorySpacer a {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
body .content .categoryListing .product.allProducts a .h4,
body .content .categoryListing .product.categorySpacer a .h4 {
	padding: 0 1rem;
	position: absolute;
	text-align: center;
	color: var(--sv-color-purple);
}
body .content .categoryListing .product.allProducts a:after,
body .content .categoryListing .product.categorySpacer a:after {
	content: '';
	display: block;
	padding-bottom: calc(200/460 * 100%);
}

/* Product Details */
body .content .productsInfo h1 {
	padding: 0 0 1.5rem 0;
}
body .content .productsInfo h3.price {
	font-weight: 400;
	font-size: 1.25rem;
	padding: 0 0 1.5rem 0;
	color: var(--sv-primary-color);
	letter-spacing: 0.1em;
}
body .content .cartAdd {
	padding-top: 0;
}
body .content form .field .fieldTitle {
	color: #474747;
	letter-spacing: 0.2em;
}
body .content .productsInfo .prodDesc p:last-of-type {
	padding-bottom: 0;
}
body .content .productsInfo .prodDesc {
	padding-bottom: 1.5rem;
}
body .cartAdd .prodBtns button#pi_submit {
	width: auto;
}
body .content form .field.quantityContainer button {
	font-weight: 400;
	font-size: 1.25rem;
}
body .content .prodDetails {
	margin-top: 3.75rem;
}
body .content .prodDetails .customField:not(:last-of-type) {
	padding: 0 0 2.25rem 0;
}
body .content .prodDetails .customField .customList {
	padding: 0;
}
body .content .prodDetails .customField .customList li {
	list-style: none;
	padding-bottom: 0.25rem;
}
body .content .prodDetails .customField.description ul {
	padding: 0 0 0 1.125rem;
}
body .content .prodDetails .customField.description ul li {
	padding-bottom: 0.625rem;
}
body .content form .field .attribsRadioButton.imageRadio {
	padding: 0;
	display: inline-flex;
	align-items: center;
}
body .content form .field .attribsRadioButton.imageRadio .selectionImageContainer {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 2.5rem;
	max-height: 2.5rem;
	border: 0.0625rem solid #DEDEDE;
	transition: 0.25s ease border-color;
}
body .content form .field .attribsRadioButton.imageRadio input:checked ~ .selectionImageContainer {
	border-color: var(--sv-head-cart-color);
}
body .content .productsImage a.hide {
	display: none !important;
}

/* Related Products */
body .productsRelated .content {
	padding-top: 2.5rem;
	border-top: 0.0625rem solid #E2E2E2;
}
body .productsRelated .content h2 {
	color: var(--sv-primary-color);
	padding-bottom: 2.5rem;
}

/* 540px */
@media (min-width: 33.75em) {
	/* Listing Pages */
	body .content .productsListing {
		grid-template-columns: repeat(auto-fill, minmax(11.875rem , 1fr));
	}
	/* Related Products */
	body #js-productsRelated .content .productsListing {
		grid-template-columns: repeat(auto-fill, minmax(16.875rem , 1fr));
	}
}
/* 740px */
@media	(min-width: 46.25em) {
	/* Category layout */
	body .content .categoryListing {
		margin: 0 -2rem 0 0;
	}
	body .content .categoryListing .product {
		padding: 0;
		margin: 0 2rem 2rem 0;
		width: calc(50% - 2rem);
	}
	body .content .categoryListing .product.categorySpacer {
		flex-grow: 1;
		flex-shrink: 1;
	}
	body .content .categoryListing .product.categorySpacer a:after {
		padding-bottom: calc(200/460 * 48%);
	}
}
/* 940px */
@media (min-width: 58.75em) {
	/* Product Filtering */
	body #js-productsListing > .wrapper.loadWrap .sidebar {
		z-index: 300;
		background: #DDD6CA;
		padding: 2rem 2rem 3.75rem;
		margin-bottom: 2.5rem;
	}
	body .sidebarShop .shopFilters .section {
		padding: 0 0 1.375rem 0;
		margin-bottom: 2rem;
	}
	body aside.sidebar .shopFilters:last-of-type .section:last-child {
		margin: 0;
		padding: 0;
		border: none;
	}
	body .sidebarShop .shopFilters .section h5 a {
		pointer-events: none;
		padding-bottom: 0.25rem;
	}
	body .sidebarShop .shopFilters .section ul {
	    opacity: 1 !important;
	    max-height: unset !important;
	}
	body .sidebarShop .shopFilters .section h5 a:before,
	body .sidebarShop .shopFilters .section h5 a:after {
		display: none;
	}
	body #js-productsListing > .wrapper.loadWrap .sidebar form > .filterTitle {
		font-size: 1rem;
		padding-bottom: 2rem;
		text-transform: uppercase;
	}

	/* Product Details */
	body .content .imagesArea {
		margin-bottom: 0;
		max-width: calc(45% - 3.75rem);
		flex-basis: calc(45% - 3.75rem);
	}
	body .content .productsInfo {
		max-width: calc(55% - 3.75rem);
		flex-basis: calc(55% - 3.75rem);
	}
	body .content .prodDetails {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	body .content .prodDetails .customField {
		width: calc(50% - 3.75rem);
	}
}
/* 1040px */
@media (min-width: 65em) {
	body .content .categoryListing .product {
		width: calc(33.3% - 2rem);
	}
}
/* 1240px */
@media (min-width: 77.5em) {


	/* Headcart */
	body .shopHeadContainer .headCartPopup, 
	body .shopHeadContainer .accountUtilityPopup {
		top: 2.0625rem;
	}

	/* Breadcrumbs */
	body .contentContainer .breadcrumbContainer.wrapper {
		margin-bottom: 3.75rem;
		padding: 2.5rem 1.25rem;
	}
	
	/* Listing Pages */
	body .categoryHeader:after {
		padding-bottom: 27.1875rem;
	}
	body .content.pageTop {
		padding: 0 0 6.25rem 0;
	}

	/* Category layout */
	body .content.pageTop .wrapper .page,
	body .content.pageTop .wrapper .categoryContent {
		padding-top: 2.5rem;	
	}
	body.sb-category-listing .content.pageTop {
		padding-bottom: 5rem;
	}
	body .content .categoryListing .product .inner .h6 {
		font-size: 0.75rem;
	}
	body .content .categoryListing .product.allProducts a .h4,
	body .content .categoryListing .product.categorySpacer a .h4 {
		font-size: 1.5rem;
	}

	/* Product Details */
	body .content .productsInfo h1 {
		padding: 0 0 2.5rem 0;
	}
	body .content .productsInfo .prodDesc {
		padding-bottom: 2rem;
	}
	body .content .productsInfo h3.price {
		font-size: 1.5rem;
		padding-bottom: 2rem;
	}
	body .content form .field {
		padding-bottom: 2rem;
	}
	body .content form .field .fieldTitle {
		font-size: 1rem;
	}
	body .content .prodDetails {
		margin-top: 5rem;
	}
	body .content .prodDetails .customField:not(:last-of-type) {
		padding: 0 0 3.75rem 0;
	}
	
	/* Related Products */
	body .productsRelated .content {
		padding-top: 5rem;
		margin-top: 2.5rem;
	}
	body .productsRelated .content h2 {
		padding-bottom: 3.75rem;
	}
}