/* FONTS */
@import url('https://fonts.googleapis.com/css2?family=Overpass:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
/*
	Thin 100
	Thin 100 italic
	Extra-light 200
	Extra-light 200 italic
	Light 300
	Light 300 italic
	Regular 400
	Regular 400 italic
	Semi-bold 600
	Semi-bold 600 italic
	Bold 700
	Bold 700 italic
	Extra-bold 800
	Extra-bold 800 italic
	Black 900
	Black 900 italic
*/


:root {
	--ButtonBackgroundColour: #141661;
	--ButtonTextColour: #ffffff;
	--ButtonHoverBackgroundColour: #e0e0e0;
	--ButtonHoverTextColour: #000000;
	--FontFamily: Overpass;
}


/* OVERALL PAGE STRUCTURE */

body,
html {
	background-color: #ffffff;
	margin: 0;
	font-family: var(--FontFamily), sans-serif;
	font-size: 16px;
	min-width: 1350px;
}

/* HIDE MOBILE HEADER */

#mobile-header,
#mobile-menu {
	display: none;
}


/* DEFAULT STYLES */

h1 {
	font-weight: 600;
	font-size: 32px;
	margin: 0;
}

h2 {
	font-weight: 600;
	font-size: 22px;
	margin: 10px 0;
}

h3 {
	font-weight: 600;
	font-size: 18px;
	margin: 10px 0;
}

p {
	margin: 10px 0;
}

a {
	text-decoration: none;
}

p a {
	text-decoration: underline;
	font-weight: 700;
	color: #000000;
}

p a:hover {
	text-decoration: none;
}

img {
	border: 0;
}


/* MISC STYLES */

.error-text {
	color: #dd0000;
	text-align: center;
	font-size: 18px;
	line-height: 2;
}

.form-error {
	color: #dd0000;
	padding-top: 5px;
	display: inline-block;
}

.highlight {
	color: #000000;
	font-weight: 700;
}

.red {
	color: #dd0000;
}

.fixedwidth {
	font-family: "Courier New", Courier, monospace;
	font-size: 17px;
	font-weight: bold;
	letter-spacing: 1px;
	white-space: nowrap;
}

.hidden-items {
	display: none;
}

.smaller-text {
	font-size: 14px;
	font-weight: 300;
}

.hidden-desktop {
	display: none;
}


/* PayPal pay later message */
#paypal-paylater-message {
	width: 100%;
	min-height: 59px;
	background-color: #eaeced;
}

#paypal-paylater-message span {
	margin-left: auto;
	margin-right: auto;
	display: block;
}


/* TOP BAR */

#top-bar {
	width: 100%;
	height: 32px;
	background-color: #141661;
	user-select: none;
}

#top-bar-inner {
	width: 900px;
	height: 32px;
	margin: 0 auto;
	padding-top: 2px;
	box-sizing: border-box;
	font-size: 0;
	font-weight: 600;
	text-align: center;
	color: #ffffff;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#top-bar-inner .top-bar-link {
	flex-grow: 0;
	padding: 0;
}

#top-bar-inner .top-bar-link a {
	color: #ffffff;
	text-decoration: none;
	display: block;
	box-sizing: border-box;
	font-size: 14px;
	line-height: 32px;
	font-weight: 400;
	padding:  0 10px;
	text-align: center;
}

#top-bar-inner .top-bar-link a:hover {
	text-decoration: underline;
}

#top-bar-inner .top-bar-divider {
	color: #ffffff;
	display: block;
	box-sizing: border-box;
	font-size: 14px;
	line-height: 32px;
	font-weight: 400;
	padding:  0;
	text-align: center;
}

#top-bar-scroller {
	display: none;
}

/* TOP BANNER */

#top-banner {
	width: 100%;
	height: 40px;
	user-select: none;
	margin: 20px 0 15px 0;
}

#top-banner-inner {
	width: 1300px;
	height: 40px;
	margin: 0 auto;
	box-sizing: border-box;
	text-align: left;
	color: #000000;
	font-size: 0;
	position: relative;
}


/* Top Banner Search */

#top-banner-search {
	position: absolute;
	left: 0;
	top: 2px;
	font-size: 0;
	height: 36px;
	box-sizing: border-box;
}

#top-banner-search .search-button {
	float: left;
	background-color: #ffffff;
	background-image: url('../images/header/Search.png');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	box-sizing: border-box;
	height: 26px;
	width: 26px;
	color: #ffffff;
	border: 0;
	margin: 4px;
	cursor: pointer;
}

#top-banner-search .search-text {
	float: left;
	width: 250px;
	height: 30px;
	border: 0;
	margin: 3px 0 0 0;
	padding: 0 10px;
	background-color: #ffffff;
	font-family: var(--FontFamily), sans-serif;
	font-size: 16px;
	box-sizing: border-box;
}

#top-banner-search .search-text:focus {
	outline: none;
	box-shadow: none;
}

#top-banner-search .search-text:focus,
#top-banner-search .search-button:focus {
	outline-width: 0;
}


/* Top Banner Logo */

#top-banner-logo {
	position: absolute;
	left: calc(50% - 168px);
	top: 0;
}

#top-banner-logo img {
	width: 336px;
	height: 36px;
	padding: 2px 0;
}


/* Top Banner Icons */

#top-banner-icons {
	position: absolute;
	right: 0;
	top: 0;
}

#top-banner-icons a {
	display: block;
	border-radius: 20px;
}

#top-banner-icons a:hover {
	background-color: #e0e0e0;
}

#top-banner-icons #top-banner-icons-account {
	display: inline-block;
	margin-right: 10px;
}

#top-banner-icons #top-banner-icons-account img {
	width: 30px;
	height: 30px;
	padding: 5px;
}

#top-banner-icons #top-banner-icons-basket {
	display: inline-block;
	position: relative;
}

#top-banner-icons #top-banner-icons-basket img {
	width: 30px;
	height: 30px;
	padding: 5px;
}

#top-banner-icons #top-banner-icons-basket #top-banner-icon-basket-qty {
	display: block;
	color: #000000;
	font-size: 11px;
	position: absolute;
	width: 40px;
	height: 40px;
	line-height: 33px;
	padding-top: 7px;
	text-align: center;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	box-sizing: border-box;
}



/* TOP SEARCH SUGGESTIONS */

#search_suggest_mobile {
	display: none;
}

/* Search suggest drop down - do not remove position, left or z-index */
#search_suggest {
	position: absolute;
	background-color: #ffffff;
	text-align: left;
	padding: 2px;
	border: 1px solid #000000;
	visibility: hidden;
	width: 700px !important;
	top: 40px !important;
	left: 35px !important;
	z-index: 10;
	font-family: var(--FontFamily), sans-serif;
	font-size: 16px;
	overflow: auto;
	max-height: min(545px, calc(100vh - 150px));
}

/* Link div in the search suggest box */
.suggest_link {
	background-color: #ffffff;
	padding: 4px;
	font-weight: normal;
}

/* Text highlight in search suggest box */
.suggest_link_highlight {
	background-color: #c0c0c0;
	font-weight: 600;
}

/* Link div with mouse over in search suggest box */
.suggest_link_over {
	background-color: #e8e8e8;
	padding: 4px;
	cursor: pointer;
}


/* TOP MENU */

#top-menu {
	width: 100%;
	min-width: 1300px;
	height: 45px;
	user-select: none;
	box-sizing: border-box;
	border-bottom: 1px solid #e8e8e8;
}

#top-menu-inner {
	width: 1300px;
	height: 45px;
	margin: 0 auto;
	box-sizing: border-box;
	text-align: left;
	color: #000000;
	font-size: 0;
	position: relative;
}


/* Top Menu First Level Items */

#top-menu-items {
	display: inline-block;
	width: 100%;
}

#top-menu-items > ul {
	list-style: none;
	padding: 0;
	display: flex;
	margin: 0 100px;
	width: calc(100% - 200px);
}

#top-menu-items > ul li {
	display: inline-block;
	margin: 0;
	padding: 0;
	font-size: 15px;
	font-weight: 500;
	flex-grow: 1;
	text-align: center;
}

#top-menu-items > ul li a,
#top-menu-items > ul li.top-menu-item {
	display: block;
	color: #000000;
	line-height: 44px;
	padding: 0 15px;
}

#top-menu-items > ul > li.top-menu-item-offers {
	color: #cc0000;
}

#top-menu-items > ul > li.top-menu-item-offers ul {
	color: #000000;
}

#top-menu-items > ul > li > .top-menu-item-sale {
	color: #b00000;
}

#top-menu-items > ul li a:hover {
	background-color: #e0e0e0;
}

#top-menu-items ul li.top-menu-item:hover {
	cursor: default;
	background-color: #e0e0e0;
	border-bottom-color: #000000;
}

#top-menu-items ul li.top-menu-item.selected {
	background-color: #e0e0e0;
	border-bottom-color: #000000;
}


/* Top menu dropdown div */

#top-menu-modal {
	display: none;
	position: absolute;
	z-index: 5;
	left: 0;
	top: 151px;
	right: 0;
	bottom: 0;
	overflow: auto;
	background-color: rgba(0, 0, 0, 0.4);
}

#top-menu-items ul li .top-menu-dropdown {
	display: none;
	position: absolute;
	left: 0;
	top: 44px;
	width: 100%;
	height: auto;
	box-sizing: border-box;
	border: 1px solid #d0d0d0;
	padding: 12px 12px 20px 12px;
	overflow: auto;
	z-index: 1000;
	background-color: #ffffff;
	font-size: 0;
}

#top-menu-items ul li .top-menu-dropdown-type {
	padding-top: 24px;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

#top-menu-items ul li .top-menu-dropdown ul {
	list-style: none;
	cursor: auto;
	text-align: left;
	display: inline-block;
	margin: 0;
	padding: 0 3px;
	vertical-align: top;
	width: auto;
	font-size: 15px;
	box-sizing: border-box;
	flex-grow: 1;

}


/* Brands dropdown menu */

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-brands {
	margin-top: 10px;
	width: 33%;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-brands li {
	float: none;
	display: block;
	text-align: center;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-brands li span {
	font-weight: 600;
	font-size: 18px;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-brands li a {
	height: 86px;
	width: 250px;
	margin: 10px auto;
	align-items: center;
	justify-content: center;
	display: flex;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-brands li a:hover {
	background-color: #e0e0e0;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-brands li a img {
	height: auto;
	width: auto;
	max-width: 200px;
	max-height: 70px;
}


/* Sections dropdown menus */

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-section-image a {
	height: 200px;
	width: 200px;
	border: 1px solid #d0d0d0;
	margin: 8px 15px 5px 5px;
	padding: 0;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-section-image a img {
	height: 200px;
	width: 200px;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-sections {
	width: calc(100% - 250px);
	column-count: 3;
	column-gap: 30px;
	column-rule: 1px solid #d0d0d0;
	margin-top: 5px;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-sections li {
	float: none;
	display: block;
	text-align: left;
	break-inside: avoid-column;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-sections li a {
	display: block;
	color: #000000;
	padding: 8px 8px 5px 8px;
	line-height: 18px;
	font-size: 14px;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-sections li a:hover {
	background-color: #e0e0e0;
}


/* Offers dropdown menu */

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex p {
	font-weight: 600;
	font-size: 18px;
	text-align: center;
	width: 100%;
	color: #000000;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-offers {
	column-count: 2;
	padding: 0 50px;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-offers li {
	float: none;
	display: block;
	text-align: center;
	padding: 10px 0 20px 0;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-offers li a {
	margin: 0 auto;
	align-items: center;
	justify-content: center;
	display: flex;
	width: 96%;
	padding-bottom: 3px;
}

#top-menu-items ul li .top-menu-dropdown .top-menu-dropdown-flex .top-menu-dropdown-offers li a img {
	height: auto;
	width: auto;
	max-width: 100%;
}


/* Product added to basket dropdown */

#top-basket {
	position: -webkit-sticky;
	position: sticky;
	width: 1300px;
	top: 0;
	margin: 0 auto;
	height: 0;
	overflow: visible;
	z-index: 100;
}

#top-basket-dropdown {
	position: absolute;
	top: 0;
	right: 0;
	width: 400px;
	background-color: #ffffff;
	padding: 10px 15px 25px 15px;
	border: 2px solid #d0d0d0;
	border-top: none;
	box-sizing: border-box;
	font-size: 16px;
	display: none;
}

#top-basket-title {
	text-align: center;
}

#top-basket-content p {
	text-align: center;
}

#top-basket-content ul {
	padding-left: 12px;
	font-size: 15px;
}

#top-basket-content ul li {
	margin-top: 8px;
	margin-bottom: 8px;
}

#top-basket-view-button {
	display: block;
	width: 300px;
	height: 40px;
	margin: 20px auto 0 auto;
	padding-top: 4px;
	font-family: var(--FontFamily), sans-serif;
	box-sizing: border-box;
	background-color: var(--ButtonBackgroundColour);
	color: var(--ButtonTextColour);
	border: 0;
	cursor: pointer;
	font-size: 20px;
	line-height: 16px;
	text-transform: uppercase;
}

#top-basket-view-button:hover {
	background-color: var(--ButtonHoverBackgroundColour);
	color: var(--ButtonHoverTextColour);
}


/* TOP INFO BAR */

#top-info {
	width: 100%;
	height: 32px;
	background-color: #f8f8f8;
	user-select: none;
	border-bottom: 1px solid #e8e8e8;
}

#top-info-inner {
	width: 1300px;
	height: 32px;
	margin: 0 auto;
	padding-top: 2px;
	box-sizing: border-box;
	font-weight: 400;
	text-align: center;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 14px;
	color: #555555;
}

#top-info-inner span {
	font-size: 11px;
	padding: 0 3px;
}

#top-info-inner strong {
	font-weight: 700;
}

#top-info-inner i {
	font-size: 10px;
	padding: 0 0 0 3px;
}


/* TOP PROMO BAR */

.promo-bar {
	width: 100%;
}

.promo-bar picture img {
	display: block;
	height: auto;
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
	box-sizing: border-box;
}


/* TOP TRAIL */

#top-trail {
	width: 1300px;
	margin: 0 auto;
}

#top-trail ul {
	list-style: none;
	padding: 0;
	margin: 15px 0 10px 0;
}

#top-trail li {
	display: inline;
	padding: 0;
	color: #606060;
	font-size: 12px;
	line-height: 16px;
}

#top-trail a {
	color: #000000;
	text-decoration: none;
}

#top-trail a:hover {
	text-decoration: underline;
}

#top-trail .divider {
	padding: 0 2px;
	color: #000000;
}


/* BOTTOM MENU */

#bottom-menu {
	width: 100%;
	min-width: 1300px;
	background-color: #f0f0f0;
}

#bottom-menu-inner {
	width: 1300px;
	margin: 0 auto;
	overflow: auto;
	user-select: none;
	font-size: 0;
}

#bottom-menu-caption {
	text-align: center;
	margin: 22px 0 12px 0;
}

#bottom-menu-description {
	text-align: center;
	font-size: 14px;
	color: #444444;
}

#bottom-menu-columns {
	display: flex;
	width: 1020px;
	justify-content: space-between;
	align-items: flex-start;
	margin: 25px auto 30px auto;
}

.bottom-menu-column {
	flex-grow: 0;
	flex-shrink: 0;
}

.bottom-menu-column h3 {
	margin: 0;
	font-weight: 500;
	font-size: 16px;
}

.bottom-menu-column ul {
	list-style: none;
	margin: 12px 0 0 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.7;
}

.bottom-menu-column:nth-child(1) ul {
	column-count: 2;
	column-gap: 40px;
}


.bottom-menu-column ul li {
	margin: 0;
	padding: 0;
}

.bottom-menu-column ul li a {
	color: #444444;
}

.bottom-menu-column ul li a:hover {
	color: #000000;
}


/* Bottom menu icons and logos */

#bottom-menu-icons {
	display: flex;
	width: 98%;
	max-width: 1200px;
	justify-content: space-around;
	align-items: center;
	margin: 30px auto 20px auto;
}

#bottom-menu-icons > div {
	flex-grow: 0;
	flex-shrink: 0;
}

.bottom-menu-icons-spark {
	text-align: center;
}

.bottom-menu-icons-spark p {
	margin: 0;
	font-size: 12px;
}

.bottom-menu-icons-spark a img {
	width: 88px;
	height: 55px;
	margin: 2px 8px 8px 0;
	image-rendering: high-quality;
}


.bottom-menu-icons-social a {
	display: inline-block;
	width: 50px;
	height: 50px;
	border-radius: 25px;
	background-color: #000000;
	margin: 0 5px;
}

.bottom-menu-icons-social a img {
	width: 50px;
	height: 50px;
}

.bottom-menu-icons-general .ethical-icon {
	height: 50px;
	width: 58px;
	margin: 0 16px 0 0;
}

.bottom-menu-icons-general .paypal-icon {
	height: 40px;
	width: 164px;
	margin: 5px 16px;
}

.bottom-menu-icons-general .global-icon {
	height: 30px;
	width: 200px;
	margin: 12px 0 8px 16px;
}

.bottom-menu-icons-cards a img {
	height: 40px;
	width: 60px;
	margin: 0 2px;
}



/* FOOTER */

#footer {
	width: 100%;
	min-width: 1300px;
	background-color: #282828;
	user-select: none;
}

#footer-inner {
	width: 1300px;
	margin: 0 auto;
	box-sizing: border-box;
	color: #ffffff;
	overflow: auto;
	padding: 15px 0;
	line-height: 1.6;
	font-size: 11px;
	clear: both;
}

#footer-inner a {
	color: #bbb;
}

#footer-inner a:hover {
	color: #ffffff;
	text-decoration: none;
}

#footer-left {
	width: 55%;
	display: inline-block;
	box-sizing: border-box;
	text-align: left;
	float: left;
}

#footer-right {
	width: 45%;
	display: inline-block;
	box-sizing: border-box;
	text-align: right;
	float: right;
}


/* COOKIE CONSENT */

#cookie-consent {
	position: sticky;
	overflow: auto;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	background-color: #f8f8f8;
	border-top: 1px solid #d0d0d0;
	z-index: 1000;
	display: none;
}

#cookie-consent-inner {
	width: 1300px;
	margin: 0 auto;
}

#cookie-consent p {
	display: inline-block;
	margin-top: 16px;
	font-size: 15px;
}

#cookie-consent-forms {
	display: inline-block;
	float: right;
}

#cookie-consent form {
	display: inline-block;
	margin: 10px 0;
}

#cookie-consent form .alertable-ok,
#cookie-consent form .alertable-cancel {
	width: auto;
	margin-left: 15px;
	font-size: 15px;
}


/* TRUSTPILOT */

.trustpilot {
	width: 1300px;
	margin: 40px auto;
	box-sizing: border-box;
	clear: both;
}


/* SECTION PAGE */

#section-page {
	width: 1300px;
	margin: 0 auto;
	box-sizing: border-box;
	font-size: 0;
	overflow: visible;
	position: relative;
}

#section-page > .section-logo {
	position: absolute;
	top: -20px;
	right: 0;
	height: auto;
	max-height: 55px;
	width: auto;
	max-width: 200px;
}

#section-page h1.sale {
	color: #dd0000;
}

#section-page > h2 {
	font-size: 36px;
	margin-top: 0;
}

#section-page > h3 {
	font-size: 20px;
	margin-top: 0;
	margin-bottom: 30px;
}

#section-page > h3 a {
	color: #000000;
	text-decoration: underline;
	font-weight: 800;
}

#section-page > h3 a:hover {
	text-decoration: none;
}


/* Offer banner on section page */

.section-page-banner {
	width: 100%;
	max-width: 1300px;
	height: auto;
	margin: 15px 0 10px 0;
}


/* Section page minimised description */

#section-page-description {
	width: 100%;
	margin: 15px auto 0 auto;
	height: 18px;
	line-height: 18px;
	display: block;
	overflow: hidden;
	position: relative;
	font-size: 13px;
	color: #808080;
}

#section-page-description-all {
	width: 100%;
	margin: 0 auto 25px auto;
	display: block;
	position: relative;
	font-size: 15px;
	text-align: center;
	line-height: 1.4;
}

#section-page-description > p,
#section-page-description-all p {
	margin: 0;
	padding: 0;
}

#section-page-description > p a {
	font-weight: 600;
	color: #808080;
}

#section-page-description-all > p a {
	font-weight: 600;
}

#section-page-description > p a:hover,
#section-page-description-all > p a:hover {
	text-decoration: none;
}

#section-page-description-more {
	width: 100%;
	margin: 0 auto;
	height: 18px;
	line-height: 22px;
	font-size: 13px;
	color: #808080;
	text-align: right;
}

#section-page-description-more span {
	font-weight: 700;
	text-decoration: underline;
	cursor: pointer;
}

#section-page-description-more span:hover {
	text-decoration: none;
}


/* Section page regular text (used for no products in section) */

.section-message {
	text-align: center;
	margin: 40px 0 30px 0;
}

.section-message p {
	font-size: 18px;
}


/* New and sale products section pages */

#section-page.new-page > h2 {
	font-size: 30px;
	margin: 30px 0 -10px 0;
	display: block;
	width: 100%;
	clear: both;
}

#section-page.new-page > h3 {
	font-size: 26px;
	margin: 30px 0 -10px 0;
	display: block;
	width: 100%;
	clear: both;
	text-transform: uppercase;
}

#section-page.new-page > p {
	font-size: 16px;
}


/* Section blocks */

#section-blocks {
	overflow: visible;
	margin: 30px 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, 402px);
	column-gap: 24px;
	row-gap: 48px;
	justify-content: space-between;
}

.section-block {
	position: relative;
	box-sizing: border-box;
	width: 402px;
	height: auto;
	white-space: normal;
	text-align: left;
	user-select: none;
	border: 1px solid #e0e0e0;
}

.section-block a {
	display: block;
	width: 100%;
	position: relative;
}

.section-block a .section-block-image {
	width: 100%;
	max-width: 400px;
	height: auto;
	max-height: 250px;
	border-bottom: 1px solid #e0e0e0;
}

.section-block a h2 {
	font-size: 18px;
	color: #000000;
	width: 100%;
	box-sizing: border-box;
	padding: 0 8px;
	line-height: 1.4;
	text-transform: none;
	display: inline-block;
	margin: 12px 0;
	text-align: center;
}

.section-block a:hover h2 {
	text-decoration: underline;
}


/* Product blocks */

#product-blocks {
	overflow: visible;
	margin: 28px 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, 282px);
	column-gap: 28px;
	row-gap: 60px;
	justify-content: space-between;
}

.product-block {
	position: relative;
	box-sizing: border-box;
	padding: 0 0 55px 0;
	width: 282px;
	height: auto;
	white-space: normal;
	text-align: left;
	user-select: none;
	border: 1px solid #e0e0e0;
}

.product-suggestions > .product-block {
	width: 230px;
}

.product-block a {
	display: block;
	height: calc(100% + 55px);
	width: 100%;
	position: relative;
}

.product-block a .product-block-image {
	width: 100%;
	max-width: 280px;
	height: auto;
	max-height: 420px;
	border-bottom: 1px solid #e0e0e0;
}

.product-block a .product-block-image img {
	max-width: 280px;
	max-height: 420px;
}

.product-block a .product-block-overlay-new,
.product-block a .product-block-overlay-sale {
	font-size: 14px;
	user-select: none;
	color: #ffffff;
	position: absolute;
	top: 0;
	left: 0;
	padding: 5px 7px 2px 7px;
}

.product-block a .product-block-overlay-new {
	background-color: #000000;
}

.product-block a .product-block-overlay-sale {
	background-color: #aa0000;
}

.product-block a .product-block-overlay-offer {
	position: absolute;
	top: 0;
	left: 0;
	width: 50px;
	height: 50px;
}

.product-block a .product-block-overlay-round {
	position: absolute;
	top: 15px;
	right: 15px;
	width: 100px;
	height: 100px;
}


.product-suggestions > .product-block a .product-block-overlay-new,
.product-suggestions > .product-block a .product-block-overlay-sale {
	font-size: 13px;
}

.product-suggestions > .product-block a .product-block-overlay-offer {
	width: 45px;
	height: 45px;
}

.product-suggestions > .product-block a .product-block-overlay-round {
	top: 10px;
	right: 10px;
	width: 80px;
	height: 80px;
}


.product-block a h2 {
	font-size: 18px;
	color: #000000;
	width: 100%;
	box-sizing: border-box;
	padding: 8px 5px 0 5px;
	line-height: 1.4;
	text-transform: none;
	display: inline-block;
	margin: 0;
	float: left;
}

.product-suggestions > .product-block a h2 {
	font-size: 16px;
}

.product-block a:hover h2 {
	text-decoration: underline;
}

.product-block a .product-block-note {
	font-size: 13px;
	margin: 0;
	padding-top: 5px;
	line-height: 1;
	color: #606060;
	display: block;
	float: left;
	clear: both;
}

.product-block a .product-block-prices {
	display: block;
	box-sizing: border-box;
	padding: 4px 0 0 5px;
	height: 40px;
	width: 170px;
	position: absolute;
	bottom: 0;
	left: 0;
	font-size: 28px;
	line-height: 36px;
	overflow: hidden;
}

.product-suggestions > .product-block a .product-block-prices {
	width: 150px;
	height: 32px;
	font-size: 24px;
	line-height: 32px;
}

.product-block a .product-block-prices .product-block-normal-price {
	margin: 0;
	font-weight: 300;
	color: #555555;
	text-decoration: line-through;
	display: inline-block;
	float: left;
	padding-right: 20px;
	font-size: 28px;
}

.product-suggestions > .product-block a .product-block-prices .product-block-normal-price {
	font-size: 24px;
	padding-right: 18px;
}


.product-block a .product-block-prices .product-block-our-price {
	font-weight: 600;
	margin: 0;
	color: #f15353;
	display: inline-block;
	float: left;
}

.product-block a .product-block-prices .product-block-our-price-black {
	font-weight: 600;
	margin: 0;
	color: #000000;
	display: inline-block;
	float: left;
}

.product-block a .product-block-prices .product-block-our-from {
	font-size: 18px;
	font-weight: 400;
}

.product-block a .product-block-icon {
	width: 98px;
	height: 40px;
	position: absolute;
	right: 5px;
	bottom: 5px;
	image-rendering: -webkit-optimize-contrast
}

.product-suggestions > .product-block a .product-block-icon {
	width: 78px;
	height: 32px;
}


/* FILTERS */

#section-filters {
	width: 100%;
	display: block;
	box-sizing: border-box;
	font-size: 0;
	margin: 20px 0 0 0;
	overflow: auto;
	padding: 15px 0;
	border-top: 1px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
}

#section-filter-form p {
	font-size: 15px;
	line-height: 28px;
	display: inline-block;
	height: 30px;
	margin: 0;
	padding: 2px 12px 0 0;
	float: left;
	clear: none;
}

.section-filter-group {
	overflow: auto;
	float: left;
	clear: none;
	width: calc(((100% - 180px) / 5) - 15px);
	max-width: 210px;
	box-sizing: border-box;
	margin-right: 15px;
}

.section-filter-title {
	font-size: 15px;
	line-height: 26px;
	height: 30px;
	box-sizing: border-box;
	display: block;
	clear: both;
	padding: 2px 0 0 10px;
	border: 1px solid #e0e0e0;
	user-select: none;
	position: relative;
	overflow: hidden;
}

.section-filter-title:after {
	font-family: FontAwesome;
	font-size: 16px;
	content: "\f078";
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	padding: 0 0 2px 1px;
	line-height: 28px;
	text-align: center;
	width: 30px;
	background-color: #e0e0e0;
	color: #000000;
	box-sizing: border-box;
}

.section-filter-total {
	display: inline-block;
	float: right;
	margin: 2px 35px 0 0;
	height: 20px;
	width: 20px;
	border-radius: 10px;
	text-align: center;
	font-size: 11px;
	line-height: 22px;
	color: #ffffff;
	background-color: #141661;
}

.section-filter-dropdown {
	border: 1px solid #e0e0e0;
	z-index: 2 !important;
	position: absolute;
	width: auto;
	min-width: calc(((100% - 180px) / 5) - 17px);
	margin-left: 1px;
	box-sizing: border-box;
	background-color: #ffffff;
	opacity: 100%;
	display: none;
	box-shadow: 1px 2px 5px -2px #333333;
}


.section-filter-info {
	height: 36px;
	box-sizing: border-box;
	border-bottom: 1px solid #e0e0e0;
	font-size: 14px;
	line-height: 20px;
	padding: 9px 12px 7px 12px;
	user-select: none;
}

.section-filter-info-left {
	float: left;
	clear: none;
}

.section-filter-info-right {
	float: right;
	clear: none;
}


.section-filter-options {
	max-height: 385px;
	overflow-y: auto;
	overflow-x: hidden;
	padding: 10px 10px 8px 10px;
	box-sizing: border-box;
}

.section-filter-row {
	width: 100%;
	box-sizing: border-box;
	height: 22px;
	margin-bottom: 3px;
	user-select: none;
	margin-right: 20px;
}

.section-filter-row:hover {
	background-color: #e0e0e0;
}

.section-filter-checkbox {
	display: inline-block;
	float: left;
	clear: both;
	height: 16px;
	width: 16px;
	box-sizing: border-box;
}

.section-filter-label {
	/*display: inline-block;*/
	display: flex;
	font-size: 14px;
	font-weight: 300;
	line-height: 16px;
	padding: 4px 5px 2px 5px;
	width: calc(100% - 30px);
	float: left;
	clear: none;
	white-space: nowrap;
	box-sizing: border-box;
}

.section-filter-swatch {
	height: 14px;
	width: 14px;
	display: inline;
	padding-right: 4px;
}

.section-filter-buttons {
	height: 36px;
	box-sizing: border-box;
	border-top: 1px solid #e0e0e0;
	font-size: 14px;
	line-height: 20px;
	padding: 9px 12px 7px 12px;
	user-select: none;
}

.section-filter-clear {
	float: left;
	clear: none;
	cursor: pointer;
}

.section-filter-action {
	float: right;
	clear: none;
	cursor: pointer;
}

.section-filter-clear:hover,
.section-filter-action:hover {
	text-decoration: underline;
}


.section-filter-reset {
	width: 110px;
	height: 30px;
	font-family: var(--FontFamily), sans-serif;
	border: none;
	font-size: 14px;
	padding-top: 2px;
	color: var(--ButtonTextColour);
	background-color: var(--ButtonBackgroundColour);
	display: block;
	float: right;
	clear: none;
	cursor: pointer;
}

.section-filter-reset:hover {
	background-color: var(--ButtonHoverBackgroundColour);
	color: var(--ButtonHoverTextColour);
}

#section-filter-toggle {
	display: none;
}


/* SECTION PAGE TOTAl AND SORT */

#section-sort {
	width: 100%;
	overflow: auto;
	margin: 20px 0 0 0;
}

.section-sort-left {
	float: left;
	clear: none;
}

.section-sort-left p {
	font-size: 16px;
	margin: 0;
	line-height: 30px;
	padding-top: 2px;
}

.section-sort-right {
	float: right;
	clear: none;
	width: 280px;
	text-align: right;
}

.section-sort-right p {
	font-size: 15px;
	margin: 0;
	line-height: 30px;
	padding: 2px 8px 0 0;
	display: inline-block;
}

/* Customised <select> */

#section-sort-select {
	position: relative;
	width: 200px;
	height: 32px;
	margin: 0;
	display: inline-block;
}

#section-sort-select label {
	position: relative;
	border: 1px solid #e0e0e0;
	display: block;
	width: 100%;
	height: 30px;
	background-color: #ffffff;
	box-sizing: border-box;
	margin-top: 1px;
}

#section-sort-select label:after {
	font-family: FontAwesome;
	font-size: 16px;
	content: "\f078";
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	padding: 0 0 2px 1px;
	line-height: 28px;
	text-align: center;
	width: 30px;
	background-color: #e0e0e0;
	color: #000000;
	box-sizing: border-box;
}

#section-sort-select label select {
	display: block;
	position: relative;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	background-color: transparent;
	width: 100%;
	height: 30px;
	padding-left: 10px;
	padding-right: 30px;
	box-sizing: border-box;
	font-family: var(--FontFamily), sans-serif;
	font-size: 15px;
	line-height: 28px;
	color: #000000;
	z-index: 1;
}

#section-sort-select label select option {
	background-color: #ffffff;
	color: #000000;
}


/* PRODUCT PAGE */

#product-page {
	width: 1300px;
	margin: 25px auto 30px auto;
	overflow: auto;
	position: relative;
}


/* Product images */

#product-column1 {
	width: 520px;
	height: 600px;
	float: left;
	overflow: auto;
	font-size: 0;
	line-height: 0;
	position: relative;
}

#product-column1 .product-image {
	width: 400px;
	height: 600px;
	position: absolute;
	top: 0;
	right: 0;
}

#product-column1 .product-image .MagicZoom {
	width: 400px;
	height: 600px;
	border: 1px solid #e0e0e0;
}

#product-column1 .product-thumbnails {
	height: 570px;
	width: 102px;
	position: absolute;
	top: 15px;
	left: 0;
}

#product-column1 .MagicScroll {
	height: 570px;
	width: 102px;
}

#product-column1 .MagicScroll .product-thumbnail {
	display: block;
	height: 152px;
	width: 102px;
	margin: 9px 0;
	box-sizing: border-box;
	border: 1px solid #e0e0e0;
}

#product-column1 .MagicScroll img {
	box-shadow: none !important;
	height: 150px;
	width: 100px;
}

#product-column1 .product-overlay-new,
#product-column1 .product-overlay-sale {
	font-size: 18px;
	line-height: 1;
	user-select: none;
	color: #ffffff;
	position: absolute;
	top: 1px;
	left: 121px;
	padding: 8px 10px 4px 10px;
	z-index: 2;
}

#product-column1 .product-overlay-new {
	background-color: #000000;
}

#product-column1 .product-overlay-sale {
	background-color: #aa0000;
}

#product-column1 .product-overlay-offer {
	position: absolute;
	top: 1px;
	left: 121px;
	z-index: 2;
	width: 60px;
	height: 60px;
}

#product-column1 .product-overlay-percent {
    position: absolute;
    top: 1px;
    left: 121px;
    z-index: 2;
    width: 50px;
    height: 50px;
}

#product-column1 .product-overlay-round {
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 2;
	width: 140px;
	height: 140px;
}


/* Magic Zoom Plus overrides */

a[data-zoom-id] img,
.mz-thumb img {
	padding-bottom: 0 !important;
	border-bottom: 0 !important;
}

.mz-thumb.mz-thumb-selected img {
	filter: brightness(65%);
}


/* Product main section */

#product-column2b,
#product-column2a {
	float: right;
	clear: none;
	position: relative;
	height: auto;
	width: 750px;
	font-size: 0;
	overflow: visible;
}

/* Product name row */

#product-column2a {
	min-height: 60px;
}

#product-column2a #product-title {
	width: calc(100% - 140px);
	vertical-align: top;
}

#product-column2a  #product-title h1 {
	font-size: 22px;
}

#product-column2a  #product-title h2 {
	font-size: 18px;
	margin: 5px 0 0 0;
}

#product-column2a  #product-title p {
	display: block;
	font-size: 15px;
	margin: 20px 0;
}

#product-column2a .product-delivery {
	display: block;
	height: 50px;
	width: 122px;
	image-rendering: -webkit-optimize-contrast;
	position: absolute;
	top: 5px;
	right: 0;
}


/* Product multi-buy offer (desktop) */

#product-column2a .product-offer {
	margin-top: 20px;
	margin-bottom: 25px;
}

#product-column2a .product-offer img {
	width: 100%;
	max-width: 610px;
	height: auto;
}


/* Product prices */

#product-column2a .product-prices {
	width: 100%;
	text-align: left;
	line-height: 1.2;
	vertical-align: top;
	margin-top: 15px;
}

#product-column2a .product-prices p {
	font-size: 32px;
	font-weight: 600;
	margin: 0;
}

#product-column2a .product-prices .normal-price {
	padding-right: 20px;
	text-decoration: line-through;
	color: #555555;
	font-weight: 300;
	font-size: 32px;
}

#product-column2a .product-prices .our-price {
	color: #f15353;
}

#product-column2a .product-prices .our-price-black {
	color: #000000;
}

#product-column2a .product-prices .our-price-to {
	font-size: 24px;
}


/* Colour swatches */

#product-column2b .product-swatches {
	width: 100%;
	height: auto;
	overflow: auto;
	margin: 10px 0 15px 0;
}

#product-column2b .product-swatch {
	display: inline-block;
	float: left;
	clear: none;
	margin: 6px 6px 0 0;
}

#product-column2b .product-swatch a {
	border: 1px solid #000000;
	display: block;
	height: 36px;
	width: 36px;
	box-sizing: border-box;
	margin: 2px;
}

#product-column2b .product-swatch span {
	border: 4px solid #000000;
	display: block;
	height: 40px;
	width: 40px;
	box-sizing: border-box;
}

#product-column2b .product-swatch img {
	width: 100%;
	height: 100%;
}


/* Product delivery icon (mobile only) size guide link */

#product-column2b #product-extras .product-delivery {
	display: none;
}

#product-column2b #product-extras {
	display: inline-block;
	float: right;
	width: 150px;
	overflow: auto;
}

#product-column2b #product-extras .product-size-link {
	overflow: auto;
}

#product-column2b #product-extras .product-size-link a {
	display: inline-block;
	font-size: 18px;
	font-weight: 600;
	color: #000000;
	text-decoration: underline;
	text-align: center;
	line-height: 28px;
	box-sizing: border-box;
	float: right;
}

#product-column2b #product-extras .product-size-link a:hover {
	text-decoration: none;
}



/* Product basket */

#product-column2b #product-basket {
	display: inline-block;
	width: 100%;
	vertical-align: top;
	position: relative;
	margin-bottom: 20px;
}

#product-column2b #product-basket .product-basket-row {
	width: 100%;
	overflow: auto;
	padding: 10px 0;
}

#product-column2b #product-basket .product-basket-row .product-basket-title {
	width: 100%;
	box-sizing: border-box;
	line-height: 20px;
	font-size: 15px;
}

#product-column2b #product-basket .product-basket-row .product-basket-value {
	width: 100%;
	height: 30px;
	overflow: hidden;
	box-sizing: border-box;
}


/* Text input field */

#product-column2b #product-basket .product-basket-text {
	border: 1px solid #e0e0e0;
	display: block;
	width: 100%;
	height: 30px;
	box-sizing: border-box;
	font-family: var(--FontFamily), sans-serif;
	font-size: 15px;
	font-weight: 600;
	padding: 2px 10px 0 10px;
}

#product-column2b #product-basket .product-basket-text:focus {
	outline: none;
}



/* Customised <select> */

#product-column2b #product-basket .product-basket-select {
	position: relative;
	width: 100%;
	height: 32px;
	margin: 0;
}

#product-column2b #product-basket .product-basket-select label {
	position: relative;
	border: 1px solid #e0e0e0;
	display: block;
	width: 100%;
	height: 30px;
	background-color: #ffffff;
	box-sizing: border-box;
	margin-top: 1px;
}

#product-column2b #product-basket .product-basket-select label:after {
	font-family: FontAwesome;
	font-size: 16px;
	content: "\f078";
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	padding: 0 0 2px 1px;
	line-height: 28px;
	text-align: center;
	width: 30px;
	background-color: #e0e0e0;
	color: #000000;
	box-sizing: border-box;
}

#product-column2b #product-basket .product-basket-select label select {
	display: block;
	position: relative;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	background-color: transparent;
	width: 100%;
	height: 30px;
	padding-left: 10px;
	padding-right: 30px;
	box-sizing: border-box;
	font-family: var(--FontFamily), sans-serif;
	font-size: 15px;
	line-height: 28px;
	color: #000000;
	z-index: 1;
}

#product-column2b #product-basket .product-basket-select label select:disabled {
	color: #808080;
}

#product-column2b #product-basket .product-basket-select label select option {
	background-color: #ffffff;
	color: #000000;
}

#product-column2b #product-basket .product-basket-select label select option:disabled {
	color: #808080;
}


/* Container for quantity box and add to basket button */

#product-column2b #product-basket .product-basket-qty-add {
	height: 55px;
	margin-top: 10px;
}

#product-column2b #product-basket .product-basket-qty-add > span {
	color: #000000;
	font-size: 15px;
	line-height: 15px;
	display: inline-block;
	float: left;
}


/* Quantity box with +/- buttons */

#product-column2b #product-basket .product-basket-qty-add .product-qty {
	display: inline-block;
	width: 140px;
	position: relative;
	margin-top: 5px;
	float: left;
	clear: left;
}

#product-column2b #product-basket .product-basket-qty-add .product-qty .qty {
	position: absolute;
	top: 0;
	left: 30px;
	width: 70px;
	height: 30px;
	box-sizing: border-box;
	border: 1px solid #e0e0e0;
	padding: 0;
	margin: 0;
	-moz-appearance: textfield;
	font-family: var(--FontFamily), sans-serif;
	font-size: 16px;
	font-weight: 600;
	text-align: center;
	color: #000000;
}

#product-column2b #product-basket .product-basket-qty-add .product-qty .qty::-webkit-outer-spin-button,
#product-column2b #product-basket .product-basket-qty-add .product-qty .qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

#product-column2b #product-basket .product-basket-qty-add .product-qty .qty:focus {
	outline: none;
}

#product-column2b #product-basket .product-basket-qty-add .product-qty .qty-error {
	color: #dd0000
}

#product-column2b #product-basket .product-basket-qty-add .product-qty .minus,
#product-column2b #product-basket .product-basket-qty-add .product-qty .plus {
	position: absolute;
	width: 26px;
	height: 26px;
	padding: 1px 0 0 0;
	margin: 0;
	border: none;
	box-sizing: border-box;
	color: #000000;
	background-color: #e0e0e0;
	font-size: 16px;
	cursor: pointer;
}

#product-column2b #product-basket .product-basket-qty-add .product-qty .minus {
	top: 2px;
	left: 0;
}

#product-column2b #product-basket .product-basket-qty-add .product-qty .plus {
	top: 2px;
	left: 104px;
}

#product-column2b #product-basket .product-basket-qty-add .product-qty .minus:disabled,
#product-column2b #product-basket .product-basket-qty-add .product-qty .plus:disabled {
	color: #808080;
	background-color: #e0e0e0;
}


#product-column2b #product-basket .product-basket-qty-add .add-to-basket {
	font-family: var(--FontFamily), sans-serif;
	width: 250px;
	height: 40px;
	padding-top: 4px;
	box-sizing: border-box;
	background-color: var(--ButtonBackgroundColour);
	color: var(--ButtonTextColour);
	margin: 0 0 0 40px;
	border: 0;
	cursor: pointer;
	font-size: 20px;
	line-height: 16px;
	text-transform: uppercase;
	float: left;
	clear: none;
	font-weight: 600;
}

#product-column2b #product-basket .product-basket-qty-add .add-to-basket:hover {
	background-color: var(--ButtonHoverBackgroundColour);
	color: var(--ButtonHoverTextColour);
}


/* Product multi-buy offer (mobile) */

#product-column2b .product-offer {
	display: none;
}


/* Product bullet points */

#product-column2b #product-bullets {
	width: 100%;
	max-width: 750px;
	padding-top: 20px;
}

#product-column2b #product-bullets div {
	width: 100%;
	height: 24px;
	margin-bottom: 12px;
	display: flex;
	align-items: center;
	column-gap: 10px;
}

#product-column2b #product-bullets div svg {
	width: 24px;
	height: 24px;
}

#product-column2b #product-bullets div p {
	font-size: 16px;
	line-height: 21px;
	padding-top: 3px;
	margin: 0;
}

/* Product info dropdowns */

#product-column2b #product-dropdowns {
	width: 100%;
	max-width: 750px;
	padding-top: 30px;
	position: relative;
	overflow: auto;
	box-sizing: border-box;
}

#product-column2b #product-dropdowns .dropdown-content {
	padding-bottom: 10px;
}

#product-column2b #product-dropdowns .dropdown-content ul {
	margin: 5px 0 15px 0;
}

#product-column2b #product-dropdowns .dropdown-content ul li {
	padding-top: 3px;
	padding-bottom: 2px;
	line-height: 1.15;
}

#product-column2b #product-dropdowns .dropdown-content p {
	margin: 5px 0 15px 0;
	line-height: 1.3;
}

#product-column2b #product-dropdowns .dropdown-content h3 {
	margin-top: 20px;
}

#product-column2b #product-dropdowns .dropdown-content a {
	color: #000000;
	text-decoration: underline;
}

#product-column2b #product-dropdowns .dropdown-content a:hover {
	text-decoration: none;
}


/* Product sizes table */

#product-column2b #product-dropdowns .dropdown-content .product-table {
	border-collapse: collapse;
	font-size: 15px;
	margin-bottom: 15px;
}

#product-column2b #product-dropdowns .dropdown-content .product-table th {
	line-height: 1.6;
}

#product-column2b #product-dropdowns .dropdown-content .product-table td {
	border-top: 1px solid #d0d0d0;
	line-height: 1.6;
}

#product-column2b #product-dropdowns .dropdown-content .product-table .product-table-size {
	text-align: left;
	padding: 3px 50px 0 10px;
}

#product-column2b #product-dropdowns .dropdown-content .product-table .product-table-price {
	text-align: right;
	padding: 3px 10px 0 50px;
}

#product-column2b #product-dropdowns .dropdown-content .product-table .product-table-stock {
	text-align: center;
	padding: 3px 10px 0 50px;
}



/* Product eco/care icons */

#product-column2b #product-dropdowns .dropdown-content .product-eco {
	width: 100%;
	min-height: 60px;
	margin: 10px 0 20px 0;
	display: flex;
	align-items: center;
	column-gap: 10px;
}

#product-column2b #product-dropdowns .dropdown-content .product-eco span {
	display: block;
	width: 100px;
	min-height: 60px;
	flex: none;
	text-align: center;
}

#product-column2b #product-dropdowns .dropdown-content .product-eco span img {
	max-width: 90px;
	max-height: 60px;
}

#product-column2b #product-dropdowns .dropdown-content .product-eco p {
	margin: 0;
	font-size: 15px;
}




/* Product page suggestions */

.product-suggestions-container {
	width: 1300px;
	padding-top: 40px;
	box-sizing: border-box;
	font-size: 0;
	overflow: visible;
	clear: both;
}

.product-suggestions {
	overflow: visible;
	margin: 12px 0 20px 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, 230px);
	column-gap: 30px;
	row-gap: 70px;
	justify-content: space-between;
}


/* Product page bottom reviews */

#product-reviews {
	width: 100%;
	padding-top: 20px;
	clear: both;
}

#product-reviews > h2 {
	text-align: center;
}

#product-reviews > p {
	text-align: center;
}

#product-reviews .product-review {
	width: 100%;
	margin-top: 25px;
}

#product-reviews .product-review i {
	color: #ffc30f;
	font-size: 28px;
	padding-right: 6px;
}

#product-reviews .product-review p {
	font-size: 15px;
	margin-top: 7px;
}


/* CART PAGE */

.cart-page {
	width: 1300px;
	margin: 25px auto 0 auto;
	position: relative;
	overflow: visible;
}


.cart-sticky {
	width: 1300px;
	margin: 25px auto 0 auto;
	position: -webkit-sticky;
	position: sticky;
	top: 20px;
	z-index: 3;
	text-align: right;
	height: 0;
}

.cart-sticky .cart-sticky-inner {
	height: 45px;
	width: 320px;
	margin: 0;
	position: absolute;
	right: 0;
}

.cart-sticky form {
	height: 0;
	width: 0;
}

.cart-sticky .checkout {
	font-family: var(--FontFamily), sans-serif;
	width: 320px;
	height: 45px;
	box-sizing: border-box;
	background-color: var(--ButtonBackgroundColour);
	color: var(--ButtonTextColour);
	margin: 0;
	border: 0;
	cursor: pointer;
	font-size: 22px;
	padding-top: 4px;
	-webkit-appearance: none;
	text-transform: uppercase;
	font-weight: 600;
}

.cart-sticky .checkout:hover {
	background-color: var(--ButtonHoverBackgroundColour);
	color: var(--ButtonHoverTextColour);
}


/* Cart page title */

.cart-title {
	width: 100%;
	margin: 0 0 15px 0;
	box-sizing: border-box;
	float: left;
	clear: left;
}

.cart-title .error-text {
	text-align: left;
	margin: 0;
}

.cart-paypal {
	margin: 15px 0 5px 0;
}


/* Cart layout */

.cart-flex {
	display: flex;
	width: 1300px;
	margin: 0 auto;
	flex-direction: row-reverse;
	justify-content: space-between;
}

/* Cart product block */

.cart-block {
	width: 930px;
	height: 242px;
	position: relative;
	margin: 15px 0;
	float: left;
	clear: left;
}

.cart-block .cart-block-image {
	width: 160px;
	height: 240px;
	position: absolute;
	top: 0;
	left: 0;
	border: 1px solid #e0e0e0;
}

.cart-block .cart-block-overlay-new,
.cart-block .cart-block-overlay-sale {
	font-size: 12px;
	user-select: none;
	color: #ffffff;
	position: absolute;
	top: 1px;
	left: 1px;
	padding: 3px 6px 1px 6px;
}

.cart-block .cart-block-overlay-new {
	background-color: #000000;
}

.cart-block .cart-block-overlay-sale {
	background-color: #aa0000;
}

.cart-block .cart-block-overlay-offer {
	position: absolute;
	top: 1px;
	left: 1px;
	width: 40px;
	height: 40px;
}

.cart-block .cart-block-overlay-round {
	position: absolute;
	top: 10px;
	left: 92px;
	width: 60px;
	height: 60px;
}


/* Cart product block middle section */

.cart-block .cart-block-center {
	width: 570px;
	height: 240px;
	position: absolute;
	left: 180px;
}

.cart-block .cart-block-center h2 {
	margin: 0 0 20px 0;
	padding: 0;
	/*text-transform: uppercase;*/
	font-weight: 700;
	font-size: 20px;
	line-height: 1.2;
}

.cart-block .cart-block-center h2 a {
	color: #000000;
}

.cart-block .cart-block-center h2 a:hover {
	text-decoration: underline;
}

.cart-block .cart-block-center p {
	color: #000000;
	line-height: 1.2;
	font-weight: 600;
	margin: 0 0 8px 0;
	font-size: 0;
}

.cart-block .cart-block-center p .cart-block-center-label {
	display: inline-block;
	width: 120px;
	font-weight: 400;
	vertical-align: top;
	font-size: 16px;
}

.cart-block .cart-block-center p .cart-block-center-value {
	display: inline-block;
	width: calc(100% - 120px);
	vertical-align: top;
	font-size: 16px;
}

/* Cart product block right section */

.cart-block .cart-block-right {
	position: relative;
	width: 180px;
	height: 240px;
	text-align: right;
	float: right;
}

.cart-block .cart-block-right .cart-block-right-delivery {
	height: 41px;
	width: 100px;
	margin-top: 5px;
	margin-left: 50px;
}

.cart-block .cart-block-right .cart-block-right-options {
	display: block;
	position: absolute;
	top: 80px;
	right: 0;
	line-height: 1.7;
}

.cart-block .cart-block-right .cart-block-right-price {
	width: 85px;
	display: inline-block;
	font-weight: 600;
}

.cart-block .cart-block-right select {
	font-family: var(--FontFamily), sans-serif;
	box-sizing: border-box;
	padding: 2px 0 0 3px;
	width: 65px;
	height: 40px;
	border: 1px solid #d0d0d0;
	background-color: #f8f8f8;
	margin: 0 0 8px 20px;
	font-size: 15px;
	cursor: pointer;
}

.cart-block .cart-block-right select option {
	font-family: Arial, Helvetica, sans-serif;
	background-color: #f8f8f8;
}

.cart-block .cart-block-right .cart-block-right-remove {
	height: 30px;
	width: 30px;
	border-radius: 10px;
	bottom: 20px;
	right: 0;
	position: absolute;
	cursor: pointer;
}

.cart-block .cart-block-right .cart-block-right-remove:hover {
	background-color: #d0d0d0;
}


/* Cart product quantity box with +/- buttons */

.cart-block .cart-block-qty {
	width: 79px;
	height: 24px;
	position: relative;
	display: inline-block;
	float: right;
	margin: 0 0 15px 10px;
}

.cart-block .cart-block-qty .qty {
	position: absolute;
	top: 0;
	left: 23px;
	width: 32px;
	height: 24px;
	box-sizing: border-box;
	border: 1px solid #e0e0e0;
	padding: 2px 0 0 0;
	margin: 0;
	-moz-appearance: textfield;
	font-family: var(--FontFamily), sans-serif;
	font-size: 15px;
	font-weight: 600;
	text-align: center;
	color: #000000;
}

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

.cart-block .cart-block-qty .qty:focus {
	outline: none;
}

.cart-block .cart-block-qty .qty-error {
	color: #dd0000;
}

.cart-block .cart-block-qty .minus,
.cart-block .cart-block-qty .plus {
	position: absolute;
	width: 20px;
	height: 20px;
	padding: 0;
	margin: 0;
	border: none;
	box-sizing: border-box;
	color: #000000;
	background-color: #e0e0e0;
	font-size: 12px;
	cursor: pointer;
}

.cart-block .cart-block-qty .minus {
	top: 2px;
	left: 0;
}

.cart-block .cart-block-qty .plus {
	top: 2px;
	left: 58px;
}

.cart-block .cart-block-qty .minus:disabled,
.cart-block .cart-block-qty .plus:disabled {
	color: #808080;
	background-color: #e0e0e0;
}


/* Promo banner */

.cart-banner {
	width: 930px;
	overflow: auto;
	margin: 10px 0 15px 0;
	float: left;
	clear: left;
	font-size: 0;
}

.cart-banner a {
	font-size: 0;
}

.cart-banner img {
	width: 100%;
	image-rendering: high-quality;
}

/* Delivery info boxes */

.cart-info {
	width: 930px;
    padding: 6px 20px;
    margin: 10px 0;
	box-sizing: border-box;
	border: 1px solid #d0d0d0;
	float: left;
	clear: left;
	font-size: 15px;
}


/* Cart sidebar */

.cart-sidebar {
	box-sizing: border-box;
	width: 320px;
	padding-bottom: 20px;
	padding-top: 5px;
}

.cart-sidebar h2 {
	margin-bottom: 0;
}

.cart-sidebar label {
	margin: 25px 0 2px 0;
	display: block;
}

.cart-sidebar select {
	font-family: var(--FontFamily), sans-serif;
	width: 100%;
	box-sizing: border-box;
	height: 40px;
	padding: 2px 0 0 3px;
	font-size: 15px;
	border: 1px solid #d0d0d0;
	background-color: #f8f8f8;
	cursor: pointer;
}

.cart-sidebar select option {
	font-family: Arial, Helvetica, sans-serif;
	background-color: #f8f8f8;
}

.cart-sidebar .offercode p {
	display: block;
	clear: both;
	text-align: left;
}

.cart-sidebar .offercode input[type="text"],
.cart-sidebar .offercode input[type="number"] {
	font-family: var(--FontFamily), sans-serif;
	width: 60%;
	height: 40px;
	box-sizing: border-box;
	padding: 2px 10px 0 10px;
	border: 1px solid #d0d0d0;
	background-color: #ffffff;
	float: left;
	font-size: 15px;
	text-transform: uppercase;
	margin-bottom: 10px;
}

.cart-sidebar .offercode input[type="text"]:focus,
.cart-sidebar .offercode input[type="text"]:active,
.cart-sidebar .offercode input[type="number"]:focus,
.cart-sidebar .offercode input[type="number"]:active {
	outline: none;
}

.cart-sidebar .offercode input[type="number"]::-webkit-outer-spin-button,
.cart-sidebar .offercode input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.cart-sidebar .offercode input[type="number"] {
    -moz-appearance: textfield;
}

.cart-sidebar .offercode input[type="submit"] {
	font-family: var(--FontFamily), sans-serif;
	font-size: 16px;
	text-transform: uppercase;
	width: 35%;
	height: 40px;
	box-sizing: border-box;
	background-color: var(--ButtonBackgroundColour);
	color: var(--ButtonTextColour);
	padding: 2px 0 0 0;
	margin: 0 0 10px 5%;
	border: 0;
	cursor: pointer;
	float: left;
	-webkit-appearance: none;
}

.cart-sidebar .offercode input[type="submit"]:hover {
	background-color: var(--ButtonHoverBackgroundColour);
	color: var(--ButtonHoverTextColour);
}

.cart-sidebar .offercode .code {
	line-height: 40px;
	display: inline-block;
	border: 1px solid #d0d0d0;
	background-color: #f8f8f8;
	width: 60%;
	box-sizing: border-box;
	padding: 0 10px;
	color: #777;
	font-weight: 300;
}

.cart-sidebar .offercode .remove {
	height: 30px;
	width: 30px;
	border-radius: 10px;
	margin: 5px 0;
	float: right;
}

.cart-sidebar .offercode .remove:hover {
	background-color: #d0d0d0;
}

.cart-sidebar .cart-prices {
	margin: 30px 0 20px 0;
}

.cart-sidebar p {
	margin: 4px 0;
	text-align: left;
	display: block;
}

.cart-sidebar p .price {
	display: inline-block;
	float: right;
}

.cart-sidebar p.delivery {
	padding-bottom: 10px;
}

.cart-sidebar p.total {
	padding: 10px 0;
	font-size: 18px;
	font-weight: 600;
}

.cart-sidebar .continue {
	font-family: var(--FontFamily), sans-serif;
	font-size: 15px;
	text-transform: uppercase;
	width: 100%;
	height: 28px;
	box-sizing: border-box;
	background-color: var(--ButtonBackgroundColour);
	color: var(--ButtonTextColour);
	padding: 2px 0 0 0;
	margin: 70px 0 0 0;
	border: 0;
	cursor: pointer;
	-webkit-appearance: none;
}

.cart-sidebar .continue:hover {
	background-color: var(--ButtonHoverBackgroundColour);
	color: var(--ButtonHoverTextColour);
}


/* CHECKOUT PAGES */

/* Checkout sticky submit button */

.checkout-sticky {
	width: 1300px;
	margin: 0 auto;
	position: -webkit-sticky;
	position: sticky;
	top: -190px;
	z-index: 3;
	text-align: right;
	height: 0;
}

.checkout-sticky .checkout-sticky-inner {
	height: 45px;
	width: 300px;
	margin: 210px 0 0 0;
	position: absolute;
	right: 0;
}

.checkout-sticky input[type="submit"] {
	font-family: var(--FontFamily), sans-serif;
	width: 300px;
	height: 45px;
	box-sizing: border-box;
	background-color: var(--ButtonBackgroundColour);
	color: var(--ButtonTextColour);
	padding: 4px 0 0 0;
	display: block;
	border: 0;
	cursor: pointer;
	font-size: 22px;
	font-weight: 600;
	-webkit-appearance: none;
	text-transform: uppercase;
	float: right;
}

.checkout-sticky input[type="submit"]:hover {
	background-color: var(--ButtonHoverBackgroundColour);
	color: var(--ButtonHoverTextColour);
}

#checkout-sticky-anchor {
	height: 0;
	width: 0;
}


.checkout-page {
	width: 1300px;
	margin: 25px auto 0 auto;
	position: relative;
	overflow: auto;
}

.checkout-page h2 {
	margin: 20px 0 30px 0;
	font-size: 22px;
}

.checkout-page a {
	color: #000000;
	font-weight: 600;
}

.checkout-page a:hover {
	color: #000000;
	text-decoration: underline;
}


/* Form elements */

.checkout-page .checkout-form-row {
	overflow: auto;
	margin-bottom: 25px;
}

.checkout-page label {
    display: block;
	float: left;
	line-height: 40px;
}

.checkout-page label.multi-line {
	max-width: calc(100% - 410px);
	line-height: 20px;
}

.checkout-page .checkout-form-radio {
	overflow: auto;
	box-sizing: border-box;
	padding-left: 260px;
}

.checkout-page .checkout-form-radio label {
	float: none;
	clear: none;
	display: inline;
	line-height: 36px;
	padding-left: 12px;
}



.checkout-page .checkout-form-options {
	display: flex;
	justify-content: center;
	gap: 20px;
	width: 100%;
}

.checkout-page .checkout-form-options button {
	font-family: var(--FontFamily), sans-serif;
	font-size: 15px;
	border: 1px solid #cccccc;
	background-color: #e8e8e8;
	padding: 2px 20px 0 20px;
	height: 60px;
	width: 200px;
	box-sizing: border-box;
	cursor: pointer;
	flex-shrink: 0;
}

.checkout-page .checkout-form-options button.selected {
	background-color: #b0e1ff;
}

.checkout-page .checkout-form-options input[type="radio"] {
	display: none;
}




.checkout-page textarea {
	font-family: var(--FontFamily), sans-serif;
	background-color: #ffffff;
	border: 1px solid #d0d0d0;
	height: 100px;
	width: 400px;
	box-sizing: border-box;
	padding: 10px;
	float: right;
	font-size: 13px;
	resize: none;
}

.checkout-page input[type="text"],
.checkout-page input[type="password"],
.checkout-page input[type="number"],
.checkout-page input[type="email"],
.checkout-page input[type="tel"],
.checkout-page select {
	font-family: var(--FontFamily), sans-serif;
	background-color: #ffffff;
	border: 1px solid #d0d0d0;
	height: 40px;
	width: 400px;
	box-sizing: border-box;
	padding: 5px 10px;
	float: right;
}

.checkout-page select option {
	font-family: Arial, Helvetica, sans-serif;
	background-color: #f8f8f8;
}

.checkout-page input[type="number"]::-webkit-outer-spin-button,
.checkout-page input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.checkout-page input[type="number"] {
    -moz-appearance: textfield;
}

.checkout-page input.disabled {
	color: #606060;
	user-select: none;
}

/* Customised <select> */

.checkout-page .checkout-form-select {
	display: inline-block;
	float: right;
	position: relative;
	width: 400px;
	height: 42px;
	margin: 0;
}

.checkout-page .checkout-form-select label {
	position: relative;
	border: 1px solid #d0d0d0;
	display: block;
	width: 100%;
	height: 40px;
	background-color: #ffffff;
	box-sizing: border-box;
}

.checkout-page .checkout-form-select label:after {
	font-family: FontAwesome;
	font-size: 16px;
	content: "\f078";
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	padding: 0 0 2px 1px;
	line-height: 38px;
	text-align: center;
	width: 30px;
	background-color: #d0d0d0;
	color: #000000;
	box-sizing: border-box;
}

.checkout-page .checkout-form-select label select {
	display: block;
	position: relative;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	background-color: transparent;
	width: 100%;
	height: 40px;
	padding-left: 10px;
	padding-right: 30px;
	box-sizing: border-box;
	font-family: var(--FontFamily), sans-serif;
	line-height: 30px;
	color: #000000;
	z-index: 1;
}

.checkout-page .checkout-form-select label select option {
	background-color: #ffffff;
	color: #000000;
}



.checkout-page input[type="radio"] {
	margin: 0;
}

.checkout-page input[type="submit"] {
	font-family: var(--FontFamily), sans-serif;
	width: 350px;
	height: 45px;
	box-sizing: border-box;
	background-color: var(--ButtonBackgroundColour);
	color: var(--ButtonTextColour);
	padding: 4px 0 0 0;
	display: block;
	margin: 35px auto 0 auto;
	border: 0;
	cursor: pointer;
	font-size: 22px;
	font-weight: 600;
	-webkit-appearance: none;
	text-transform: uppercase;
}

.checkout-page input[type="submit"]:hover {
	background-color: var(--ButtonHoverBackgroundColour);
	color: var(--ButtonHoverTextColour);
}

.checkout-page input[type="button"] {
	font-family: var(--FontFamily), sans-serif;
	width: 250px;
	height: 35px;
	box-sizing: border-box;
	background-color: var(--ButtonBackgroundColour);
	color: var(--ButtonTextColour);
	padding: 3px 0 0 0;
	display: block;
	margin: 25px auto 0 auto;
	border: 0;
	cursor: pointer;
	font-size: 16px;
	-webkit-appearance: none;
	text-transform: uppercase;
}

.checkout-page input[type="button"]:hover {
	background-color: var(--ButtonHoverBackgroundColour);
	color: var(--ButtonHoverTextColour);
}

/* captcha on checkout step 4 */
.checkout-page .checkout-form-captcha {
	width: 100%;
	min-height: 78px;
}

.checkout-page .checkout-form-captcha .g-recaptcha {
	margin: 0 auto;
	width: 304px;
}

.checkout-page .checkout-form-captcha .checkout-error {
	text-align: center;
	float: none;
}


/* Form misc */

.checkout-empty-row {
	height: 65px;
}

.checkout-error {
	float: right;
	clear: both;
	text-align: right;
	line-height: normal;
	color: #dd0000;
	margin: 4px 0 0 0;
}

.checkout-note {
	float: right;
	clear: both;
	line-height: normal;
	color: #606060;
	margin: 4px 0 0 0;
	font-style: italic;
	font-weight: 300;
}

.checkout-uppercase {
	text-transform: uppercase;
}

.checkout-checkbox {
	margin-bottom: 20px;
}

.checkout-checkbox label {
	clear: none;
	float: none;
	display: inline-block;
}


/* Page title */
.checkout-title {
	width: 100%;
	box-sizing: border-box;
	margin: 0;
}

.checkout-title h2 {
	text-transform: uppercase;
	font-size: 28px;
	margin-top: 0;
}


/* Progress Bar */
.checkout-progress {
	width: 100%;
	padding: 14px 0 10px 0;
	box-sizing: border-box;
	border: 1px solid #d0d0d0;
	margin: 20px 0 15px 0;
	text-align: center;
	/*text-transform: uppercase;*/
}

.checkout-progress h2 {
	font-size: 20px;
	margin: 0;
	color: #000;
}

.checkout-progress h2 .grey {
	color: #a0a0a0;
}

.checkout-message-box {
	width: 100%;
	box-sizing: border-box;
	margin: 0 0 10px 0;
	clear: both;
	overflow: auto;
	position: relative;
}

.checkout-message-box input[type="submit"] {
	margin: 10px 0 20px 0;
	float: right;
}


/* Overall container for checkout sections (full, half and third) */

.checkout-sections {
	width: 100%;
	overflow: auto;
}

.checkout-sections p {
	margin-bottom: 25px;
}

.checkout-sections a {
	color: #000000;
	font-weight: 600;
}

.checkout-sections ul {
	margin-top: -10px;
	margin-bottom: 0;
}


/* Full width checkout section (must be within checkout-sections) */

.checkout-section-full {
	overflow: auto;
	width: 100%;
	box-sizing: border-box;
	float: left;
	padding: 10px 0 20px 0;
}

.checkout-section-full input[type="checkbox"] {
	margin-right: 10px;
}

.checkout-section-full input[type="submit"] {
	float: right;
	margin: 20px 0 20px 0;
}

.checkout-section-full .checkout-postal-address {
	color: #000000;
	padding: 10px 0 10px 60px;
	font-weight: 600;
}

.checkout-section-full .checkout-form-row {
	width: 50%;
	max-width: 520px;
	margin: 0 auto;
}


/* Half width checkout section (must use a pair and must be within checkout-sections) */

.checkout-section-half {
	overflow: auto;
	width: 50%;
	box-sizing: border-box;
	float: left;
	padding: 10px 0 20px 0;
}

.checkout-section-half:nth-child(odd) {
	padding-right: 40px;
}

.checkout-section-half:nth-child(even) {
	padding-left: 40px;
}

.checkout-section-half input[type="checkbox"] {
	margin-right: 10px;
}

.checkout-section-half-notice {
	font-weight: 700;
	font-size: 20px;
	text-align: center;
	text-transform: uppercase;
	color: #dd0000;
}


/* Third width checkout section (must use three and must be within checkout-sections) */

.checkout-section-third-container {
	display: flex;
	flex-direction: row;
}

.checkout-section-third {
	overflow: auto;
	width: 33%;
	box-sizing: border-box;
	float: left;
	padding: 10px 0;
	text-align: center;
	position: relative;
}

.checkout-section-third:nth-child(3n+2) {
	width: 34%;
}

.checkout-section-third p {
	font-size: 15px;
	margin-bottom: 60px;
}

.checkout-section-third input[type="button"] {
	position: absolute;
	bottom: 10px;
	left: 0;
	right: 0;
}

.checkout-section-third input[type="submit"] {
	position: absolute;
	bottom: 60px;
	left: 0;
	right: 0;
	width: 250px;
	height: 35px;
	font-size: 16px;
}

/* 50% wide centered single checkout section (must be within checkout-sections) */

.checkout-section-centre {
	overflow: auto;
	width: 50%;
	box-sizing: border-box;
	padding: 10px 0;
	margin: 0 25%;
}


/* Full width checkout section for containing tables that will horizontal scroll on mobile devices */

.checkout-section-table {
	overflow: auto;
	width: 100%;
	box-sizing: border-box;
	float: left;
	padding: 10px 0 20px 0;
}


/* Spacers within checkout sections */

.checkout-section-spacer {
	width: 100%;
	height: 30px;
}

.checkout-section-spacer-small {
	width: 100%;
	height: 5px;
}

.checkout-section-spacer-large {
	width: 100%;
	height: 100px;
	clear: both;
}


/* Extra class to remove bottom padding */

.checkout-section-no-padding {
	padding-bottom: 0 !important;
}

.checkout-section-no-padding p {
	margin-bottom: 15px !important;
}


/* Checkout donation */

.checkout-donation-info {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	width: 100%;
	margin-bottom: 10px;
}

.checkout-donation-info img {
	height: 220px;
	width: 265px;
	margin: 0 0 20px 20px;
}


/* Cart for checkout, customer order page and order tracking page  */

.checkout-cart {
	width: 100%;
	/*overflow: auto;*/
	padding-top: 20px;
}

.checkout-cart-product {
	width: 850px;
	float: left;
	clear: none;
	/*height: 182px;*/
	margin-bottom: 25px;
	position: relative;
	min-height: 182px;
}

.checkout-cart-product img {
	width: 120px;
	height: 180px;
	position: absolute;
	left: 0;
	top: 0;
	border: 1px solid #e0e0e0;
}

.checkout-cart-product-overlay-new,
.checkout-cart-product-overlay-sale {
	font-size: 11px;
	user-select: none;
	color: #ffffff;
	position: absolute;
	top: 1px;
	left: 1px;
	padding: 3px 5px 1px 5px;
}

.checkout-cart-product-overlay-new {
	background-color: #000000;
}

.checkout-cart-product-overlay-sale {
	background-color: #aa0000;
}

.checkout-cart-product-overlay-offer {
	width: 36px !important;
	height: 36px !important;
}

.checkout-cart-product-overlay-round {
	width: 45px !important;
	height: 45px !important;
	border: none !important;
	top: 8px !important;
	left: 70px !important;
}

.checkout-cart-product .checkout-cart-product-info {
	/*
	position: absolute;
	left: 140px;
	top: 0;
	height: 180px;
	 */
	min-height: 180px;
	margin-left: 140px;
	width: calc(100% - 300px);
}

.checkout-cart-product .checkout-cart-product-info h3 {
	margin: 0 0 5px 0;
	font-size: 22px;
}

.checkout-cart-product .checkout-cart-product-info p {
	font-weight: 600;
	margin: 0;
	font-size: 0;
}

.checkout-cart-product .checkout-cart-product-info p .checkout-cart-product-label {
	display: inline-block;
	vertical-align: top;
	width: 120px;
	font-size: 14px;
	line-height: 19px;
	font-weight: 400;
}

.checkout-cart-product .checkout-cart-product-info p .checkout-cart-product-value {
	display: inline-block;
	vertical-align: top;
	width: calc(100% - 140px);
	font-size: 14px;
	line-height: 19px;
}

.checkout-cart-right {
	width: 420px;
	float: right;
	clear: none;
}

.checkout-cart-right h2 {
	margin: 0 0 25px 0;
}

.checkout-cart-right p {
	margin: 0;
	display: block;
	width: 100%;
	height: 32px;
}

.checkout-cart-right p.checkout-cart-total {
	font-weight: 700;
	/*text-transform: uppercase;*/
	font-size: 18px;
	margin-top: 10px;
}

.checkout-cart-right p .checkout-cart-right-label {
	display: block;
	float: left;
	clear: none;
}

.checkout-cart-right p .checkout-cart-right-value {
	display: block;
	float: right;
	clear: none;
}


/* Account creation block (JQuery controlled) */
#checkout-account-block1,
#checkout-account-block2 {
	display: none;
}

.checkout-paypal {
	margin: 25px auto 5px auto;
}

/* PayPal buttons container */
#paypal-button-container {
	margin: 20px auto;
	text-align: center;
}

#paypal-button-container p {
	text-align: center;
	font-size: 18px;
}


/* CUSTOMER ACCOUNT PAGES */

.account-options h3 {
	text-align: center;
}

.account-options input[type="button"] {
	margin-top: 15px;
	width: 300px;
}


/* Customer order history */

.checkout-section-third p.customer-history {
	font-size: 0;
}

.customer-history-label {
	display: inline-block;
	width: 45%;
	text-align: right;
	font-size: 15px;
	vertical-align: top;
	padding-right: 10px;
	box-sizing: border-box;
}

.customer-history-value {
	display: inline-block;
	width: 55%;
	text-align: left;
	font-size: 15px;
	vertical-align: top;
}


/* Table in customer sections, to be contained in .checkout-section-table for horizontal scrolling */

.customer-table {
	width: 100%;
}

.customer-table th {
	text-align: left;
	padding: 5px 2px;
	vertical-align: bottom;
}

.customer-table td {
	padding: 5px 2px;
	vertical-align: top;
}

.customer-table .customer-table-right {
	text-align: right;
}

.customer-table .customer-table-action {
	width: 250px;
	text-align: right;
}

.customer-table .customer-table-action input {
	margin-top: 0;
	margin-bottom: 0;
}


/* Bulleted list in customer sections */

.customer-list {
	list-style: none;
	margin-bottom: 30px;
}

.customer-list li {
	line-height: 30px;
}



/* INFORMATION PAGES */
#info-page {
	width: 1300px;
	box-sizing: border-box;
	margin: 25px auto 0 auto;
}

#info-page h3 {
	margin-top: 20px;
	font-size: 17px;
}

#info-page p {
	margin: 15px 0;
}

#info-page p img {
	vertical-align: middle;
	padding: 0 5px;
}

#info-page a {
	color: #000000;
	font-weight: 600;
	text-decoration: underline;
}

#info-page a:hover {
	text-decoration: none;
}


#info-page li {
	padding-top: 6px;
	padding-bottom: 6px;
}

#info-page li ul {
	padding-top: 10px;
	padding-bottom: 10px;
}

#info-page li ul li {
	padding-top: 2px;
	padding-bottom: 2px;
}


#info-page .sitemap-column {
	width: calc(100% / 3);
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
	padding-right: 20px;
}

#info-page .sitemap-column a {
	text-decoration: none;
}

#info-page .sitemap-column a:hover {
	text-decoration: underline;
}

#info-page .sitemap-column ul {
	margin-left: 0;
	padding-left: 0;
	padding-top: 8px;
}

#info-page .sitemap-column > ul {
	padding-top: 0;
}

#info-page .sitemap-brand {
	font-size: 20px;
	padding-top: 15px;
	list-style: none;
}

#info-page .sitemap-section {
	font-size: 15px;
	text-transform: none;
	padding-top: 10px;
	margin-left: 20px;
}

#info-page .sitemap-product {
	font-size: 13px;
	text-transform: none;
	margin-left: 20px;
	padding-bottom: 4px;
	line-height: 1.2;
}

#info-page .sitemap-product a {
	font-weight: normal;
}



#info-page .help-list {
	padding-bottom: 10px;
	margin-top: -5px;
}


#info-page .help-list li {
	padding-top: 12px;
	padding-bottom: 0;
}

#info-page .help-list li img {
	margin: 0 5px -6px 5px;
	width: 60px;
	height: 25px;
}



#info-page .link-list {
	margin: 10px 0 30px 40px;
	padding: 0;
	list-style: none;
}

#info-page .link-list li {
	padding: 8px 0;
}

#info-page .link-list .link-list-title {
	display: inline-block;
	width: 350px;
	vertical-align: top;
	font-weight: 600;
}

#info-page .link-list .link-list-info {
	display: inline-block;
	vertical-align: top;
}

#info-page .link-list .link-list-note {
	font-size: 14px;
	font-weight: 300;
}

#info-page .link {
	text-align:	center;
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 20px;
}

/* Last updated date */
#info-page .updated {
	font-style: italic;
	text-align: right;
}


/* Loyalty info table */
#info-page .loyalty-table {
	box-sizing: border-box;
	border-collapse: collapse;
	border: 1px solid #b0b0b0;
	table-layout: fixed;
	width: 500px;
	margin: 20px auto 30px auto;
}

#info-page .loyalty-table th {
	border-collapse: collapse;
	border: 1px solid #b0b0b0;
	height: 32px;
	text-align: center;
	font-weight: 600;
}

#info-page .loyalty-table td {
	border-collapse: collapse;
	border: 1px solid #b0b0b0;
	height: 32px;
	text-align: center;
}


/* History pages */

#info-page.info-page-history img {
	width: 800px;
	margin: 30px auto;
	display: block;
}

#info-page.info-page-history .historycredits li {
	padding-top: 3px;
	padding-bottom: 3px;
}

#info-page.info-page-history .historylink {
	text-align: center;
	margin-bottom: 40px;
}


/* Sustainable page */

#info-page.info-page-sustainable h1 {
	margin-bottom: 20px;
}

#info-page.info-page-sustainable img {
	width: 1000px;
	margin: 15px auto 30px auto;
	display: block;
}


/* Awards */


.info-page-awards .dropdown-content {
	padding-bottom: 20px;
}

.award-image {
	width: 100%;
	text-align: center;
	font-size: 10px;
}

.award-image img {
	text-align: center;
	max-width: 800px;
	max-height: 240px;
	margin: 20px auto;
	border: 1px solid #d0d0d0;
}

.award-text {
	line-height: 1.5;
	padding-bottom: 1px;
	font-style: italic;
}

.award-text strong {
	font-style: normal;
}



/* Measuring Guide */

#info-page.info-page-measuring > a {
	width: 920px;
	height: 650px;
	margin: 30px auto;
	display: block;
}

#info-page.info-page-measuring > video {
	width: 920px;
	height: 518px;
	margin: 30px auto 40px auto;
	display: block;
}


/* Images on info pages */

.info-image {
	width: 100%;
	margin: 30px auto 20px auto;
}

.info-image img {
	margin: 0 auto;
	max-width: 100%;
	width: auto;
	height: auto;
	display: block;
}


/* Cost page */

.info-page-cost .dropdown-content img {
	width: 800px;
	margin: 10px auto 30px auto;
	display: block;
}


/* Giving Back page */

.info-page-giving-back .dropdown-content {
	padding-bottom: 25px;
}

.info-page-giving-back .dropdown-content img {
	width: auto;
	max-width: 1300px;
	margin: 25px auto;
	display: block;
}



/* Specific info page tweaks */

#info-page.info-page-loyalty .dropdown-content {
	padding-bottom: 20px;
}

#info-page.info-page-loyalty > p {
	padding: 5px 0 10px 0;
	font-size: 18px;
	font-weight: 600;
}


/* Reviews page */

#info-page.info-page-reviews > .trustpilot {
	margin: 30px 0;
}

#info-page.info-page-reviews > p {
	text-align: center;

}

#info-page #reviews {
	width: 100%;
	margin-top: 20px;
}

#info-page #reviews .review {
	width: calc((100% / 3) - (20px / 3 * 2));
	padding: 3px 15px;
	border: 2px solid #d0d0d0;
	border-radius: 10px;
	margin-bottom: 20px;
	box-sizing: border-box;
	text-align: left;
	white-space: normal;
	line-height: normal;
	user-select: none;
}

#info-page #reviews .review .review-stars img {
	width: 20px;
	margin-right: 2px;
}

#info-page #reviews .review h2 {
	font-size: 16px;
	margin: 10px 0 5px 0;
}

#info-page #reviews .review p {
	font-size: 14px;
	margin: 5px 0 10px 0;
}


/* Loyalty sticky submit button */

.loyalty-sticky {
	position: -webkit-sticky;
	position: sticky;
	top: -360px;
	z-index: 3;
	width: 1300px;
	margin: 0 auto;
	text-align: right;
	height: 0;
}

.loyalty-sticky .loyalty-sticky-inner {
	height: 45px;
	width: 300px;
	margin: 380px 0 0 0;
	position: absolute;
	right: 0;
}

.loyalty-sticky input[type="submit"] {
	font-family: var(--FontFamily), sans-serif;
	width: 300px;
	height: 45px;
	box-sizing: border-box;
	background-color: var(--ButtonBackgroundColour);
	color: var(--ButtonTextColour);
	padding: 4px 0 0 0;
	display: block;
	border: 0;
	cursor: pointer;
	font-size: 22px;
	font-weight: 600;
	-webkit-appearance: none;
	text-transform: uppercase;
	float: right;
}

.loyalty-sticky input[type="submit"]:hover {
	background-color: var(--ButtonHoverBackgroundColour);
	color: var(--ButtonHoverTextColour);
}

#loyalty-sticky-anchor {
	height: 75px;
	width: 100%;
}


#info-page.info-page-legal h1 {
	margin-bottom: 15px;
}

#info-page.info-page-legal > .updated {
	padding-bottom: 10px;
}

#info-page.info-page-legal .dropdown-content {
	padding-bottom: 15px;
}

#info-page.info-page-legal .dropdown-content ul {
	margin-top: 10px;
}

#info-page.info-page-legal .dropdown-content ul li {
	padding-top: 2px;
	padding-bottom: 2px;
}

#info-page.info-page-legal .dropdown-content p {
	margin-top: 10px;
}


/* DROPDOWN SECTIONS */

.dropdown-section {
	width: 100%;
	border-top: 1px solid #e0e0e0;
}

.dropdown-section:last-child {
	border-bottom: 1px solid #e0e0e0;
}


.dropdown-title {
	width: 100%;
	height: auto;
	min-height: 36px;
	font-size: 18px;
	font-weight: 600;
	line-height: 32px;
	padding: 6px 0 2px 0;
	box-sizing: border-box;
	margin: 8px 0;
	cursor: pointer;
	position: relative;
	user-select: none;
}

.dropdown-title h2 {
	font-size: 18px;
	font-weight: 600;
	line-height: 32px;
	margin: 0;
	padding-right: 65px;
}

.dropdown-title:hover {
	background-color: #e0e0e0;
}

.dropdown-title .dropdown-icon {
	width: 24px;
	height: 40px;
	right: 0;
	top: 0;
	position: absolute;
	transition: transform 400ms;
	-o-transition: transform 400ms;
	-moz-transition: transform 400ms;
	-webkit-transition: transform 400ms;
}

.dropdown-title .dropdown-icon:after {
	font-family: FontAwesome;
	font-weight: 300;
	font-size: 36px;
	content: "\f107";
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	line-height: 40px;
	text-align: center;
	width: 24px;
	box-sizing: border-box;
}

.dropdown-title.selected .dropdown-icon {
	transform: scaleY(-1);
	-o-transform: scaleY(-1);
	-moz-transform: scaleY(-1);
	-webkit-transform: scaleY(-1);
}


.dropdown-content {
	width: 100%;
	overflow: visible;
	display: none;
	padding: 0.01% 0;
}

.dropdown-content p,
.dropdown-content li {
	font-size: 16px;
}

.dropdown-content.selected {
	display: block;
}


/* ADD TO ANY ICONS */

.a2a_default_style {
	max-width: 352px;
	margin: 20px auto;
}

.a2a_default_style > a {
	margin-bottom: 4px;
}


/* SURVEY */

.surveyform {
	border-collapse: collapse;
	border: 1px solid #bbb;
	margin: 30px 0;
}

.surveyform th {
	border-collapse: collapse;
	border: 1px solid #bbb;
	text-align: left;
	width: 45%;
	vertical-align: top;
	padding: 12px 15px;
	line-height: 1.4;
}

.surveyform td {
	border-collapse: collapse;
	border: 1px solid #bbb;
	width: 55%;
	padding: 12px 0;
}

.surveyform td label {
	width: auto;
	line-height: 28px;
	clear: left;
}

.surveyform td input[type="radio"] {
	margin: 0 8px 0 20px;
}

.surveyform td input[type="checkbox"] {
	margin: 8px 8px 8px 20px;
}

.surveyform td input[type="text"],
.surveyform td textarea {
	float: left;
	clear: left;
	margin-left: 15px;
	width: calc(100% - 30px);
}

.surveyform td input[type="text"] {
	margin-top: 10px;
}

.surveyform td textarea {
	resize: none;
}


/* MEET THE TEAM */

.teamdiv {
	width: 100%;
	margin-top: 30px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.teamdiv:nth-child(odd) {
	flex-direction: row-reverse;
}

.teamdiv .teamphoto {
	width: 260px;
	height: 260px;
	font-size: 0;
}

.teamdiv .teamphoto img {
	width: 260px;
	height: 260px;
	border-radius: 130px;
}

.teamdiv .teambio {
	width: 1000px;
}

#info-page .teamdiv .teambio h2 {
	margin-top: 10px;
}

.teamdiv .teambio a {
	color: #000000;
}


/* SUSTAINABILITY ICONS PAGE */

.sustaindiv {
	width: 100%;
	margin-top: 30px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.sustaindiv .sustainicon {
	width: 150px;
	height: 120px;
	font-size: 0;
	text-align: center;
	vertical-align: center;
}

.sustaindiv .sustainicon img {
	width: auto;
	height: auto;
	max-width: 150px;
	max-height: 120px;
}

.sustaindiv .sustaininfo {
	width: 1120px;
}

#info-page .sustaindiv .sustaininfo h2 {
	margin-top: 10px;
}

#info-page .sustaindiv .sustaininfo li {
	padding-top: 2px;
	padding-bottom: 2px;
}

.sustaindiv .sustaininfo a {
	color: #000000;
}




/* PAYMENT GATEWAY TRANSFER PAGE */
#gateway {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ffffff;
	text-align: center;
	font-family: var(--FontFamily), sans-serif;
	padding-top: 80px;
}

#gateway input[type="submit"] {
	font-family: var(--FontFamily), sans-serif;
	width: 250px;
	box-sizing: border-box;
	background-color: var(--ButtonBackgroundColour);
	color: var(--ButtonTextColour);
	padding: 4px 0 0 0;
	font-size: 20px;
	line-height: 30px;
	margin: 20px 0 0 0;
	border: 0;
	cursor: pointer;
	-webkit-appearance: none;
	text-transform: uppercase;
}

#gateway input[type="submit"]:hover {
	background-color: var(--ButtonHoverBackgroundColour);
	color: var(--ButtonHoverTextColour);
}


/* GLOBAL PAYMENTS IFRAME */

#globalpayModal {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: 10;
	background: rgba(0, 0, 0, 0.65);
	display: block;
}

#globalPayContainer {
	width: 100vw;
	max-width: 600px;
	top: 10vh;
	bottom: 10vh;
	left: 0;
	right: 0;
	margin: 0 auto;
	position: fixed;
}

#globalpayIframe {
	display: block;
	width: 100vw;
	max-width: 600px;
	min-height: 620px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	border: none;
	overflow-y: scroll;
	overflow-x: hidden;
	margin: 0;
	background-color: #ffffff;
	background-image: url("../images/loading.gif");
	background-position: center;
	background-repeat: no-repeat;
	box-shadow: 3px 3px 10px -1px #333333;
}

#globalpayClose {
	display: block;
	position: absolute;
	top: 8px;
	right: 8px;
	height: 22px;
	width: 22px;
	box-sizing: border-box;
	z-index: 20;
	padding: 0;
	line-height: 1;
	background-image: url("../images/close.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 16px 16px;
	border: 0;
	background-color: #3a3d46;
	color: #ffffff;
	cursor: pointer;
}


/* TEST SITE NOTICE */

#testsite {
	display: none;
	text-align: center;
	border: 1px solid #dd0000;
	background-color: #ffffff;
	margin: 10px auto;
	color: #dd0000;
	font-size: 15px;
	font-weight: bold;
	padding:2px 15px 0 15px;
	line-height: 1;
	width: 95%;
	max-width: 900px;
	box-sizing: border-box;
}

#testsite a {
	color: #0000cc;
	line-height: 1;
}


