/** Add your custom styles here **/
/** Start category box colour hover **/

/*
QVSe Green = #006c60

Cuplas Callow colours:
Blue #314597

Note QVSe default green can be two colours
#008677
#009f8e

Orange - for contrast 
#ff8f3d

*/


a:visited,
a:hover,
a:active {
	color: #314597;
}
*/
/* Strap line(s) */

.strap-line-one {
	font-family: 'Archive',  Helvetica, sans-serif;
	font-size:19px;
	color:#313140;
}

.category:hover .info,
.category:active .info {
	background: #ff6c00;
	color: #ffffe7
}
.category:hover,.category:active {
	border-color: #ff6c00;
}
.category .info {
	position: absolute;
	background: #e5e5e5;
	color: #ff6c00;
	padding: 20px 10px;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 0.80em;
	bottom: 0;
	left: 0;
	width: 100%;
	display: block;
	min-height: 80px;
}

/** End category box colour hover **/

.container .col-3-2 {
	width: 220px;
}


.primary {
	background: #313140;
	border: 1px solid #313140;
	color: white;
}

.primary:visited {
	color: white;
}

.primary.disabled{
	background:gray ! important;
	border:gray ! important;
}

.primary:hover,
.primary:active {
	background: #ff6c00;
	border: 1px solid #313140;
	color: white;
}

/** Mega Menu **/

.menu-item {
	width: 114px;
	word-wrap: break-word;
	padding: 0px;
	font-size: 12px;
	vertical-align: middle;
}

nav .row ul li a {
	padding-left: 9px;
	padding-right: 0px;
	margin: 0;
	padding-top:8px;
	vertical-align:middle
}

nav .row ul li a:hover,
nav .row ul li:visited:hover,
nav .row ul li a:hover,
nav .row ul li:visited:hover {
	background-color: #314597;
	color: white;
	-webkit-transition: background-color 0.2s linear 0.1s;
	-moz-transition: background-color 0.2s linear 0.1s;
	-ms-transition: background-color 0.2s linear 0.1s;
	-o-transition: background-color 0.2s linear 0.1s;
	transition: background-color 0.2s linear 0.1s;
}

nav .row ul li:hover a,
nav .row ul liactive a,
nav .row ul li:active a {
	background-color: #314597;
	color: white;
}

nav .row ul li .main-sub.active {
	padding-top: 0px !important;
} 

nav .row ul li .main-sub ul {
	width: 100%;
	margin: 0;
}

nav .row ul li .main-sub ul li.title {
	width: 100%;
	font-size: 1.1em;
	color: #005eb8;
}

nav .row ul li .main-sub ul li.title a {
	color: #005eb8; 
	padding: 0px;
}

nav .row ul li .main-sub ul li.title a:hover {
	color: #ff0000;
}

nav .row ul li .main-sub ul li.sub {
	float: left;
	font-size: 14px;
	width: 23%;
	margin-left: 0;
	margin-right: 2%;
	padding: 5px 0;
	border: none;
}

nav .row ul li .main-sub ul li.sub a:hover {
	color: #fe5000;
}

nav .row ul li .main-sub ul ul {
	padding: 5px 0;
}

nav .row ul li .main-sub.active {
	height: auto;
	padding: 20px;
	overflow: auto;
	border-left: 3px solid #314597;
	border-right: 3px solid #314597;
	border-bottom: 3px solid #314597;
	border-top: 3px solid #314597;

}

nav .row ul {
	list-style: none; padding: 0;
	margin: 0;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 1.0em; 
}

nav .row .col-16 .wrap {
	background: #314597; 
	/* Old browsers */
	background: -moz-linear-gradient(top, #314597 0%, #314597 100%);
	/* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fe5000), color-stop(100%, #314597));
	/* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #314597 0%, #314597 100%);
	/* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, #314597 0%, #314597 100%);
	/* Opera 11.10+ */
	background: -ms-linear-gradient(top, #314597 0%, #314597 100%);
	/* IE10+ */
	background: linear-gradient(to bottom, #314597 0%, #314597 100%);
	/* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@colour1', endColorstr='darken(@colour2, 10%)', GradientType=0);
	/* IE6-9 */
	height: 50px;
}

.menu-item-large {
	width: 145px
}

.menu-item-medium {
	width: 100px
}

.menu-item-short {
	width: 85px
}

/** END Mega Menu **//** Add your custom styles here **/

/*
CSS to position out of stock alerts in product not over to the top right of page
Use orange #FF662B for Amber
*/
.stock.alert {
	position: static !important;
	padding-top:20px;
	margin-left: -30px;
	color: red;
	font-size: 0.8em !important;
}

.stock.safe {
	position: static !important;
	padding-top:20px;
	margin-left: -30px;

}
.safe {
	padding: 15px 15px 15px 25px;
	border: 1px solid transparent;
	border-radius: 4px;
	position: fixed!important;
	margin: 0px;
	z-index: 1031!important;
	display: inline-block!important;
	top: 100px!important;
	right: 50px!important;
	font-size: 1em!important;
}
.title .stock.safe {
	color: #009f8e;
	font-size: 0.9em !important;
	text-indent:4.5px;
}
.stock.amber {
	position: static !important;
	padding-top:20px;
	margin-left: -30px;

}
.amber {
	padding: 15px 15px 15px 25px;
	border: 1px solid transparent;
	border-radius: 4px;
	position: fixed!important;
	margin: 0px;
	z-index: 1031!important;
	display: inline-block!important;
	top: 100px!important;
	right: 50px!important;
	font-size: 1em!important;
}
.title .stock.amber {
	color: #FF662B;
	font-size: 0.9em !important;
	text-indent:4.5px;
}

.title .stock.alert {
	color: red;
	ont-size: 0.9em !important;
	text-indent:4.5px;
}
/* Set useful links height */
.feature-categories {
	border: 3px solid #314597;
	height: 330px;
}

.feature-categories ul {
	margin: 0;
	padding: 0;
	list-style: none;
	height: 100%;
}

.feature-categories ul li {
	margin: 0;
	padding: 0;
	height: 12.5%;
	font-weight: bold;
	text-transform: uppercase;
	border-bottom: 1px solid #314597;
	line-height: 2.1em;
}

.feature-categories ul li:last-child {
	border-bottom: 0;
}

.feature-categories ul li.title {
	display: block;
	padding: 10px 15px;
	background-color: #314597;
	color: white;
	font-size: 1.1em;
	line-height: 1.8em;
}

.feature-categories ul li:hover a,
.feature-categories ul liactive a {
	color: #009f8e !important;
}

.feature-categories ul li:hover .sub ul li a,
.feature-categories ul liactive .sub ul li a {
	color: #666666 !important;
}

.feature-categories ul li a {
	height: 100%;
	display: block;
	padding: 10px 15px;
	line-height: 1.8em;
	color: #666666;
}

.feature-categories ul li a:hover,
.feature-categories ul li aactive {
	color: #009f8e;
}

.feature-categories ul li a .fa {
	float: right;
	margin-top: 4px;
}

.feature-categories ul li .sub {
	position: absolute;
	left: 277px;
	top: 0;
	width: 0;
	height: 330px;
	border: 0;
	z-index: 200;
	padding: 0;
	text-transform: none;
	font-weight: normal;
	overflow: hidden;
	background: white;
}

.feature-categories ul li .sub.active {
	width: 903px;
	padding: 20px;
	border-top: 3px solid #314597;
	border-right: 3px solid #314597;
	border-bottom: 3px solid #314597;
}

.feature-categories ul li .sub ul {
	margin: 0 1%;
	padding: 0;
	list-style: none;
	width: 28%;
	display: inline-block;
}

.feature-categories ul li .sub ul li {
	display: block;
	height: 10%;
	border-bottom: 1px dashed #b3b3b3;
	line-height: 1.4em;
	text-transform: none;
	font-weight: normal;
}

.feature-categories ul li .sub .tip {
	width: 28%;
	float: right;
	margin: 0 1% 0 0;
}

.feature-categories ul li .sub .tip img {
	width: 100%;
	height: auto;
}

.feature-categories ul li .sub .tip .title {
	font-weight: bold;
	font-size: 1.2em;
	margin-bottom: 10px;
}

/* update primary button color */
.primary {
		height: fit-content;
	background: #314597;
	color: white;
	font-weight: normal;
	text-transform: uppercase;
	border: 1px solid #314597;
	-webkit-transition: background-color 0.2s linear 0;
	-moz-transition: background-color 0.2s linear 0;
	-ms-transition: background-color 0.2s linear 0;
	-o-transition: background-color 0.2s linear 0;
	transition: background-color 0.2s linear 0;
	text-shadow: none;
	border-radius: 3px;
	padding: 7px 14px;
	display: inline-block;
	font-size: 12px;
}

.primary:visited {
	color: white;
}

.primary:hover,
.primary:active {
	background: #ff6c00;
	border: 1px solid #e66100;
	color: white;
	text-decoration: none;
	-webkit-transition: background-color 0.2s linear 0.2s;
	-moz-transition: background-color 0.2s linear 0.2s;
	-ms-transition: background-color 0.2s linear 0.2s;
	-o-transition: background-color 0.2s linear 0.2s;
	transition: background-color 0.2s linear 0.2s;
}

.primary.basket-drag,
.danger.basket-drag {
	display: inline-block;
	float: right;
}

.primary .fa-shopping-cart {
	margin-right: 10px;
}

/* Update Newsletter background colour */
.newsletter {
	background-color: #314597;
}
/** Mike Bishop Home page and other changes agreed July 2023 **/

/** Set topper to match corporate colour #314597 - set font to white and bold **/
.topper {
	background-color: #314597;
	opacity: 0.8;
	color:#ffffff;
}

/** Set text colour for topper hyperlinks #314597 - set font to white and bold **/
.topper .account-menu,
.topper .account-menu li,
.topper .account-menu li a,
.topper .account-menu li:visited {
	color: #ffffff;
}

.topper .account-menu li a:hover,
.topper .account-menu li:visited:hover,
.topper .account-menu li a:active,
.topper .account-menu li:visited:active {
	color: #ff8f3d;
}
.topper-text,
.topper-text a,
.topper-text:visited {
	font-size: 1.1em;
	opacity: 1;
	color:#ffffff;
}

.topper-text a:hover,
.topper-text a:active {
	color:#ff8f3d;
}
/** Basket summary **/
.basket {
	height:30px;
	background:transparent;
	COLOR:#ffffff;
}


/** Set a responsive class for images so that they fit the space available **/
.responsive {
	width: 100%;
	height: auto;
}
.basket .containing {
	color:#ffffff;
	background-color:transparent;
	font-size: 1.1em;
}
.basket .icon {
	background-color: transparent;
	font-size: 1.5em;
	padding:0px;
	text-indent:12px;
}
.basket .basket-content {
	top:40px;
}
.basket-summary-total {
	font-size: 1.1em;
}
/** JSSOR slider styles **/
/*jssor slider loading skin double-tail-spin css*/
.jssorl-004-double-tail-spin img {
	animation-name: jssorl-004-double-tail-spin;
	animation-duration: 1.6s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}

@keyframes jssorl-004-double-tail-spin {
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}

/*jssor slider bullet skin 031 css*/
.jssorb031 {position:absolute;}
.jssorb031 .i {position:absolute;cursor:pointer;}
.jssorb031 .i .b {fill:#000;fill-opacity:0.5;stroke:#fff;stroke-width:1200;stroke-miterlimit:10;stroke-opacity:0.3;}
.jssorb031 .i:hover .b {fill:#fff;fill-opacity:.7;stroke:#000;stroke-opacity:.5;}
.jssorb031 .iav .b {fill:#fff;stroke:#000;fill-opacity:1;}
.jssorb031 .i.idn {opacity:.3;}

/*jssor slider arrow skin 051 css*/
.jssora051 {display:block;position:absolute;cursor:pointer;}
.jssora051 .a {fill:none;stroke:#fff;stroke-width:360;stroke-miterlimit:10;}
.jssora051:hover {opacity:.8;}
.jssora051.jssora051dn {opacity:.5;}
.jssora051.jssora051ds {opacity:.3;pointer-events:none;}

/** End of JSSOR slider styles **/

/** Add col-5-2 for the blocks of 3 images across **/
.container .col-5-2 {
	width:380px;
}

.col-5-2 {
	float: left;
	display: inline;
	margin-left: 10px;
	margin-right: 10px;
}

/* Smaller than standard 960 (devices and browsers) */
@media only screen and (max-width: 959px) {
	.container .col-5-2 {
		width:100%;
	}
	.col-5-2 {
		width:100%;
		margin-left: 10px;
		margin-right: 10px;
	}
}

/* Tablet Portrait size to standard 960 (devices and browsers) */
@media only screen and (min-width: 960px) and (max-width: 1199px)	{
	.container .col-5-2 {
		width:300px;
	}
	.col-5-2 {
		width:100%;
		margin-left: 10px;
		margin-right: 10px;
	}
}

/* Tablet Portrait size to standard 960 (devices and browsers) */
@media only screen and (min-width: 768px) and (max-width: 959px)	{
	.container .col-5-2 {
		width:236px;
	}
	.col-5-2 {
		width:100%;
		margin-left: 10px;
		margin-right: 10px;
	}
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px)	{
	.container .col-5-2 {
		width:236px;
	}
	.col-5-2 {
		width:100%;
		margin-left: 10px;
		margin-right: 10px;
	}
}

/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (min-width: 480px) and (max-width: 767px)	{
	.container .col-5-2 {
		width:100%;
	}
	.col-5-2 {
		width:100%;
		margin-left: 10px;
		margin-right: 10px;
	}
}

/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 479px)	{
	.container .col-5-2 {
		width:100%;
	}
	.col-5-2 {
		width:100%;
		margin-left: 0px;
		margin-right: 0px;
	}
}

.side-categories {
	display: table;
	width:100%
}