
/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu * {
	margin:			0px;
	padding:		0px;
	list-style:		none;
}
.sf-menu {
	height: 100%;
}
.sf-menu ul {
	position:		absolute;
	top:			-999em;
	width:			10em; /* left offset of submenus need to match (see below) */
}
.sf-menu ul li {
	width:			100%;
}
.sf-menu li:hover {
	visibility:		inherit; /* fixes IE7 'sticky bug' */
}
.sf-menu li {
	float:			left;
	position:		relative;
}
.sf-menu a {
	display:		block;
	position:		relative;
}
.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
	left:			0;
	top:			2.5em; /* match top ul list item height */
	z-index:		99;
}
ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul {
	top:			-999em;
}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
	left:			10em; /* match ul width */
	top:			0;
}
ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul {
	top:			-999em;
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
	left:			10em; /* match ul width */
	top:			0;
}

/*** arrows **/
.sf-sub-indicator {
	position:		absolute;
	display:		block;
	right:			.75em;
	top:			1.05em; /* IE6 only */
	width:			10px;
	height:			10px;
	text-indent: 	-999em;
	overflow:		hidden;
	background:		url('../images/arrows-ffffff.png') no-repeat -10px -100px; /* 8-bit indexed alpha png. IE6 gets solid image only */
}
a > .sf-sub-indicator {  /* give all except IE6 the correct values */
	top:			.8em;
	background-position: 0 -100px; /* use translucent arrow for modern browsers*/
}
/* apply hovers to modern browsers */
a:focus > .sf-sub-indicator,
a:hover > .sf-sub-indicator,
a:active > .sf-sub-indicator,
li:hover > a > .sf-sub-indicator,
li.sfHover > a > .sf-sub-indicator {
	background-position: -10px -100px; /* arrow hovers for modern browsers*/
}

/* point right for anchors in subs */
.sf-menu ul .sf-sub-indicator { background-position:  -10px 0; }
.sf-menu ul a > .sf-sub-indicator { background-position:  0 0; }
/* apply hovers to modern browsers */
.sf-menu ul a:focus > .sf-sub-indicator,
.sf-menu ul a:hover > .sf-sub-indicator,
.sf-menu ul a:active > .sf-sub-indicator,
.sf-menu ul li:hover > a > .sf-sub-indicator,
.sf-menu ul li.sfHover > a > .sf-sub-indicator {
	background-position: -10px 0; /* arrow hovers for modern browsers*/
}

/*** shadows for all but IE6 ***/
.sf-shadow ul {
	background:	url('../images/shadow.png') no-repeat bottom right;
	padding: 0 8px 9px 0;
	-moz-border-radius-bottomleft: 17px;
	-moz-border-radius-topright: 17px;
	-webkit-border-top-right-radius: 17px;
	-webkit-border-bottom-left-radius: 17px;
}
.sf-shadow ul.sf-shadow-off {
	background: transparent;
}

.sf-menu li, .sf-menu li:hover, .sf-menu li.sfHover, .sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
    background: none;
}
.sf-menu > li, .sf-menu > li > a {
    height: 100%;
}
.sf-menu > li {
    margin-left: 0px;
}
.sf-menu > li:last-child {
    margin-right: 0px;
}
.sf-menu > li > a, .sf-menu > li > a:visited {
    display: flex;
    min-width: 180px;
    color: var(--cBack);
    font-family: var(--fHead);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    line-height: 16px;
    text-align: center;
    text-transform: uppercase;
    white-space: normal;
    align-items: center;
    justify-content: center;
    margin: 0px;
    padding: 6px 12px;
    border: none;
}
.sf-menu > li:hover > a, .sf-menu > li.selected > a {
    /*color: var(--cColour);
    background: var(--cLight);*/
    background: var(--cColourAlt);
}
.sf-menu > li > a:before {
    content: '';
    display: block;
    width: 2px;
    height: 16px;
    position: absolute;
    left: -1px;
    background: var(--cColourAlt);
}
.sf-menu > li:last-child > a:after {
    content: '';
    display: block;
    width: 2px;
    height: 16px;
    position: absolute;
    right: -1px;
    background: var(--cColourAlt);
}

.sf-menu li.submenu:hover:after
{
    content: "";
    position: absolute;
    display: block;
    bottom: 0;
    z-index: 4;
    width: 0px;
    height: 0px;
    background: #E8E8E8;
}

.sf-menu li ul  {
    width: 190px;
    background: #FFF;
    border: 1px solid #E8E8E8;
    padding-bottom: 10px;
}
.sf-menu li ul.wide
{
    width: 200px;
}
.sf-menu li ul.wide li
{
    width: 170px;
}
.sf-menu li.submenu.wide ul
{
    width: 380px;
}
.sf-menu li:hover ul, .sf-menu li.sfHover ul
{
    top: 79px;
}
.sf-menu li ul li
{
    width:160px;
    height: auto;
    margin-left: 0;
    background-color: #fff;
    padding: 0 15px;
}
.sf-menu li ul.kes {width:120px}
.sf-menu li ul.kes li {width:90px}
.sf-menu li.submenu:hover ul
{
    z-index: 3;
}
/*.sf-menu li ul li:hover, .sf-menu li ul li.selected
{
    border-top: 1px solid #E0E0E0;
}*/
ul.sf-menu li li:hover ul, ul.sf-menu li li.sfHover ul,
ul.sf-menu li li li:hover ul, ul.sf-menu li li li.sfHover ul
{
    left: 180px;
}
.sf-menu li.submenu:last-child {border:0px}
.sf-menu .timetable_submenu
{
    margin-left: -280px;
}

.sf-menu li ul.categz {
    display: block;
    top: var(--hNav);
    border: none;
    box-shadow: none;
}
.sticky .sf-menu li:hover ul, .sticky .sf-menu li.sfHover ul, .sticky .sf-menu li ul.categz {
    top: var(--hSticky);
}

.sf-menu li ul.categz, .sf-menu li ul.categz.cols-4 {
    display: none;
    width: 900px;
    box-sizing: border-box;
    position: absolute;
    padding: 0px 10px 10px 10px;
    background: var(--cLight);
    box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.1);
    z-index: 99999;
}
/*
.sf-menu li .brands ul.categz {
    left: auto;
    right: -300px;
}
*/
.sf-menu li:hover ul.categz {display:block}
.sf-menu li ul.categz .maincat {border:0}
.sf-menu li ul.categz li {
    display: inline-block;
    width: 25%;
    vertical-align:top;
    white-space: normal;
    float: none;
    position: static;
    padding: 0px 10px;
    background: none;
}
.sf-menu li ul.categz.cols-5 {width:1000px}
.sf-menu li ul.categz.cols-5 li {width:20%}
.sf-menu li ul.categz.cols-4 {width:800px}
.sf-menu li ul.categz.cols-4 li {width:25%}
.sf-menu li ul.categz.cols-3 {width:600px}
.sf-menu li ul.categz.cols-3 li {width:33.333%}
.sf-menu li ul.categz.cols-2 {width:400px}
.sf-menu li ul.categz.cols-2 li {width:50%}
.sf-menu li ul.categz.cols-1 {width:200px}
.sf-menu li ul.categz.cols-1 li {width:100%}
.sf-menu li .blocktitle a {
    color: var(--cMedium);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.1px;
    line-height: 18px;
    text-align: left;
    text-transform: uppercase;
    margin: 0px;
    padding: 20px 0px 8px 0px;
    background: none;
}
.sf-menu li .brands ul.categz li {
    padding-top: 15px !important;
}
/*
.subitem a::before {display:block;position: absolute;top:2px;left:6px;content: '\f105';
    font-family: "FontAwesome";
    color:#979797;font-weight: 400;
    font-size: 12px;
}
*/
.subitem {
    position: relative;
}
.subitem a {
    color: var(--cShade);
    font-family: var(--fText);
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0.1px;
    line-height: 22px;
    text-align: left;
    text-transform: none;
}

/*
.sf-menu li ul.categz li.subcategz .maincat a {font-weight: 300}

.sf-menu li ul.categz li .subcat a, .sf-menu li:hover ul.categz li .subcat a {display:block;border:0;font-weight: 300;font-family: 'Montserrat',sans-serif;padding:4px 0 4px 33px;}
.sf-menu li ul.categz li a::after {}
.sf-menu li ul.categz li a:hover,.sf-menu li ul.categz li a.active  {background-color:#fff !important;padding:10px 0 10px 33px;border:0 !important}
.sf-menu li ul.categz li.subcategz .maincat a:hover {background: #f4f4f4 !important;text-decoration: none}
.sf-menu li ul.categz li:nth-child(2n+1) {clear: none}
.sf-menu li ul.categz li:nth-child(3n+1) {display:block;vertical-align:top;float:none;background:#EFEFEF;}
*/
/*.sf-menu li ul.categz li:nth-child(3n+2) {width:368px;max-width:500px;display:table-cell;vertical-align:top;float:none;height:100%;border-left:0px solid #eee;border-right:0px solid #DEDEDE;padding-top:16px}
.sf-menu li ul.categz li:nth-child(3n+3) {width:30%;display:table-cell;vertical-align:top;float:none;height:100%;}
*/
.sf-menu li ul.categz .catimg {position: absolute;bottom:-20px;right:-10px;z-index: 1000}
.sf-menu li ul.categz li:nth-child(3n+2) .maincat {}
.sf-menu li ul.categz li:nth-child(3n+2) .maincat a {background:none;}

.sf-menu li ul.categz li .thumb {display:inline-block;width:125px;vertical-align: middle;text-align: center;padding:15px 15px;box-sizing: border-box}
.sf-menu li ul.categz li .thumb img {max-width: 100%;max-height: 60px}

.sf-menu li:hover ul.categz a.subnav {padding:0;border:0;text-align: center}
.sf-menu li .cards a.icon {width:100%;border: 1px solid #DD2E6D !important;padding:20px 0 !important;text-align: center;text-decoration: none;display:block;color:#DD2E6D;margin-bottom: 10px}
.sf-menu li .cards a.icon span {display:block;padding-top:10px;font-size: 15px;line-height: 17px;color:#DD2E6D;font-family: 'Source Sans Pro',sans-serif;font-weight: 600}
.sf-menu li .cards a.icon:hover {border: 1px solid #DD2E6D !important;background: rgba(221,46,109,0.05) !important}
.sf-menu li .cards .inner {padding: 35px 25px 25px}

.sf-menu li .maincategz li {width:100%}
.sf-menu li ul.categz li.maincategz ul {position: absolute;top:0;left:260px;background: #f4f4f4;display:none;border: 0;min-height: 336px;min-width: 240px}
.sf-menu li ul.categz.giftsearch li.maincategz ul {min-height: 170px}
.sf-menu li ul.categz li.maincategz:hover ul {display:block}
.sf-menu li ul.categz li.maincategz ul .categname {width:100%;font-size: 13px;font-family: 'Montserrat',sans-serif;padding:25px 0 10px 40px;color:#5B5B5D;text-transform: uppercase;display:block}
.sf-menu li ul.categz li.maincategz ul.subcategz li.subcat a {display:block;}
.sf-menu li:hover ul.categz li .subcategz a {display:block;width:240px;border:0;font-weight: 300;font-family: 'Montserrat',sans-serif;padding:4px 0 4px 40px;font-size: 13px}
.sf-menu li:hover ul.categz li .subcategz.wide, .sf-menu li:hover ul.categz li .subcategz.col2 {width:530px;padding-bottom: 25px}
.sf-menu li:hover ul.categz li .subcategz.col2 {width: 480px}
.sf-menu li:hover ul.categz li .subcategz.hascatimg, .sf-menu li:hover ul.categz li .subcategz.wide.hascatimg, .sf-menu li:hover ul.categz li .subcategz.col2.hascatimg {
    padding-right: 150px;
}
.sf-menu li.subitem {background: #f4f4f4}
.sf-menu li:hover ul.categz li .subcategz.col2.hascatimg {width:580px}
.sf-menu li:hover ul.categz li .subcategz.wide li {width: 530px;padding-left:20px}
.sf-menu li:hover ul.categz li .subcategz.wide li .categname {padding-left: 20px}
.sf-menu li:hover ul.categz li .subcategz.wide li a {width:100%;padding:0;margin:0;text-align: center}

.sf-menu li:hover ul.categz li .subcategz.col2 li .subitem {float:left; width:200px;}