/* 
    Document   : template css
    Created on : 11-Nov-2016, 17:42:53
    Author     : Karl Wright
    Description:
        Basic template for new store design, anything additional 
                or bespoke for the company should be in colour or extra.
*/

/* define the fonts */
@import "https://fonts.googleapis.com/css?family=Raleway:500,600,700,400,300";
@import "https://fonts.googleapis.com/css?family=Montserrat";
@import "https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css";

/* font for special characters? */
@font-face {
    font-family: 'icomoon';
    src: url("/fonts/icomoon/icomoon.ttf?pawib2") format("truetype"), url("/fonts/icomoon/icomoon.woff?pawib2") format("woff"), url("/fonts/icomoon/icomoon.svg?pawib2#icomoon") format("svg");
    font-weight: normal;
    font-style: normal; 
}

/* font weights: 400 normal, 700 bold, 900 boldest. */

/* standard tags */
body {
    background-color: #F5F5F5;
}

body, form, table {
    /* Text */
    line-height: 1.5;
    font-size: 16px;
    font-family: Raleway,sans-serif;
    font-style: normal;
    font-weight: 400;
    color: #4A4A4A;
}


* {
    /* other */
    margin: 0;
    outline: 0 none;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
    font-family: Raleway,sans-serif;
    margin: 0;
}

h1, h2 {
    margin-bottom: 1em;
}

h1 { 
    font-weight: 400;
}

h3 { 
    font-weight: 300;
    margin: 0 0 1em 0;
    font-size: 1.5625em; 
    line-height: 1.5625em;
}
h4 {
    font-weight: 600;
    font-size: 20px/27px;
}
ul, 
ol {
    margin-bottom: 1.125em;
    margin-left: 1.125em;
    padding-left: 0;
}

p { 
    line-height: 1.40625em;
    margin-bottom: 1em;
}

a:hover {
    opacity: 0.75;
    text-decoration: none;
}

a:hover, 
a:focus,
p a,
li a,
table a {
    color: #1946fa;
    text-decoration: none;
}

a {
    color: inherit;
    text-decoration: none;
}

img {
    width: auto;
    height: auto;
    max-width: 100%;
    vertical-align: middle;
    border: 0 none;
}

.form-control,
input { 
    box-shadow: none;
    border: 1px solid #CCCCCC;
    color: #4A4A4A;
    border-radius: 0;
    height: 42px; 
    font-size: 16px;
    font-weight: 600;
    line-height: 40px;
    padding: 0 18px;	
    text-align: left;
    border-radius: 5px;
    margin-bottom: 5px;     
    text-overflow: ellipsis;
    overflow: hidden;
}


.form-control,
input:hover { 
    overflow:visible;
}

.float-right {
    float: right;
}

#overlay {
    background-color: rgba(0, 0, 0, 0.25);
    z-index: 100000;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: none;
}

.takeover {
    display: inline-block;
    width: 100%; 
    height: 100%;
}

.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
    background-color: #CCC;
}



textarea {
    border: 1px solid #CCCCCC;
    width: 100%;
    font-size: 1em;
    padding: 0 0.5em;
    text-align: left;
    border-radius: 5px;
    color: #5C5C5C
}

.userform textarea {
    border: none;
}

.userform pre {
    border-radius: 5px;
    border: none;
    background: #FFF;
    font-family: Raleway;
    font-size: 16px;
    font-weight: 600;
    padding: 10px 18px;
    color: #4a4a4a;
}

/* /standard tags */



/* classes and IDs */

.error_list {
    color: #a94442;
}

ul.error_list {
    list-style: none;
    text-indent: 0;
    padding: 0;
    margin: 0 0 15px;
    padding: 5px 10px;
    border: 2px solid #a94442;
    border-radius: 5px;
}
ul.error_list li {
    line-height: 24px;
}
ul.error_list li label {
    margin: 0;
}

/** Header **/

section.notice {
    height: 42px;
    line-height: 42px;
    vertical-align: middle;
    position: absolute;
    width: 100%;
    background: #FFF;
}

section.notice p {
    line-height: 42px;
    margin-bottom: 0;
}

header {
    background-color: #FFF;
    padding: 0;
    border-bottom: 2px solid #ededed;
    z-index: 9999;
    position: fixed;
    top: 0;
    height: 114px;
    width: 100%;
}

.nav-topbar .menu .dropdown.noarrow span > a::after  {
    display: none;
}
.nav-topbar .menu .dropdown.noarrow span > a {
    padding-right: 7px;
}

.nav-topbar .menu .dropdown:focus > .submenu:first-of-type,
.nav-topbar .menu .dropdown:hover > .submenu:first-of-type {
    visibility: visible;
    opacity: 1;
    transform: scale(1) translateY(0);
    display: inline-block;
}

.nav-topbar .menu .dropdown {
    position: static;
    border-bottom: 1px solid #d4e7f3;
    transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0s
}

.nav-topbar .menu .dropdown > a:focus,
.nav-topbar .menu .dropdown > a:hover {
    opacity: 1;
}

.nav-topbar .menu .dropdown > span {
    display: block;
    position: relative;
    line-height: inherit;
    height: 42px;
}

.nav-topbar .menu .dropdown > span > a { 
    padding-right: 30px;
}

.nav-topbar .menu .dropdown span a:after {
    font-family: FontAwesome;
    content: "\f107";
    position: absolute;
    right: 10px;
    display: block;
    top: 50%;
    margin-top: -1px;
    font-size: 20px;
}

.nav-topbar .menu {
    float:right;
    margin: 0;
    height:42px;
    width: 100%;
}

.nav-topbar li { 
    list-style: none;
}

.nav-topbar .menu > li {
    float: right;
    height: 42px;
}

.nav-topbar {
    background-color: #F7F9FC;
    border-bottom: 1px solid #d4e7f3;
    height: 42px;
    width: 100%;
    position: relative;
    z-index: 9998;
}

.nav-topbar .menu > li > span > a,
.nav-topbar .menu > li > a {
    font-family: "Montserrat",sans-serif;
    color: #86a4b1;
    padding: 0.5em;
    display: table-cell;
    height: 42px;
    font-size: 0.9em;
    text-decoration: none;
    text-transform: uppercase;
}
.nav-topbar .menu > li > a { 
    padding: 0.7em 1.5em;
}

.nav-topbar .container {
    position: relative;
}


.nav-topbar .menu .dropdown.emulate {
    width: 44px;
}

.nav-topbar .menu .emulate i {
    color: #00e6c8;
}

.nav-topbar .menu .cart {
    width: 70px;
    padding: 0.5em;
}
.nav-topbar .menu .cart i {
    position: relative;
    right: 0;
    margin: 12px 0 0 10px; 
}

.nav-topbar .menu .cart i:after {
    content: attr(data-count);
    position: absolute;
    z-index: 2;
    top: -12px;
    right: -24px;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    /* mobile colours 
    background-color: white;
    color: #4F2A65; 
    */
    background-color: #1946fa;
    color: white; 
    font: 13px/27px Montserrat;
    text-align: center; 
}

.nav-topbar .menu .logo:hover {
    opacity: 1;
}
.nav-topbar .menu .logo {
    height: 114px;
    width: 114px;
    left: 2px;
    margin-left: 16px;
    overflow: visible;
    padding: 0;
    position: absolute;
    top: 0;
}

.nav-topbar .menu .lc {
    text-transform: none;
}

.nav-topbar .menu .flex { 
    display: flex; 
    flex-direction: column;
    line-height: 0.9em;
    padding-top: 0.5em !important;
}


.nav-topbar .menu .tel {
    font-family: Raleway, sans-serif;
}

.nav-topbar .mobile-nav {
    height: 53px;
    line-height: 53px;
    padding: 0 15px;
}

.nav-topbar .mobile-nav #menu-toggle {
    float: right;
}


.visible {
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/** /Top Bar **/


/** submenu **/

header .submenu {
    visibility: hidden; 
    display: none;
    opacity: 0; 
    transform: scale(0.99) translateY(5%);
    transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955); 
}

header .submenu.emulate {
    padding: 0 0 10px 0;
}
header .submenu.emulate a {
    padding: 0;
}


header .submenu .myaccount a {
    line-height: 30px;
}

header .submenu span,
header .submenu a {
    color: #4a4a4a;
    text-transform: uppercase;
    font-weight: 600;
    display: block;
    line-height: 20px;
    padding: 0.3em 1.5em;
    font-size: 13.35px;
}
/*
        
    
}*/

header .submenu span {
    color: #888;
}

header .submenu .logout a {
    border-top: 1px solid #E3E8EB;
    line-height: 30px;
}

header .submenu ul {
    margin-left: 0;
    padding: 10px 0;
}

/* first A record, title bar */
header .submenu.account li {
    padding: 0;
}

header .submenu.savedsearches {
    max-height: 400px;
    width: 250px;
    right: auto;
    padding-bottom: 10px;
}

header .submenu.savedsearches .mysearches li a {
    display: inline;
    padding: 0;
}

header .submenu.savedsearches .mysearches li a.share {
    padding-right:0;
    float: right;
}
header .submenu.savedsearches .mysearches li a.remove {
    padding-right: 0;
}

/** Bottom Bar **/

.nav-bottombar {
    display: table;
    height: 72px;
    margin: 0 auto;
}

.nav-bottombar a {
    color: #4a4a4a;
    font-size: 0.95em;
}

.nav-bottombar .search {	
    height: 15px;
    padding: 12px 0 0 9em;
    position: static;
    display: inline-block;
    width: calc(100% - 200px);
}

.nav-bottombar .search .search-bar {
    background-color: rgba(25, 70, 250, 10%);
    border-radius: 5px;
    cursor: text;
    height: 42px;
    width: 100%;
}

.nav-bottombar .search .search-bar button {
    background-color: #1946fa;
    border: 0;
    border-bottom-right-radius: 5px;
    border-top-right-radius: 5px;
    color: #FFF;
    float: right;
    cursor: pointer;
    font-size: 18px;
    width: 50px;
    height: 42px;
}

.nav-bottombar .search .search-text {
    width: calc(100% - 50px);	
    float: left;
    border: 0;
    background: none;

}

.nav-bottombar .categories { 
    margin: 0;
    position: relative;
}


.nav-bottombar .categories .menu {
    font-family: "Montserrat",sans-serif;
    float: right;
    display: block;
    height: 42px;
    width: 195px;	
    z-index: 2;	
    left: auto;
    padding-right: 5px;
    text-align: right;	
    text-transform: uppercase;
    transition: box-shadow 0.15s ease-in 0s;
    border-radius: 5px;
    cursor: pointer;
}

.nav-bottombar .categories > .container {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2), 0 -1px 10px rgba(0, 0, 0, 0.06);
    height: 387px;  
    background: white; 
    padding-top:10px;
    opacity: 0;
    min-width: 880px;
    padding: 25px 10px 15px;
    position: absolute;
    top: 15px;
    right: -5px;
    visibility: hidden;
    transform: scale(0.99) translateY(5%);
    transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955); 
    max-height: calc(100vh - 96px);
    z-index: 9998;
}

.nav-bottombar .categories:hover > .container {
    opacity: 1;
    visibility: visible;
}

.nav-bottombar .search-suggestions {
    display: none;

    position: static;
    background: #FFFFFF; 
    top: 0;
    z-index: 999;
    float: left;

    width: 100%;
    margin: 0;

    border-radius: 5px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2), 0 -1px 10px rgba(0, 0, 0, 0.06);
    background: white; 
    padding: 10px 10px 15px;
    /*transform: scale(0.99) translateY(5%);*/
    transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955); 

}
.search-suggestions > div  {
    height: 350px;
    max-height: 350px;
}

.search-suggestions .product .col-xs-1 {
    width: 91px;
    padding-left: 10;
}

.search-suggestions .product .col-xs-11 {
    width: calc(100% - 101px);
    padding-left: 10;
}

.search-suggestions .product-info {
    position: relative;
    position: relative;
    width: auto;
    bottom: auto;
}
.search-suggestions .tile {

    width: 76px;
    height: 76px;
}

.search-suggestions .product { 
    overflow: hidden;
    display: block;

}
.search-suggestions h4 {
    padding: 0 0 12px 0;
    margin-top: 5px;
}
.search-suggestions ul {
    margin-left: 0;
}

.search-suggestions ul li {
    list-style: none;
    text-indent: 0;
}

/** /Header **/

header .nav-topbar .container,
footer .footer-light .container {
    padding: 0 18px;
}


/** Footer **/

footer {
    background-color: #173bd1;
    color: #FFF;
    font-size: 14px;
}

footer .logo {
    position: absolute;
}

footer .logo, 
footer .address, 
footer .phone, 
footer .social {
    line-height: 52px;
    vertical-align: middle;
    font-size: 15px;
    display: inline-block;
    color: #FFF;
}

footer .address {
    margin-left: 114px;

}

footer .social {
    float: right;
}

footer .footer-light {
    background-color: #1946fa;
}

footer .social ul li {
    float: left;
    list-style-type: none;
    margin-right: 10px;
    line-height: 52px;
}

footer .social ul li a.twitter {
    font-size: 18px;
}

footer .social ul li a {
    display: block;
    font-size: 15px;
}

footer .social i {
    height: 33px;
    width: 33px;
    color: #1946fa;
    text-align: center;
    background-color: #FFF;
    border-radius: 50%;
    line-height: 33px;
}

footer a:hover,
footer a:focus,
footer a {
    color: #FFF;
}

footer .phone {
    font-size: 23px;
    float:right;
}

footer .description {
    margin: 20px 0;
    padding-right: 20px;
}

footer .sitemap h2 {
    border-bottom: 1px solid;
    font-size: 16px;
    line-height: 18px;
    margin: 0 0 0.5em 0;
    padding-bottom: 8px;
}

footer .sitemap ul {
    margin-left: 0;
}

footer .sitemap ul li {
    font-size: 14px;
    line-height: 24px;
    list-style-type: none;
}


footer .copyright p {
    width: 100%;
    display: inline-block;
    line-height: 26px;
    margin: 0;
}

footer .copyright p.footer-terms {
    text-align: left;
}

footer .row {
    margin: 0;
}


/** icons **/

.footer-icons {
    padding: 10px 0 35px;
    text-align: center;
    display: inline-block;
    width: 100%;
}

.footer-icon {
    /* width: 270px;
    display: inline-block; */
    padding-bottom: 20px; 
    text-align: center;
}

.footer-icon i {
    margin: 8px auto;
    font-size: 39px;
    height: 80px;
    width: 80px;
    line-height: 80px;
    display: block;
    border-radius: 50%;
    background-color: #1946fa;
    color: #FFF;
}

.footer-icon span {
    font-size: 14px;
    line-height: 16px;
    display: block;
    font-weight: 600;
}

/** /icons **/



/** /Footer **/

.container.notice {
    height:42px;
    line-height: 42px; 
    margin-bottom:30px
}

section.emulate-box {
    margin-top:10px;
    margin-bottom:10px;
    text-align:center;
    font-size:1.2em
}

.fa-question-circle { 
    cursor: pointer;
}

#page {
    /* padding for the header bar, handled by padding on body 
    margin-top: 112px; */
    margin-top: 30px;
}

.anchor {
    display:block;
    height:122px; /* this is the height of your header */
    margin-top:-122px; /* this is again negative value of the height of your header */
    visibility:hidden;
}

body {
    padding-top: 112px;
}

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

.nopadding {
    padding: 0 !important;
    margin: 0 !important;
}

.loggedIn .loggedOut,
.loggedOut .loggedIn {
    display: none;
}

.search-loading {
    position: absolute;
    width: 42px;
    height: 52px;
    margin-top: -36px;
    z-index: 10000;
}

.progress-bar {
    background-color: #1946fa;
}

.search-loading p {
    /* margin: auto;
    top: 50%;*/
    width: 100%;
    position: absolute;
    text-align: center;
}

/* Mobile only */
.mobile { 

}

.grid-wrap {
    margin-bottom: 10px;
    display: inline-block;
    width: 100%;
}

.grid {
    float: left;
    padding: 0 0 0.6em 0.6em;
    min-height: 1px;
    position: relative;
    display: block;
}

.grid::after, .g::after {
    clear: both;
    content: "";
    display: table;
}

ul.nav-tabs {
    margin:0;
    margin-bottom: 15px;
    border-bottom: 1px solid #A6BCC6;
}


ul.nav-tabs > li.active > a:focus,
ul.nav-tabs > li.active > a:hover,
ul.nav-tabs > li.active > a,
ul.nav-tabs > li > a {
    border-left: 0;
    border-right: 0;
    border-top: 0;
    background-color: #CCCCCC;
    color: #1946fa;
    transition: all 0.2s ease-in;
    font-weight: 600;
}

ul.nav-tabs > li.active > a:focus,
ul.nav-tabs > li.active > a:hover,
ul.nav-tabs > li.active > a {
    background-color: #1946fa;
    color: #FFF;
}

ul.nav-tabs > li > a.orange {
    background-color: #00e6c8;
    color: #FFF;
}

ul.nav-tabs > li.active > a.orange:focus,
ul.nav-tabs > li.active > a.orange:hover,
ul.nav-tabs > li.active > a.orange {
    background-color: #1946fa;
    color: #FFF; 
}

.hidden { 
    display: none;
}

.userform,
.content-area,
.clearfix {
    zoom: 1; 
}

.userform:before,
.userform:after,
.content-area:before,
.content-area:after,
.clearfix:before, 
.clearfix:after {
    content: " ";
    display: table; 
}

.userform:after,
.content-area:after,
.clearfix:after {
    clear: both; 
}

.panel {
    box-shadow: none;
    margin-bottom: 10px;
}

.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.button {
    background-color: rgba(0, 0, 0, 0.3);
    border: 0 none;
    border-radius: 5px;
    cursor: pointer;
    display: inline-block;
    font-weight: 600;
    /* height: 42px;*/
    line-height: 42px;
    margin-right: 5px;
    padding: 0 20px;
    text-align: center;
    text-transform: uppercase;	
    color: #FFF;
    font-size: 13px;
    text-decoration: none;
    position: relative;
    margin-bottom: 5px; 
}

/* trick to make it dim */
.display button:hover,
.button:hover:after {
    opacity: 0.25;
}
.button:after {
    width: 100%;
    height: 100%;
    background: #FFF;
    opacity: 0;
    border-radius: inherit;
    left: 0;
    top: 0;
    position: absolute;
    display: inline-block;

    z-index: 0;	
    transition: all 0.15s ease-in;
    content: "";

}

.button:hover, 
.button:focus {
    color: #FFF;
}

.product-block .button {
    bottom: 1.25em;
    font-size: 13px;
    font-weight: 800;
    left: 50%;
    margin-left: -55px;
    padding: 0.8em 1em;
    position: absolute;
    width: 110px;
}

.badge.badge-blue,
.button.button-blue {
    background-color: #8c69eb;
}

.badge.badge-orange,
.button.button-orange {
    background-color: #00e6c8;
    color:#0B0F11;

}

.badge.badge-primary,
.button.button-primary {
    background-color: #1946fa;
}

.badge {
    font-family: "Montserrat",sans-serif;
    font-weight: 600;
    border-radius: 50%;
    padding: 0;
    line-height: 26px;
    width: 26px;
    height: 26px;
    display: inline-block;
    font-size: 13px;
    vertical-align: middle;
    text-align: center;
    margin: 0 10px 0 0;
}

/** page headers **/
.header-bar a:hover,
.header-bar a:focus,
.header-bar {    
    color: #FFF;
}

.header-bar {
    background-color: #1946fa;
    padding: 45px 0;
    width: 100%;
    margin-bottom: 30px;
    margin-top: -30px;
}

.header-bar .title-bar {
    display: inline-block;
    float: left;
}

.header-bar h1 { 
    display: block;
    font-size: 42px;
    font-weight: 100;
    line-height: 49px;
    margin: 0;
}

.header-bar .breadcrumbs {
    float: right;
    font-size: 14px;
    line-height: 49px;
}

.header-bar ul.breadcrumb {
    background: none;
    margin-bottom: 0;
    padding: 0;
}

.header-bar ul.breadcrumb li.active {
    color: #FFF;
    background: none;
}

.header-bar ul.breadcrumb li a {
    color: #FFF;
}

.split-header h3 {
    color: #1946fa;
    display: inline-block;
    padding: 0 10px;
    text-transform: uppercase;	
}

.split-header {
    border-bottom: 1px solid #A6BCC6;
    height: 1.3em;
    margin: 22px 0 2em;
    width: 100%;
    text-align: center;
}

.split-content .bg-primary,
.split-header .bg-primary {
    color: #FFF;
}

.split-content {
    border-bottom: 1px solid #A6BCC6;
    height: 15px;
    margin: 5px 0 15px;
    width: 100%;
    text-align: center;
}

.split-content h3 {
    color: #1946fa;
    display: inline-block;
    padding: 0 5px;
    text-transform: uppercase;	
    font-size: 1em;
    font-weight: 500;
}

.product .split-content {
    margin: 0 0 10px 0;
    height: 0px;
}


/** /page headers **/

/** usefull colours **/
.bg-color {
    background-color: #F5F5F5;
}

.bg-orange {
    background-color: #00e6c8;
}

.bg-primary {
    background-color: #1946fa;
}

.bg-white {
    background-color: #FFF;
}
/** /usefull colours **/

/** Containers **/
.disabled-continer {
    pointer-events: none;
    opacity: 0.4;
}

.container-fluid,
.container {
    padding: 0 1.125em;
    /* max-width: 768px; */
    margin: 0 auto;
}

.container:after {
    clear: both; 
    content: ""; 
    display: table;
}


.row {
    /*	margin-left: 0;
            margin-right: 0; */
    display: block;
    margin-bottom: 0.625em;
}


.content-area {
    padding: 2em 3em;
    position: relative;
    overflow: visible;

}
.row .content-area {
    margin-left: 15px;
    margin-right: 15px;
}

.content-area h1 {
    color: #1946fa;
    font-size: 24px;
    line-height: 1.208em;
    margin-bottom: 0.5em;
    padding-bottom: 5px;
}

.content-area h2 {
    font-size: 2em;
    font-weight: 300;
    line-height: 1.2em;
}

.content-area > p:last-of-type {
    margin-bottom: 0;
}

/** /Containers **/

/** forms **/
.userform {
    margin: 0 auto 20px;
    /* max-width: 812px; */
    padding: 40px 55px;
    border-radius: 5px;
    background-color: #eaefff;

}

.userform h4 {
    color: #1946fa;
    margin-bottom: 30px;
    text-transform: uppercase;
}

.userform input,
.userform select {
    width: 100%;
    position: relative;
    border: 0;
}

.dp-choose-date {
    position: absolute;
    left: 25px;
    top: 37px;
}

.dp-applied {
    padding-left: 40px;
}



.input-text,
.select-input {
    background-color: #FFF;
    border-radius: 5px;
    height: 42px;
    border: none;
    /* font-size: 14px; */
}

.select-input .select-chosen::after {
    font-size: 20px;
    line-height: 40px;
    position: relative;
    right: 16px;
    display: inline-block;
    float: right;
    font-family: FontAwesome;
    content: "\f107";
}

input[type="checkbox"] + label,
input[type="radio"] + label {
    cursor: pointer;
}




input[type="radio"] + label span.midw-check,
input[type="checkbox"] + label span.midw-check {
    display:inline-block;
    width:22px;
    height:22px;
    margin-top: -1px;    
    margin-left: 4px;
    margin-right: 8px;
    vertical-align:middle;
    border-radius: 0px;
    background-color: #FFF;
    border: 2px solid #D9DDE3;
    cursor:pointer;
    position: relative;
}

input[type="radio"] + label span.midw-check {
    border-radius: 50%;
}

input[type="radio"] + label span.midw-check:after,
input[type="checkbox"] + label span.midw-check:after {
    display: block;
    top: 4px;
    margin: 0 auto;
    width: 10px;
    height: 10px;
    position: relative;
    content: "";
}

input[type="radio"]:checked + label span.midw-check:after,
input[type="checkbox"]:checked + label span.midw-check:after {
    background-color: #1946fa;
}

input[type="radio"] + label span.midw-check:after {
    border-radius: 50%;
}

.select-chosen {
    cursor: pointer;
    padding-left: 18px;
}

.userform .field {
    margin-bottom: 40px;
}

.select-input .select-chosen {	
    height: 42px;
    font-weight: 600;
    line-height: 40px;
    overflow: hidden;
}

.select-input .select-chosen span {
    line-height: 42px;
}

.userform .label {
    display: block;
    font-size: 15px;
    margin-bottom: 5px;
    text-align: left;
    overflow: hidden;
    text-overflow: ellipsis;
}

.userform .label:hover {
    overflow:visible;
}

.userform label {
    color: inherit;
    font-weight: 500;
    padding: 0;
}

.userform .button {
    width: 100%;
}



/** /forms **/


/** table data **/
.datatable {
    overflow-x: auto;
    padding-bottom: 15px;
}

.datatable table {	
    width: 100%;
}

.datatable table tbody tr:nth-child(2n) {
    background-color: #f2f2f2;
}

.datatable table thead th {
    border-bottom: 1px solid #dddddd;
}

.datatable table thead th,
.datatable table tbody td {
    font-size: 16px;
    padding: 10px;
}

/** table data **/



/** midwScroll **/
.popup {
    max-height: 360px;
    margin-top: auto !important;
    z-index: 999;
    position: absolute;
    top: 0;
    width: 100%;
}

.select {
    position: relative;
}

.select-chosen {
    cursor: pointer;
}


.select-list {
    background-color: white;
    border-radius: 5px;
    box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2);
    color: rgba(12, 12, 12, 0.8);
    display: block;
    font-weight: 600;
    font-size: 15px;
    line-height: 20px;
    opacity: 0;
    overflow: hidden;
    padding: 10px 0;
    transform: scale(0.99) translateY(5%);
    transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0s;
    visibility: hidden;
    margin: 0;
}

.select-list.popup-active {
    opacity: 1;
    transform: scale(1) translateY(0px);
    visibility: visible;
}

.select-list.multi-select {
    opacity: 1;
    transform: scale(1) translateY(0px);
    visibility: visible;
    position: relative;
    box-shadow: none;
    max-height: 172px; /* 40 per line */
}


.select-item-active {
    position: relative;
}

.select-item-active::before {
    font-size: 13px;
    font-weight: 200;
    left: 10px;
    line-height: 38px;
    position: absolute;
    top: 0;
    font-family: FontAwesome;
    content: "\f00c";
}

.select-item { 
    cursor: pointer;
    display: block;
    padding: 9px 0 9px 30px;
}

.select-item:hover {
    background-color: rgba(240,242,246,0.75);
}

.select-link {
    padding: 9px 20px 9px 30px
}

.pdf-links {
    margin-bottom: 5px;
}

.pdf-links .select {
    background-color: #FFF;
    float: right;
    height: 20px;
    line-height: 13px;
}

.pdf-links .select-chosen span {
    color: #4A4A4A;
    line-height: 13px;
    font-size: 13px;
    padding-right: 5px;
}

.pdf-links .select-chosen {
    border-bottom: 1px solid #1946fa;
    color: #1946fa;
    font-size: 13px;
    font-weight: 600;
    padding-left: 0;
}
.pdf-links .select-chosen,
.pdf-links .select-chosen:after {
    line-height: 13px;
    height: 20px;
    font-size: 16px;
}

.pdf-links .select-chosen:after {
    right: 0;
}
.pdf-links .select-list {
    left: -50px;
    min-width: 203px;
    position: absolute;
    top: 30px;
}

.returns-link p {
    text-align: right;
}

.returns-link p a {
    height: 20px;
    /* line-height: 13px; */
    color: #4A4A4A;
    font-size: 13px;
    font-weight: 600;
    float: right; 
}


/** /midwScroll **/


/** Categories **/

.category {
    margin-bottom: 10px;
    padding-left: 5px;
    padding-right: 5px; 
}

header .category .tile {
    padding: 5px 0 26px;
}

header .category .category-name {
    top: -3px;
    position: relative;
}

.category .tile {
    box-sizing: content-box;
    padding: 25px 0 45px;
    width: 100%;
    height: 80px;
    font-size: 10px;
    text-align: center;

}

.category .tile i {
    line-height: 76px;
    color: #1946fa;
}

.category-name {
    margin: 0;
    line-height: 15px;
    font-size: 15px;
    font-weight: 600;
    transition: color 0.15s ease-in ;
}

.tile {
    color: #4a4a4a;
    display: inline-block;	
    position: relative;
    border-radius: 5px;
}

.product-gallery .main-image .product-image-frame .zoom-container .HD1080 {
    cursor: zoom-in;
}
/* This wont work as both img tags are inline and the latter is overriding even though its transparent  */
.product-gallery .main-image .product-image-frame .zoom-container .zoomImg {
    display: none !important;
}
.product-gallery .main-image .product-image-frame .zoom-container .HD1080 + .zoomImg.active {
    cursor: zoom-out;
    display: block !important;
}

.product-gallery .main-image .product-image-frame .zoom-container,
.tile::before {
    border: 2px solid #D9DDE3;
    border-radius: 5px;
    height: 100%;
    left: 0;
    position: absolute;
    display: inline-block;
    top: 0;
    width: 100%;
    z-index: 0;	
    transition: all 0.15s ease-in;
    content: "";
}

.category .tile.active,
.category .tile.active i,
.category .tile:hover,
.category .tile:hover i {
    color: #FFF;
}

.tile:hover {
    opacity: 1;
}

.category .tile.active,
.category .tile:hover {
    background-color: #1946fa;
    opacity: 1
}

.tile.active::before,
.tile:hover::before {
    border: 2px solid #1946fa;

}

/* not sure to have this yet or not? */
div.categories { 
    margin-left: -5px;
    margin-right: -5px;
}

.offer-categories .category .tile {
    padding: 5px 0 26px;
}

/** /categories **/

/** Product **/


/*
.product-gallery .tile .special-offer:before {	
    content: "\e90ea";	
}*/

.tile .product-clearance:before {	
    content: "\e904";	
}

.product-gallery .new-product:before,
.tile .new-product-rosette:before {	
    content: "\e91b";

}

.product-gallery .featured-product:before,
.tile .featured-product:before {	
    content: "\e91c";

}

.product-gallery .bestProductAward:before,
.tile .bestProductAward:before {	
    content: "\e91b";

}

.product-gallery .new-product:before,
.product-gallery .featured-product:before{
    font-family: 'icomoon' !important;
}


.product-icons i {
    font-size: 1.1em;
    color: #FFF;
    border-radius: 50%;
    background-color: #8c69eb;
    float: left; 
    position: absolute;
    top: 10px;
    margin-left: 10px;
    /* padding: 0 5px; */               
    /*line-height: 42px;*/
    line-height: 33px;
    width: 33px; 
    text-align: center; 

}

.product-icons .popover-content {
    color: #484848;
    white-space: nowrap;
    /*min-width: 200px; */
}

section.product .stock {
    margin-top: 12px;
}

section.product .stock p {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 0px;
}

.product-thumb {
    height: 510px;
    margin: 0 auto 30px;
    max-width: 270px;
    position: relative;
}
.cart .product-thumb .tile,
.cart .product-thumb {
    /*height:48px;
    width:48px;*/
    height:140px;
    width:140px;
}
.cart .product-thumb{
    /*padding-top:18px;*/
}
.recent .product-thumb {

}

.cart tr{
    text-align: left;
    vertical-align: top;

}

.cart .price{
    text-align: right;
}

.cart .datatable .button {
    height:26px;
    line-height: 25px;

}

.offers .row {
    margin-bottom: 20px;
    margin-left: -5px;
    margin-right: -5px;
}

.offers .button {
    width: 100%;
    margin:0;
}
.offers .tile {
    background-color: #fff;
    display: flex;
    flex-direction: column;
    height: 390px !important;
    /* justify-content: space-between; */
    width: 100%;
    padding:17px 19px;

}

.offers .product-image {
    width: 75%; 
    min-height: 1px;    
}

.offers .tile .title {       
    height: 80px;  
}

.offers .tile .title p { 
    margin: 0;
}

.offers .tile .product-image {
    transform: none;
    left:0;
    top:0;
    margin: auto;
    position: relative;
}

.offers .offer {
    padding-left: 5px;
    padding-right: 5px;
    padding-bottom: 10px;
}

.offers .product-thumb {
    height: 390px;
}

.product .product-pricing p, 
.product .part-codes p {
    margin-bottom: 10px;
}

.product-thumb .tile {
    height: 226px;
    line-height: 180px;
    padding: 3px;
    width: 100%;
    position: relative;
}

.product-thumb .product-description {
    margin-bottom: 10px;
}

.product-image, product-video {
    transition: all 0.4s ease 0s;
}

.product-image {
    left: 50%;
    max-height: 93%;   
    max-width: 93%;   
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
}

.product-video {
    max-height: 93%;
    max-width: 93%;
    width: 93%;
    height: 93%;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
}

.product-video iframe {
    width: 100%;
    height: 100%;
    border: 0;
    border-radius: 5px;
}

.product-gallery .tile.video iframe { 
    pointer-events: none; 
}

.product-gallery .tile-image .product-image {
    opacity: 1;
}
.product-gallery .tile-video .product-image {
    opacity: 0;
}

.product-gallery .tile-image .product-video {
    opacity: 0;
}
.product-gallery .tile-video .product-video {
    opacity: 1;
}

.product-thumb h4 a,
.product-thumb h4 a:hover,
.product-thumb h4 a:focus {
    color: #1946fa;
}

.product-thumb h4 {
    margin: 5px 0 8px;
    line-height: 21px;
    text-transform: uppercase;
    font-size: 18px;
    height: 42px;
}

.product-info p,
.product-overview p {
    font-size: 14px;
    margin: 2px auto 0;
}
.product-listview .product-info{
    bottom: auto;
    min-height: 157px;
}

.product-info {    
    position: absolute;
    bottom: 20px;
    width: 100%;
}

.product .price,
.product .rrp {
    font-weight: 600;
}

.product .price strong,
.product .rrp strong {
    padding-left: 10px;
}

.product .rrp strong {
    font-size: 16px;
}

.product .price strong {
    color: #1946fa;
    font-size:20px;
}

.product-compare {
    height: 20px;
    width: 20px;
    background-color: white;
    border: 2px solid #D9DDE3;
    border-radius: 2px;
    cursor: pointer;
}

.product-compare.active:after {
    height: 10px;
    left: 3px;
    top: 3px;
    width: 10px;
    content: "";
    position: absolute;
    background-color: #1946fa;
}

.product-compare:hover {
    /*border-color: #1946fa;*/
}

section.product > div {
    padding-top: 15px;
}

/** work on LIST view too **/
.product-listview > div {
    width: 100%;
    position: relative;
}

.product-listview .product-thumb {
    display: flex;
    height: auto;

    margin-bottom: 30px;
    max-width: none;
}

.product-listview .product-description {
    margin-bottom: 0;
}

.product-listview .product-overview h4 {
    height: auto;
}

.product-listview .product-overview {
    height: 114px;
}

.product-listview .product-thumb .product-compare  {
    bottom: 10px;
    right: 10px;
}
.product-listview .product-thumb .tile {
    float:left; 
    height: 137px;
    line-height: 137px;
    min-width: 137px;
    width: 137px;
    padding: 3px;
    position: relative;
}

.product-listview .product-thumb .product-overview {
    float: left;
    width: 100%;
    margin-left: 5px;
}

.product-listview .product-thumb .product-info {
    float: right;
    position: relative;
    text-align: right;
    width: 380px;
}


/** featured **/

.featured { 
    width: 100%;
}

.featured .product-image {
    width: 75%;
    min-height: 1px;
}

.featured a,
.featured a:hover {
    color: #4A4A4A;
}

.featured .tile h4 {

}

.featured .tile img {
    position: static;
    transform: none;
    margin: 0 auto;
}

.featured .tile.slick-slide {
    height: 340px !important;
    margin: 0 5px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: #FFF;
}

.featured .slideshow {
    margin-left: -5px;
    margin-right: -5px;
}


.featured .slideshow .slick-arrow {
    background-color: rgba(255, 255, 255, 0.1);
    margin: 0;
    top: 160px;
    transition: background-color 0.15s ease-in 0s;
}


.featured .slideshow .slick-dots {
    padding-top: 10px; 
    padding-bottom: 20px;
}

.featured .slideshow .slick-dots li {
    margin-top: 10px;
    border: 2px solid #646464; 
}

.featured .slideshow .slick-dots li.slick-active {
    background-color: #ffffff; 
}

.slideshow .slick-arrow:hover {
    background-color: rgba(255,255,255,0.9);
}

.slideshow .slick-arrow:hover:after {
    color: #1946fa;
}

.slideshow .slick-arrow::after {
    color: white;
    font-size: 20px;
    line-height: 40px;
    position: absolute;
    text-align: center;
    text-indent: 0;
    top: 0;
    transition: all 0.15s ease-in 0s;
    z-index: 999;
}

.slideshow .slick-arrow::after {
    -moz-osx-font-smoothing: grayscale;
    /* font-family: "icomoon" !important; */
    font-family: "FontAwesome" !important;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    text-transform: none;
}


.featured .slideshow .slick-arrow.slick-prev {
    left: -60px;
}

.featured .slideshow .slick-arrow.slick-next {
    right: -60px;
}

.product-slide::before {
    display: none;
}

.product-slide {
    padding: 17px 19px;
}

.product-promotion {
    background-color: #eef1f2;
    border-left: 6px solid #e76b00;
    color: #393a3a;
    display: block;
    font-size: 16px;
    font-weight: 600;
    height: auto;
    /*margin: 20px 0 20px -20px;*/
    margin-bottom: 10px;
    min-height: 50px;
    /*min-width: 320px;*/
    padding: 22px 0 21px 14px;
    border-radius: 5px;
    /*width: calc(100% + 40px);*/
}

.product-promotion strong {
    display: block;
}

h1.product-details-header {
    line-height: 50px;
    font-weight: 600;
    margin:0;
    padding:0;
}

.product-details {
    margin-bottom: 30px;
    margin-top: 10px;
    padding-top: 30px;
}

.product-reminders h5 {
    font-size: 18px;
    margin: 1em 0 0.5em;
}

.product-reminders .tile {
    flex-direction: column;
    float:left;
    display: flex;
    justify-content: center;
    margin: 10px 20px 0 0 ;
    padding: 0;
    width: 114px;
    /*height: 154px;*/
    height: 114px;
    align-items: center;
    background-color: #F0F2F6;
    color: #4A4A4A;
    font-size: 14px;
    font-weight: 600;

    text-align: center;
    transition: all 0.15s ease-in;

}
.product-reminders .tile:before {
    display: none;
}

.product-reminders .tile:hover span,
.product-reminders .tile:hover i {
    color: #FFF;
}
.product-reminders .tile:hover {
    background-color: #1946fa;
}

.product-reminders .tile:hover i.fa-check {
    color: #1946fa;
}

.product-reminders .tile img {
    height: 64px;
    width: auto;
    margin: 0 0 21px;
}

.product-reminders .tile span {
    margin: 0;
}

.product-reminders .tile i {
    color: #1946fa;
    font-size: 64px;
    margin: 0 0 10px;
    /* margin: 0 0 21px; */
}

.product-reminders .tile i.fa-check {
    color: #F0F2F6;
    font-size: 24px;
    position: absolute;
    /* top: 43px; */
    top: 28px;
    left: 50%;
    margin-left: -12px;
}

/** /product **/

/** comparison **/


/*
.comparison-widget .button:hover,
.comparison-widget .button:focus {
        color: #FFF;
        opacity: 1 !important;
}*/

.comparison-widget {
    height: 254px;
    margin-right: 0;
    margin-top: -50px;
    right: -10px;
    transform: translateX(303px);
    transition: all 0.5s ease 0s;
    width: 303px;
}

.comparison-widget .button-widget i {
    /*line-height: 24px;*/
    font-size: 28px;
}

.comparison-widget.active {
    right: 0;
    transform: translateX(0px);
}

.comparison-widget.available {
    opacity: 1;
    visibility: visible;
}
.comparison-widget {
    background-color: white;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2);
    opacity: 0;
    position: fixed;
    top: 50%;
    visibility: hidden;
    z-index: 13;
    border-left: 2px solid #00e6c8;
}

.comparison-widget .button-widget {
    left: -50px;
    top: 0;
    transition: all 0.2s ease 0s;
}
.comparison-widget .button-widget {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    display: block;
    text-align: left;
    padding: 7px 0px 8px 10px;
    position: absolute;
    width: 50px;
}

/** shop **/
/* fix for columns */
.shop-intro {
    margin-left: -15px;
    margin-right: -15px;
}

.filter-options {
    /*margin: 15px 0 20px 0 ;*/
    margin: 5px 0 5px 0 ;
    /*float: left; */
}

.search-filters h3 {
    margin-top: 15px;
    margin-bottom: 15px;
}

.filter-options h4 {
    border-bottom: 2px solid #D9DDE3;
    /*margin: 30px 0 20px;*/
    padding-bottom: 12px;
    margin-top: 5px;
}

.filter-options ul {
    margin:0;
    list-style-type: none;
    overflow: hidden;
    /*max-height: 405px;*/
    transition:max-height 0.15s ease-in-out;
}

.filter-options ul li {
    margin: 5px 0 !important;
    padding-left: 32px;
}

.filter-options ul.full-height {
    max-height: 10000px; 
} 

/* make the checkboxes hidden if a number showing */
.search-filters .filter-options ul li:nth-child(n+11) {
    display: none;
    opacity: 0;
    transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
} 

.search-filters .filter-options ul li.active {
    opacity: 1;
    display: list-item;
}

.filter-options ul li label {
    font-weight: 400;
    font-size: 14px;
}

.filter-options ul li label span.midw-check {
    margin-right: 10px;
    margin-left: -32px;
}

.filter-count::before {
    content: "(";
}
.filter-count::after {
    content: ")";
}

.filter-count {
    margin-left: 5px;
}

.filter-disabled label {
    color: #c0c0c0;
}

.filter-disabled .filter-count {
    display: none;
}

.filters-chosen { 
    border: 2px solid #8c69eb; 
    border-radius: 5px; 
    padding: 10px; 
}

.filters-chosen h3 {
    margin: 10px auto;
    float: left;
}

.filters-chosen h4 {

}

.filters-chosen input[type="checkbox"] + label span.midw-check:after {
    background-color: #1946fa;
}

.filters-chosen input[type="checkbox"]:checked + label span.midw-check:after {
    background: none;
}

.filter-options .filters-all {
    margin-bottom: 5px;
    display: inline-block;
}

.filter-options .bookmark-filters {
    border-radius: 5px; 
    height: 44px;
}

.filter-options .bookmark-filters input[type="text"] {
    float: left;
    border-radius: 5px;
    border-right: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    width: calc(100% - 53px);
}

.filter-options .bookmark-filters .button {
    float: right;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    margin-right: 0;
}

/** page filters **/

section.results .page-filters { 
    margin-top: 15px;
}

section.results .page-filters .listing-per-page > span {
    font-size: 13px;
    float: left;
    width: 57px;
    margin-right: 5px; 
}


section.results .page-filters .listing-per-page .select {
    width: 100px;
}
section.results .page-filters .listing-sort-by .select {
    /*width: 230px;*/
    width: 300px;

}

section.results .page-filters .select {
    float: left;
    margin-right: 10px;
}

/* Fix margins for cols */
/* .row.reducemargins,
section.results .page-filters .row {
        margin-left: -15px;
        margin-right: -15px;
}
*/
section.results .page-filters .select-input {
    background-color: #F0F2F6;
}


.page-filters .display {
    line-height: 42px;
}

section.results .page-filters .display {
    line-height: 50px;
}

.page-filters .display button {
    display: inline-block;
    background: none;
    border:0;
}

.page-filters .display button i {
    font-size: 24px;
    color: #CCCCCC;
}

.page-filters .display button.active i {
    color: #1946fa;
}

/** /shop **/

/** pagination **/
.pagination li a,
.pagination li span {
    margin: 0 3px;
    border-radius: 2px;
    border: 0;
    font-weight: 600;
}

.pagination li a {
    color: #4a4a4a;
    opacity: 1;
}

.pagination li:hover,
.pagination .active span:hover, 
.pagination .active span:focus, 
.pagination li a:hover, 
.pagination li a:focus, 
.pagination li span.current {
    background-color: #1946fa;
    color: #FFF;
}

.pagination > li:first-child > a, 
.pagination > li:first-child > span {
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
}

.pagination > li:last-child > a,
.pagination > li:last-child > span {
    border-bottom-right-radius: 2px;
    border-top-right-radius: 2px;
}

/** /pagination **/


/** product **/

.product .brand-logo {
    /* float: right; */
}

.product .brand-logo img {
    /* height: 100px; */
    width: auto;
}

.product .product-gallery .tile {
    height: 105px;
}

.product .product-gallery .tile.tile-selected::before {
    border-color: #1946fa;
}

.product .product-gallery .slideshow .tile {
    margin: 5px;
}

.product .product-gallery .main-image:hover:before {
    border-color: #CCCCCC;
}

.product .product-gallery .main-image {
    width: 100%;
    height: 457px;
    display: block;
}

.product .product-gallery .slideshow {
    clear: left;
    margin: auto;
    margin-top: 15px;
    max-width: none;
    width: 100%;
}

.product .product-gallery .slideshow .slick-dots li {
    margin-top: 10px;
    border: 2px solid #646464; 
}

.product .product-gallery .slideshow .slick-dots li.slick-active {
    background-color: #646464; 
}

.product .product-gallery .slideshow .slick-arrow::after {
    color: #4A4A4A;
}

.product .product-gallery .slideshow .slick-arrow.slick-prev {
    left: -35px;
}

.product .product-gallery .slideshow .slick-arrow.slick-prev::after {
    left: 10px;
}

.product .product-gallery .slideshow .slick-arrow.slick-next {
    right: -35px;
}

.product .product-gallery .slideshow .slick-arrow.slick-next::after {
    right: 10px;
}

.product .product-gallery .slideshow .slick-arrow {
    background: none;
}

section.product .product-pricing p {
    margin-bottom: 0;
}

section.product .part-codes p:last-of-type {
    margin-bottom: 0;
}

section.product .product-pricing .price strong,
section.product .product-pricing .rrp strong {
    display: block;
    line-height: 50px;
    font-size: 32px;
}

section.product .product-pricing .price strong {
    font-size: 46px;
}

section.product .product-pricing {
    position: relative;
}

section.product .stock {
}

section.product .stock p { 
}

.cart .qty  {
    background-color: #eef1f2;
    border-radius: 5px;
    display: flex;
    font-weight: 600;
    font-size: 20px;
    justify-content: space-between;
    overflow: hidden;
    text-align: center;
    display: inline-block;
    position: relative;
    vertical-align: top;
    width: 79px;
    /*margin: 0 50px 0 0;*/
}

.cart .qty span {
    -moz-user-select: none;
    background-color: #00e6c8;
    color: white;
    cursor: pointer;
    font-size: 1.5em;
    height: 22px;
    width: 20px;
    position: absolute;
    right: 0;
    line-height: 22px;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    border-bottom-right-radius: 5px;
    bottom: 0;
}

.cart .qty input {
    background-color: #F0F2F6;
    width: 59px;
    float: left;
    text-align: center;
    padding: 0;
    margin-bottom: 0;
}

.cart .qty span:before{
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transition: all 0.2s ease 0s;
    width: 100%;
    z-index: 0;

}

.cart .qty input + span {
    border-bottom-right-radius: 0;
    border-top-right-radius: 5px;
    top: 0;
}

/** /product **/

.marketing_methods table th {
    font-weight: 500;
}

.banner_maintenance.tab-content .datatable {
    overflow: auto; 
    max-height: 600px;
}

.banner .title { height: 100%; }
.banner .title .banner-light { color: #FFFFFF; }
.banner .title .banner-dark {  }

.banner-category-container {
    padding-right: 0;
}

/* straight out copy and paste! */

.mCSB_dragger .mCSB_dragger_bar {
    background: #3d3d3d none repeat scroll 0 0 !important;
    border-radius: 8px;
    opacity: 0.3;
    width: 6px !important;
}
.mCSB_dragger.mCSB_dragger-onDrag .mCSB_dragger_bar {
    background: #3d3d3d none repeat scroll 0 0;
}
.mCSB_draggerRail {
    opacity: 0;
}

.tile .special-offer img{
    position: absolute;
    top: 0px;
    right: 0px;
    z-index: 1000;
    display: inline-block;
    /*  width: 90px;   */    
}

.recentview-offer img{
    position: absolute;
    top: 0px;
    right: 0px;
    z-index: 1000;
    display: inline-block;
    /*  width: 60px;   */    
}


.slick-no-slide .slick-track {
    width: 100% !important;
    text-align: center;
}

.slick-no-slide .slick-slide {
    float: left;
    display: inline-block;
}

/*************************/
/** taken from main.css **/


.slideshow 
.slick-arrow:after {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'FontAwesome' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; 
}

.icon {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; 
}

.category .tile  {
    font-size: 3.2em; 
}

.banner-consumer-tv:before,
.icon-consumer-tv:before {
    content: "\e920";
}

.banner-accessories:before,
.icon-accessories:before {
    content: "\e901";
}

.banner-audio-solutions:before,
.icon-audio-solutions:before {
    content: "\e903"; 
}

.banner-broadcast:before,
.icon-broadcast:before {
    content: "\e910";
}

.banner-cctv-security:before,
.icon-cctv-security:before {
    content: "\e913"; 
}

.banner-commercial-displays:before,
.icon-commercial-displays:before{
    content: "\e905";
}

.banner-consumer-electronics:before,
.icon-consumer-electronics:before {
    content: "\e906";
}

.banner-imaging:before,
.icon-imaging:before {
    content: "\e909"; 
}

.banner-interactive-solutions:before,
.icon-interactive-solutions:before{
    content: "\e90a"; 
}

.banner-cables:before,
.icon-cables:before {
  content: "\e92a";
}

.banner-print-solutions:before,
.icon-print-solutions:before {
    content: "\e90e";
}

.banner-projectors:before,
.icon-projectors:before {
    content: "\e90f";
}

.banner-document-scanners:before,
.icon-document-scanners:before {
    content: "\e912";
}

.banner-technical-solutions:before,
.icon-technical-solutions:before {
    content: "\e917"; 
}

.banner-video-conferencing:before,
.icon-video-conferencing:before {
    content: "\e918"; 
}

.banner-3d-print:before,
.icon-3d-print:before {
    content: "\e90a";
}

.banner-racks:before,
.icon-racks:before {
    content: "\e90d";
}

.banner-drones:before,
.icon-drones:before {
    content: "\e937";
}

.banner-clearance:before,
.icon-clearance:before {
    content: "\e904"; 
}

.banner-offers:before,
.icon-offers:before {
    content: "\e90ea"; 
}

.banner-led-panel-displays:before,
.icon-led-panel-displays:before {
    content: "\e916";
}

.banner-security:before,
.icon-security:before {
    content: "\e935";
}

.banner-lighting:before,
.icon-lighting:before {
    content: "\e936";
}

.banner-content-creation:before,
.icon-content-creation:before {
    content: "\e938";
}



.banner-networking:before,
.icon-networking:before {
    content: "\e923";
}

.banner-power-management:before,
.icon-power-management:before {
    content: "\e934";
}

.icon-menu2:before {
    content: "\e"; 
}

/* My Account > My Orders icons */
.account_order  {
    font-size: 1.4em; 
    color: #1946fa; 
    line-height: 1.5;
}

.account_order_legend  {
    font-size: 1.4em; 
    color: #1946fa; 
    line-height: 30px;
}

.icon-clock:before {
    content: "\d401"; 
}

.icon-cross:before {
    content: "\d402"; 
}

.icon-double_back:before {
    content: "\d403"; 
}

.icon-hand:before {
    content: "\d404"; 
}

.icon-invoice:before {
    content: "\d405"; 
}

.icon-left_arrow:before {
    content: "\d406"; 
}

.icon-pause:before {
    content: "\d407"; 
}

.icon-pending:before {
    content: "\d408"; 
}

.icon-tick:before {
    content: "\d409"; 
}

/* banner on main page */
.banner-vat {
    width: auto;
    height: 50px;
    background: #F0F0F0;
    line-height: 50px;
    text-align: center;
    font-weight: bold;
}

/* banners */
.banner-home {
    margin-top: -30px;
}

/* BIG BANNER */
.banner {
    position: relative;
    height: 200px; }
@media only screen and (min-width: 500px) {
    .banner {
        height: 280px; } }
@media only screen and (min-width: 600px) {
    .banner {
        height: 320px; } }
.banner .slick-arrow {
    transition: background-color 0.15s ease-in;
    display: none !important; }
.banner .slick-arrow:hover {
    background-color: rgba(255, 255, 255, 0.9); }
.banner .slick-arrow:hover:after {
    color: #1946fa; }
.banner .slide {
    background-size: cover;
    background-position: center; }
.banner .slide .container, .banner .slide .slideshow .slick-dots, .slideshow .banner .slide .slick-dots {
    max-width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column; }
.banner-home h1 {
    font-size: 22px;
    line-height: 26px;
    text-transform: uppercase; }
@media only screen and (min-width: 768px) {
    .banner-home {
        height: 600px;
        max-height: calc(100vh - 167px); }
    .banner-home h1 {
        font-size: 54px;
        line-height: 1; } }
@media only screen and (min-width: 1280px) {
    .banner-home .slick-arrow {
        display: inline-block !important; } }
@media only screen and (min-width: 1200px) {
    .banner-home {
        max-height: calc(100vh - 124px); } }
@media only screen and (max-width: 767px) {
    .banner-home .button, .banner-home .product-tabs .select-chosen, .product-tabs .banner-home .select-chosen, .banner-home .listing-criteria .criteria li, .listing-criteria .criteria .banner-home li {
        display: none; } }
.banner-home .slide {
    background-size: cover;
    background-position: center; }
.banner-home .slide .container, .banner-home .slide .slideshow .slick-dots, .slideshow .banner-home .slide .slick-dots {
    height: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column; }

.banner-home .slick-dots {
    bottom: 24px;
    opacity: 0.8; }
.banner-home .slick-dots li {
    border: 2px solid white; }
.banner-home .slick-dots li.slick-active {
    background-color: white; }
@media only screen and (min-width: 768px) {
    .banner-home .slick-dots {
        text-align: left;
        bottom: 58px;
        left: 10px; } }

/* CATEGORY */

.banner-category .slide {
    background-position: left;
    /*background-position: center;
    background-size: auto;
    background-repeat: no-repeat;*/
}

.banner-category {
    /* position: absolute;
     left: 0; 
     width: 100vw; */
    padding-left: 0;
    padding-right: 0; }
.banner-category-container {
    position: static;
    height: 215px; 
    float:right;
}
@media only screen and (min-width: 500px) {
    .banner-category-container {
        height: 295px; } }
@media only screen and (min-width: 600px) {
    .banner-category-container {
        height: 335px; } }
@media only screen and (min-width: 768px) {
    .banner-category {
        /* position: absolute; 
        left: 0; */

        height: 340px; }
    .banner-category-container {
        height: 355px; }
    .banner-category .slick-arrow {
        display: inline-block !important;
        background-color: rgba(255, 255, 255, 0.1); }
    .banner-category .slick-arrow.slick-prev {
        left: 0;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0; }
    .banner-category .slick-arrow.slick-next {
        right: 0;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0; } }
@media only screen and (min-width: 1200px) {
    .banner-category {
        width: 100%;
        position: relative; }
    .banner-category-container {
        position: relative;
        height: 385px; }
    .banner-category .slick-arrow.slick-prev {
        left: 30px;
        border-top-left-radius: 5px;
        border-bottom-left-radius: 5px; }
    .banner-category .slick-arrow.slick-next {
        right: 30px;
        border-top-right-radius: 5px;
        border-bottom-right-radius: 5px; } }

.banner-category .slide .container, .banner-category .slide .slideshow .slick-dots, .slideshow .banner-category .slide .slick-dots {
    height: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column; }

.banner-category .slide h1 {
    max-width: 180px;
    margin: 0;
    font-size: 20px;
    line-height: 24px;
    color: white;
    text-align: left; }

.banner-category .slide .container, .banner-category .slide .slideshow .slick-dots, .slideshow .banner-category .slide .slick-dots {
    justify-content: flex-end; }

.banner-category .slide h1 {
    max-width: 350px;
    font-size: 24px;
    line-height: 29px; } 


.banner-category .slick-dots {
    bottom: -10px; }
.banner-category .slick-dots li {
    border: 2px solid #393A3A; }
.banner-category .slick-dots li.slick-active {
    background-color: #393A3A; }
@media only screen and (min-width: 768px) {
    .banner-category .slick-dots {
        bottom: -20px; } }

/** Side Banner **/
.banner-category-side {
    width: 250px;
    height: 250px;
    position: relative;
    margin-left: 15px;
}

@media only screen and (max-width: 360px) {
    .banner-category-side {
        margin-left: 0px;
    }
}
@media only screen and (min-width: 1024px) {
    .banner-category-side {
        margin-left: 0px;
    }
}

/** Slideshow **/
.slideshow {
    opacity: 0;
    transition: opacity 0.2s; }
.slideshow.slick-initialized {
    opacity: 1; }
.slideshow,
.slideshow .slick-list,
.slideshow .slick-track,
.slideshow .slick-slide {
    height: 100%;
    outline: 0 !important;
    border: 0; }
.slideshow .slick-active {
    outline: 0; }
.slideshow .slick-arrow {
    position: absolute;
    z-index: 1;
    top: 50%;
    display: inline-block !important;
    outline: 0;
    border: 0;
    margin-top: -20px;
    width: 40px;
    height: 40px;
    text-align: center;
    background-color: rgba(0, 0, 0, 0.1);
    border-radius: 5px;
    text-indent: -9999px;
    cursor: pointer; }
.slideshow .slick-arrow:after {
    position: absolute;
    line-height: 40px;
    top: 0;
    z-index: 999;
    color: white;
    text-align: center;
    font-size: 20px;
    text-indent: 0;
    transition: all 0.15s ease-in; }
.slideshow .slick-arrow.slick-prev {
    left: 25px; }
.slideshow .slick-arrow.slick-prev:after {
    left: 12px;
    content: '\f053';
    /* transform: rotate(90deg); */
    /* font-family: FontAwesome; */

}
.slideshow .slick-arrow.slick-next {
    right: 25px; }
.slideshow .slick-arrow.slick-next:after {  
    right: 12px; 
    content: '\f054';
    /* transform: rotate(-90deg); */
}

.slideshow .slick-dots button {
    display: none; }
.slideshow .slick-dots li {
    display: inline-block;
    vertical-align: top;
    margin: 0 5px;
    width: 10px;
    height: 10px;
    border-radius: 50%; 
}


/* Slider */
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
}
.slick-list:focus {
    outline: none;
}
.slick-list.dragging {
    cursor: pointer;
    cursor: hand; 
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); 
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block; 
}
.slick-track:before, .slick-track:after {
    content: "";
    display: table; 
}
.slick-track:after {
    clear: both; 
}
.slick-loading .slick-track {
    visibility: hidden; 
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none; 
}
[dir="rtl"] .slick-slide {
    float: right; 
}
.slick-slide img {
    display: block; 
}
.slick-slide.slick-loading img {
    display: none; 
}
.slick-slide.dragging img {
    pointer-events: none; 
}
.slick-initialized .slick-slide {
    display: block;
}
.slick-loading .slick-slide {
    visibility: hidden; 
}
.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; 
}

.slick-arrow.slick-hidden {
    display: none; 
}
.slideshow .slick-dots {
    padding-right: 15px; 
    position: relative; 
    z-index: 1;
} 


/* /classes and IDs */
.screen_finder dl {
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.2);
    background-color: #fff;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    border: 1px solid #ccc;
    z-index: 0;
}

.screen_finder dl {
    margin: 0 0 1.5em;
    padding: 1.4em;
    overflow: hidden;
}

.screen_finder dt {
    float: left;
    clear: left;
    width: 200px;
    text-align: right;
    font-weight: bold;
    color: #444;
    padding: 0px 10px;
}

.screen_finder dt:after {
    content: ":";
}

.screen_finder dd {
    margin: 0 0 0 130px;
    padding: 0 0 0.5em 0;
}

.screen_finder .info-title {
    text-align:right;
    font-weight:bold;
    padding-right:10px;
    vertical-align:top;    
}

input:disabled {
    background-color: #d9dde3;
}

select:disabled {
    background-color: #d9dde3;
    border-radius: 5px;
    height: 42px;
    border: none;
    padding-left:5px;
}

/*
if submit button is input type = "submit"
input[type=submit]:disabled
*/
button:disabled {
    opacity: 0.65; 
    cursor: not-allowed;
}

/*
input[type="checkbox"]:disabled + label {
    border-color: red;
    color: red;    
}
*/

input[type="checkbox"]:disabled + label, 
input[type="radio"]:disabled + label  {
    color: #B0B0B0  ;
}


input[type="checkbox"]:disabled + label span.midw-check, 
input[type="radio"]:disabled + label span.midw-check {
    background: #B0B0B0 ;
}

.download-results {
    font-size : 24px;
    color: #1946fa;
    /* #acc81e; Sidev Color */
    margin-left: 5px;     
}

.download-results:hover {
    color: #1946fa;    
}

.banner.banner-category .slide:before { 
    background-image: url("/images/banners/category-background.jpg"); 
    /*background-color: #173bd1;*/
    color: white;
    display: block;
    text-align: center;  
    line-height: 200px;
    height: 100%;
    margin:auto;
    width: 100%;    
    font-size: 120px;
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;    
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; 
}


.addressbook{ 

    min-height: 20px;
    /*padding: 5px 30px 5px 5px;*/
    margin-bottom: 20px;
    background-color: #f5f5f5;
    border: 1px solid #e3e3e3;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.05);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.05);
    padding: 0 15px;
}


.addressbook .button{ 
    padding: 0 0px;    
}

.greyline {
    border-bottom: 2px solid #D9DDE3;
    padding-bottom: 10px;    
}

/* new for 2018, fix grey line and add one to list view? */
/*.product-listview */
.product.product-thumb {
    border-bottom: 2px solid #D9DDE3;
    /*padding-bottom: 20px; */  
}

.comparison .product-thumb {
    height: 622px; 
}

.comparison .product.product-thumb {
    max-width: unset;
}
.comparison .product-number.greyline { 
    border: 0px;
}

.comparison .product-attributes h4 {
    padding: 5px 0px;
}


.compare-products {
    border: 2px solid #00e6c8;
    border-radius: 5px;
    padding: 10px 10px 5px 10px;
    margin: 5px 0 5px 0;
    display: none;
}

.compare-products.active {
    display: block;
}


.compare-products h3 {
    margin-top: 0;
    margin-bottom: 5px;
}

.compare-products ul {
    margin:0;
    list-style-type: none;
    overflow: hidden;
    /*max-height: 405px;*/
    transition:max-height 0.15s ease-in-out;
}

.compare-products ul li {
    margin: 5px 0 !important;
}

.compare-products ul.full-height {
    max-height: 10000px; 
} 

.compare-products ul li:nth-child(n+11) {
    display: none;
    opacity: 0;
    transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
} 

.compare-products ul li.active {
    opacity: 1;
    display: list-item;
}

.compare-products ul li label {
    font-weight: 400;
    font-size: 14px;
}

.product-compare-checkbox span.midw-check {
    margin-left: 0px !important;
    margin-right: 10px !important;
}

.compare-products .button { 
    display: none;
}

.compare-products .button.active { 
    display: inline-block;
}

.screentable {
    margin-left: -30px;
}

.comparison .search-results .slick-dots button {
    display: none;
}

.comparison .search-results .slick-dots {
    padding-right: 15px; 
    position: relative; 
    z-index: 1;
}

.comparison .search-results .slick-dots li {
    display: inline-block;
    vertical-align: top;
    margin: 0 5px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid #444;
}

.comparison .search-results .slick-dots li.slick-active {
    background-color: #444;
}

.product-compare-checkbox {
    display: none;
}

section.comparison .product-compare-checkbox, 
.results .product-compare-checkbox {
    display: block;
}

.search-results.slick-no-slide .slick-track {
    text-align: left;
}

.comparison .search-results .show-compare { 
    display: none;
}

.icon_image {
    width: 36px;
}


@media print {

    a[href]:after {
        content: "" !important;
    }

    header .mobile,  
    footer,
    body > div.bg-white, 
    .search-bar,
    .categories,
    .nav-topbar .mobile-nav #menu-toggle,
    header .container ul li:nth-child(n+2):nth-child(-n+9) {
        display: none; 
    }
    
    header{
        position: relative;
    }
    
    .nav-topbar{
        border-bottom: #F7F9FC;
        background-color: #FFFFFF; 
    }

    .nav-topbar .menu .logo {
        display: inline-block !important;
        position: relative;
    }  

    .header-bar{
        margin-bottom: 0px;
        padding: 0px;
    }    

    .container .breadcrumb{
        font-size: 10px;
    }

    .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
        float: left;
    }
    .col-sm-12 {
        width: 100%;
    }
    .col-sm-11 {
        width: 91.66666667%;
    }
    .col-sm-10 {
        width: 83.33333333%;
    }
    .col-sm-9 {
        width: 75%;
    }
    .col-sm-8 {
        width: 66.66666667%;
    }
    .col-sm-7 {
        width: 58.33333333%;
    }
    .col-sm-6 {
        width: 50%;
    }
    .col-sm-5 {
        width: 41.66666667%;
    }
    .col-sm-4 {
        width: 33.33333333%;
    }
    .col-sm-3 {
        width: 25%;
    }
    .col-sm-2 {
        width: 16.66666667%;
    }
    .col-sm-1 {
        width: 8.33333333%;
    }

    body {
        padding-top: 0px;
        line-height: 0;
        font-size: 14px; 
        margin: none;
    }
    
  
    .content-area{
        margin: 0px; 
        padding: 0.5em 1em;
    }

    .content-area h2 {
        font-size: 1.5em;
        font-weight: 300;
        line-height: 1.2em;
    }

    h1, h2 {
        margin-bottom: 0.5em;
    }

    .banner-vat, .split-header, .footer-icons, .header-bar .container{
        display: none;
    }
    
}

/** Cookie Consent **/
.freeprivacypolicy-com---nb-simple {
	max-width: 100% !important;
	color: #4A4A4A !important;
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
}
.freeprivacypolicy-com---palette-light .cc-nb-okagree,
.freeprivacypolicy-com---palette-light .cc-nb-reject,
.freeprivacypolicy-com---palette-light .cc-nb-changep,
.freeprivacypolicy-com---palette-light .cc-cp-foot-save
 {
	background-color: #8c69eb !important;
	border-radius: 5px !important;
    color: #ffffff !important;
}
.freeprivacypolicy-com---palette-light .cc-nb-okagree:hover,
.freeprivacypolicy-com---palette-light .cc-nb-reject:hover,
.freeprivacypolicy-com---palette-light .cc-nb-changep:hover,
.freeprivacypolicy-com---palette-light .cc-cp-foot-save:hover {
	opacity: 75%;
}
.freeprivacypolicy-com---palette-light .cc-cp-foot-byline {
    opacity: 0%;
}
.freeprivacypolicy-com---palette-light .cc-cp-foot-byline a {
    pointer-events: none;
    cursor: default;
}
/** /Cookie Consent **/