@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;700&display=swap");
/* This should contain all the base styling for the site. generic mixins */
/* Sizing and Spacing */
/* used on all cols and containers*/
/* Fonts */
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap");
/* Brand Colours */
/* Body */
/* General Borders - Thumbnails, Image, Search box, product tabs */
/* Top Bar */
/* Banner Message */
/* Header */
/* Department Navigation */
/* Vertical Navigation */
/* Newsletter */
/*$NewsletterBarBg:;
$NewsletterBarText:;*/
/* Footer */
/* Agent Bar */
/* Breadcrumbs Bar */
/* Forms / Tables */
/* Buttons */
/* Stock */
/* Product Ribbon */
/* all variables, sizes colors etc. */
/* This should contain all the base styling for the site. generic mixins */
/* Media Queries */
/* Common Transitions */
/* Helpful vender prefix minins */
@-webkit-keyframes rotating /* Safari and Chrome */ {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes rotating {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg); } }

/* other mixins */
/*** Common Classes ***/
.VAlignCols {
  /* this should be used on the containing div of the cols often the bootstrap .row */
  display: flex;
  align-items: center;
  flex-wrap: wrap; }

.ResponsiveImage img,
#infscr-loading img {
  height: auto !important;
  max-height: 100%;
  max-width: 100%;
  width: auto !important; }

.VAlignImg {
  padding-bottom: 100%;
  width: 100%;
  position: relative; }
  .VAlignImg a, .VAlignImg .AnchorPlaceholder {
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center; }

.ListReset {
  list-style: none;
  margin: 0;
  padding: 0; }
  .ListReset li {
    list-style: none;
    margin: 0;
    padding: 0; }

body {
  overflow-x: hidden;
  /* this is for the breakout class*/ }

.BreakOut {
  width: 100vw;
  position: relative;
  left: calc(-1 * (100vw - 100%) / 2);
  right: calc(-1 * (100vw - 100%) / 2); }

@media (min-width: 1200px) {
  /* B5 lg breakpoint */
  .SingleColumn {
    max-width: 66.66667%; } }

/*** Off canvas Menus ***/
.fs-navigation-overlay-nav.fs-navigation-enabled,
.fs-navigation-push-nav.fs-navigation-enabled,
.fs-navigation-reveal-nav.fs-navigation-enabled {
  height: 100% !important;
  width: 450px;
  max-width: 80%;
  background: #fff;
  border: none;
  color: #333;
  padding: 0;
  z-index: 4; }
  .fs-navigation-overlay-nav.fs-navigation-enabled:focus,
  .fs-navigation-push-nav.fs-navigation-enabled:focus,
  .fs-navigation-reveal-nav.fs-navigation-enabled:focus {
    outline: none; }
  .fs-navigation-overlay-nav.fs-navigation-enabled.fs-navigation-overlay-left-nav, .fs-navigation-overlay-nav.fs-navigation-enabled.fs-navigation-push-left-nav,
  .fs-navigation-push-nav.fs-navigation-enabled.fs-navigation-overlay-left-nav,
  .fs-navigation-push-nav.fs-navigation-enabled.fs-navigation-push-left-nav,
  .fs-navigation-reveal-nav.fs-navigation-enabled.fs-navigation-overlay-left-nav,
  .fs-navigation-reveal-nav.fs-navigation-enabled.fs-navigation-push-left-nav {
    -webkit-transform: translate3D(-100%, 0, 0);
    -ms-transform: translate3D(-100%, 0, 0);
    transform: translate3D(-100%, 0, 0); }
  .fs-navigation-overlay-nav.fs-navigation-enabled.fs-navigation-overlay-right-nav, .fs-navigation-overlay-nav.fs-navigation-enabled.fs-navigation-push-right-nav,
  .fs-navigation-push-nav.fs-navigation-enabled.fs-navigation-overlay-right-nav,
  .fs-navigation-push-nav.fs-navigation-enabled.fs-navigation-push-right-nav,
  .fs-navigation-reveal-nav.fs-navigation-enabled.fs-navigation-overlay-right-nav,
  .fs-navigation-reveal-nav.fs-navigation-enabled.fs-navigation-push-right-nav {
    -webkit-transform: translate3D(100%, 0, 0);
    -ms-transform: translate3D(100%, 0, 0);
    transform: translate3D(100%, 0, 0); }
  .fs-navigation-overlay-nav.fs-navigation-enabled.fs-navigation-open,
  .fs-navigation-push-nav.fs-navigation-enabled.fs-navigation-open,
  .fs-navigation-reveal-nav.fs-navigation-enabled.fs-navigation-open {
    -webkit-transform: translate3D(0, 0, 0);
    -ms-transform: translate3D(0, 0, 0);
    transform: translate3D(0, 0, 0); }
  .fs-navigation-overlay-nav.fs-navigation-enabled .asp-offcanvas-inner,
  .fs-navigation-push-nav.fs-navigation-enabled .asp-offcanvas-inner,
  .fs-navigation-reveal-nav.fs-navigation-enabled .asp-offcanvas-inner {
    position: relative; }
  .fs-navigation-overlay-nav.fs-navigation-enabled .container,
  .fs-navigation-push-nav.fs-navigation-enabled .container,
  .fs-navigation-reveal-nav.fs-navigation-enabled .container {
    width: 100%;
    max-width: 100%; }

.fs-navigation-overlay-content.fs-navigation-open:before {
  background: rgba(109, 109, 109, 0.5);
  z-index: 4; }

/*** End of Off canvas Menus ***/
/*** Forms ***/
.Error, .Required {
  color: #c10000; }

.form-control {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  border: 1px solid #d8d8d9;
  color: #58585a;
  background: #fff; }
  .form-control::placeholder {
    color: #58585a; }

/*** Style file inputs for bootstrap ***/
.btn-file {
  position: relative;
  overflow: hidden; }
  .btn-file input[type=file] {
    position: absolute;
    top: 0;
    right: 0;
    min-width: 100%;
    min-height: 100%;
    font-size: 100px;
    text-align: right;
    filter: alpha(opacity=0);
    opacity: 0;
    background: red;
    cursor: inherit;
    display: block; }

/*** End of Style file inputs for bootstrap ***/
fieldset div {
  padding-top: 4px;
  padding-bottom: 4px; }

/*** End of Forms ***/
/*** Buttons ***/
.btn, .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify a {
  background: #bd1722;
  border: none;
  box-shadow: none;
  text-shadow: none;
  color: #ffffff;
  padding: 8px 16px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }
  .btn:hover, .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify a:hover, .btn:focus, .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify a:focus,
  .btn .Active,
  .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify a .Active {
    background: #e42330;
    color: #ffffff; }
  .btn.fs-navigation-overlay-handle.fs-navigation-enabled, .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify a.fs-navigation-overlay-handle.fs-navigation-enabled {
    padding: 8px 16px; }

/*** End of Buttons ***/
/*** Tables ***/
/*** End of Tables ***/
/*** Checkout wizard reset ***/
table.Wizard,
table.Wizard > thead,
table.Wizard > tbody,
table.Wizard > tbody > tr,
table.Wizard > tbody > tr > td,
table.Wizard .WizardNav table,
table.Wizard .WizardNav table > tbody,
table.Wizard .WizardNav table > tbody > tr,
table.Wizard .WizardNav table > tbody > tr > td,
table.Wizard .Sidebar table {
  display: block;
  width: 100%;
  /** Width and Float required for IE9 **/
  float: left; }

table.Wizard > tbody > tr .WizardNav tr td {
  padding-top: 8px; }
  table.Wizard > tbody > tr .WizardNav tr td .Button {
    width: 100%; }

table.Wizard .WizardFinalNavBtns .Button {
  width: 100%; }

@media only screen and (min-width: 768px) {
  table.Wizard > tbody > tr .WizardNav tr {
    display: flex;
    justify-content: flex-end; }
    table.Wizard > tbody > tr .WizardNav tr td {
      width: auto;
      padding-left: 8px; }
  table.Wizard .WizardFinalNavBtns {
    display: flex;
    justify-content: flex-end; }
    table.Wizard .WizardFinalNavBtns > div {
      width: auto;
      padding-left: 8px; } }

@media only screen and (max-width: 767px) {
  table.Wizard .WizardFinalNavBtns > div {
    padding-top: 8px;
    padding-bottom: 8px; } }

/*** General ***/
body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  color: #58585a;
  background: #fff; }

a {
  color: #bd1722;
  text-decoration: none; }
  a:hover, a:focus {
    color: #e42330;
    cursor: pointer;
    text-decoration: none; }

*:focus {
  outline: none; }

h1, h2, h3,
.h1, .h2, .h3 {
  margin-top: 0;
  color: #bd1722; }

h1, .h1 {
  font-size: 35px; }

h2, .h2 {
  font-size: 28px; }

h3, .h3 {
  font-size: 18px; }

i, i.fa {
  font-weight: 300; }

.NotAvailable.Button {
  background: #c10000; }
  .NotAvailable.Button:hover, .NotAvailable.Button:focus {
    background: #f40000; }

.Favourites {
  position: absolute;
  top: 0;
  right: 16px;
  z-index: 2; }
  .Favourites .FavouritesBtn {
    padding: 8px; }

.ui-widget-header {
  background: #bd1722 !important; }

.NodeAttachedFiles {
  margin: 8px 0; }
  .NodeAttachedFiles p {
    margin-bottom: 4px; }
    .NodeAttachedFiles p i {
      margin-right: 4px; }

/*** End of General ***/
/*** Bootstrap Adjustments ***/
.navbar {
  margin-right: 0;
  margin-left: 0; }
  .navbar li a {
    text-shadow: none;
    -webkit-transition: all ease 0.5s;
    -moz-transition: all ease 0.5s;
    transition: all ease 0.5s; }
    .navbar li a:hover, .navbar li a:focus {
      background: #fff;
      color: #bd1722; }

.row {
  margin-right: -8px;
  margin-left: -8px; }

.container {
  padding-right: 8px;
  padding-left: 8px; }
  @media only screen and (max-width: 767px) {
    .container {
      width: 100%;
      max-width: 400px; } }
[class*="col-"] {
  padding-right: 8px;
  padding-left: 8px; }

.btn-lg, .ProductPageContainer .BuyBox .Next .Button {
  font-size: 18px;
  padding: 8px 16px;
  height: auto; }

.accordion-item {
  border-color: #d8d8d9;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px; }
  .accordion-item .accordion-header {
    border: none;
    background: none;
    padding: 0; }
    .accordion-item .accordion-header a {
      display: block;
      position: relative;
      outline: none;
      text-decoration: none;
      padding: 8px;
      color: #58585a; }

/*** End of Bootstrap Adjustments ***/
/*** Date Picker ***/
.ui-datepicker.ui-widget-content .ui-datepicker-header {
  border-color: #bd1722;
  background: #bd1722;
  color: #ffffff; }

.ui-datepicker.ui-widget-content .ui-state-default {
  border: 1px solid #d8d8d9;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58585a;
  padding: 8px;
  padding: 4px; }
  .ui-datepicker.ui-widget-content .ui-state-default.ui-state-highlight {
    border-color: #bd1722;
    background: rgba(189, 23, 34, 0.2); }

/*** End of Date Picker ***/
/*** Off canvas Menus ***/
.fs-navigation-overlay-nav.fs-navigation-enabled .asp-offcanvas-inner,
.fs-navigation-push-nav.fs-navigation-enabled .asp-offcanvas-inner,
.fs-navigation-reveal-nav.fs-navigation-enabled .asp-offcanvas-inner {
  padding: 8px;
  min-height: 100%; }
  .fs-navigation-overlay-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle,
  .fs-navigation-push-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle,
  .fs-navigation-reveal-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle {
    text-align: center;
    position: relative;
    margin-bottom: 20px; }
    .fs-navigation-overlay-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle .CloseBtn,
    .fs-navigation-push-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle .CloseBtn,
    .fs-navigation-reveal-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle .CloseBtn {
      position: absolute;
      top: 0;
      right: 0;
      display: block;
      cursor: pointer;
      width: 20px;
      height: 20px;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      color: #333 !important;
      border: 1px solid #333;
      text-align: center; }
      .fs-navigation-overlay-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle .CloseBtn i,
      .fs-navigation-push-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle .CloseBtn i,
      .fs-navigation-reveal-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle .CloseBtn i {
        line-height: 18px; }
    .fs-navigation-overlay-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle .Icon i,
    .fs-navigation-push-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle .Icon i,
    .fs-navigation-reveal-nav.fs-navigation-enabled .asp-offcanvas-inner .OffCanvasTitle .Icon i {
      display: inline-block;
      border: 1px solid #333;
      font-size: 35px;
      width: 60px;
      height: 60px;
      line-height: 56px;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      margin: 15px 0; }

.OffCanvasHandlerContainer {
  margin-bottom: 8px; }
  .OffCanvasHandlerContainer .Button {
    display: inline-block; }

.AccountMenuLinks {
  list-style: none;
  margin: 0;
  padding: 0; }
  .AccountMenuLinks li {
    list-style: none;
    margin: 0;
    padding: 0; }
  .AccountMenuLinks li {
    margin-bottom: 8px; }
    .AccountMenuLinks li a {
      display: flex;
      align-items: center;
      border: 1px solid #d8d8d9;
      background: #fff;
      /*@include border-radius($component-border-radius);*/
      color: #58585a;
      padding: 8px; }
      .AccountMenuLinks li a i {
        margin-right: 8px;
        color: #bd1722; }

/*** Mini Basket ***/
.MiniBasket .asp-offcanvas-inner {
  display: flex;
  flex-direction: column;
  height: 100%; }
  .MiniBasket .asp-offcanvas-inner .AjaxMiniBasket {
    overflow-x: hidden;
    display: flex;
    height: 100%; }
    .MiniBasket .asp-offcanvas-inner .AjaxMiniBasket form {
      width: 100%; }
    .MiniBasket .asp-offcanvas-inner .AjaxMiniBasket .MiniBasket {
      display: flex;
      flex-direction: column;
      height: 100%; }
      .MiniBasket .asp-offcanvas-inner .AjaxMiniBasket .MiniBasket .MiniBasketProducts {
        flex: 1;
        overflow-x: hidden; }

.MiniBasket .MiniBasketRow {
  padding-top: 8px;
  padding-bottom: 8px;
  position: relative;
  border-bottom: 2px solid #d8d8d9; }
  .MiniBasket .MiniBasketRow .Name .StockCode {
    display: block;
    font-weight: bold; }
  .MiniBasket .MiniBasketRow label {
    margin: 0; }
  .MiniBasket .MiniBasketRow .Qty {
    display: flex;
    align-items: center;
    justify-content: flex-end; }
    .MiniBasket .MiniBasketRow .Qty > [class*="col-"] {
      width: auto; }
    .MiniBasket .MiniBasketRow .Qty .Qty > label,
    .MiniBasket .MiniBasketRow .Qty .MiniBasketButton {
      padding: 0; }
    .MiniBasket .MiniBasketRow .Qty .Quantity {
      text-align: center;
      max-width: 70px; }
    .MiniBasket .MiniBasketRow .Qty .MiniBasketButton {
      display: flex;
      align-items: center; }
      .MiniBasket .MiniBasketRow .Qty .MiniBasketButton a:last-child {
        margin-left: 8px; }
  .MiniBasket .MiniBasketRow div.SubTotal {
    padding-top: 8px; }

.MiniBasket .MiniBasketTotals {
  padding-top: 8px;
  padding-bottom: 8px; }
  .MiniBasket .MiniBasketTotals .GrandTotalRow {
    font-weight: bold;
    font-size: 18px; }

/*** End of Mini Basket ***/
/*** End of Off canvas Menus ***/
/*** Owl Carousel ***/
.owl-carousel {
  position: relative; }
  .owl-carousel.row {
    width: auto; }
  .owl-carousel .owl-stage-outer {
    padding: 0;
    /* B5 */ }
  .owl-carousel .owl-item > [class*="col-"] {
    width: 100%; }
  .owl-carousel .owl-controls .owl-nav {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    height: 0; }
    .owl-carousel .owl-controls .owl-nav > div {
      position: absolute;
      top: 0;
      bottom: 0;
      margin: auto;
      font-size: 35px;
      line-height: 35px;
      height: 35px;
      color: #bd1722;
      text-shadow: 0 0 10px #fff; }
      .owl-carousel .owl-controls .owl-nav > div.disabled {
        opacity: 0.5; }
      .owl-carousel .owl-controls .owl-nav > div.owl-next {
        right: 0; }
      .owl-carousel .owl-controls .owl-nav > div.owl-prev {
        left: 0; }
  .owl-carousel .owl-controls .owl-dots {
    /*position:absolute;
            bottom:-10px;
            left:0;
            right:0;
            width:fit-content;
            margin:auto;*/
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }
    .owl-carousel .owl-controls .owl-dots .owl-dot {
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      height: 8px;
      width: 8px;
      margin: 4px;
      background: #fad9db; }
      .owl-carousel .owl-controls .owl-dots .owl-dot.active {
        background: #bd1722; }

/*** End of Owl Carousel ***/
/*** General Page Components ***/
.PageComponent {
  border: 1px solid #d8d8d9;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58585a;
  padding: 8px; }

/*** Delivery Cut Off ***/
.DeliveryCutOff {
  background: #bd1722;
  color: #ffffff;
  font-size: 12px; }
  @media only screen and (min-width: 768px) {
    .DeliveryCutOff {
      font-size: 14px; } }
  .DeliveryCutOff + .BannerMessage {
    border-top: 1px solid #fff; }
  .DeliveryCutOff .container {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px; }
    .DeliveryCutOff .container i {
      margin-right: 8px; }

/*** End of Delivery Cut off ***/
/*** Banner Message ***/
.BannerMessage {
  background: #bd1722;
  color: #ffffff;
  text-align: center;
  padding: 8px;
  font-size: 12px; }
  .BannerMessage p {
    margin: 0; }
  .BannerMessage a {
    color: #ffffff; }

@media only screen and (min-width: 768px) {
  .BannerMessage {
    font-size: 14px; } }

/*** End of Banner Message ***/
/*** Top Bar ***/
.TopBar {
  background: #EDEDED; }
  .TopBar ul li a {
    color: #58585a; }
    .TopBar ul li a i {
      color: #bd1722; }
    .TopBar ul li a:hover, .TopBar ul li a:focus {
      background: #fafafa; }

/*** End of Top Bar ***/
/*** Header ***/
.Header {
  background: #fff; }
  .Header .container > .row > [class*="col-"] {
    padding-top: 8px;
    padding-bottom: 8px; }
  .Header .Logo {
    text-align: center; }
  .Header .Search .AjaxSearchBoxContainer {
    border: 1px solid #d8d8d9;
    background: #EDEDED;
    position: relative;
    padding: 0 32px 0 0; }
    .Header .Search .AjaxSearchBoxContainer > input.Text {
      background: transparent;
      border: none;
      -moz-box-shadow: none;
      -webkit-box-shadow: none;
      box-shadow: none;
      width: 100%;
      height: 44px;
      float: none;
      margin: 0; }
    .Header .Search .AjaxSearchBoxContainer > .SearchBtn {
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      margin: auto;
      height: 32px;
      width: 32px;
      line-height: 32px;
      border: none;
      background: none;
      -moz-box-shadow: none;
      -webkit-box-shadow: none;
      box-shadow: none;
      color: #787878;
      padding: 0;
      font-size: 18px; }
    .Header .Search .AjaxSearchBoxContainer .AjaxSearchResults {
      display: none;
      position: absolute;
      top: 100%;
      right: -1px;
      left: -1px;
      z-index: 2;
      border: 1px solid #d8d8d9;
      background: #EDEDED;
      padding: 8px; }
      .Header .Search .AjaxSearchBoxContainer .AjaxSearchResults .AjaxSearchResultsProducts {
        overflow: auto; }
      .Header .Search .AjaxSearchBoxContainer .AjaxSearchResults .AjaxSearchProduct .row {
        display: flex;
        align-items: center; }
      .Header .Search .AjaxSearchBoxContainer .AjaxSearchResults .AjaxSearchProduct a {
        display: block;
        padding: 8px;
        text-decoration: none; }
        .Header .Search .AjaxSearchBoxContainer .AjaxSearchResults .AjaxSearchProduct a .ProductInfo .StockCode,
        .Header .Search .AjaxSearchBoxContainer .AjaxSearchResults .AjaxSearchProduct a .ProductInfo .Price {
          color: #787878; }
      .Header .Search .AjaxSearchBoxContainer .AjaxSearchResults .MoreResults {
        margin-top: 8px; }
        .Header .Search .AjaxSearchBoxContainer .AjaxSearchResults .MoreResults .Button {
          width: 100%; }
  .Header .Search.navbar-collapse.in {
    overflow: visible;
    /* bootstap add auto*/ }
  .Header .HeaderControls ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: flex-end; }
    .Header .HeaderControls ul li {
      list-style: none;
      margin: 0;
      padding: 0; }
    .Header .HeaderControls ul li a {
      padding: 8px;
      text-align: center;
      display: block;
      text-decoration: none; }
      .Header .HeaderControls ul li a i {
        display: block;
        font-size: 28px;
        margin: 0 auto; }
      .Header .HeaderControls ul li a .Text {
        margin-top: 8px;
        color: #58585a;
        display: inline-block;
        white-space: nowrap;
        text-overflow: ellipsis;
        max-width: 80px;
        overflow: hidden; }
      .Header .HeaderControls ul li a.MiniBasketHandler, .Header .HeaderControls ul li a.BasketLink {
        position: relative; }
        .Header .HeaderControls ul li a.MiniBasketHandler .Count, .Header .HeaderControls ul li a.BasketLink .Count {
          position: absolute;
          top: 0;
          right: 0;
          -webkit-border-radius: 50%;
          -moz-border-radius: 50%;
          border-radius: 50%;
          height: 20px;
          width: 20px;
          line-height: 20px;
          background: #58585a;
          color: #fff;
          font-size: 9.8px; }
  @media only screen and (max-width: 767px) {
    .Header .container {
      /* was 100VW but this didn't account for the scroll bar*/
      max-width: none; }
      .Header .container .Logo,
      .Header .container .HeaderControls > ul {
        max-width: 400px;
        margin-right: auto;
        margin-left: auto; }
      .Header .container .HeaderControls {
        background: #fff;
        padding-top: 0 !important;
        padding-bottom: 0 !important; }
        .Header .container .HeaderControls li a, .Header .container .HeaderControls li i {
          color: #787878; }
        .Header .container .HeaderControls li:nth-child(odd) {
          background: white; }
        .Header .container .HeaderControls li:first-child {
          margin-right: auto; }
      .Header .container .SearchWrapper {
        padding: 0 !important;
        min-height: auto; }
        .Header .container .SearchWrapper .AjaxSearchBoxContainer {
          max-width: 400px;
          margin: 8px auto; } }
  @media only screen and (min-width: 768px) {
    .Header .Logo {
      text-align: left;
      order: 0; }
    .Header .HeaderControls {
      order: 2; }
      .Header .HeaderControls ul li a i {
        color: #bd1722; }
    .Header .SearchWrapper {
      order: 1; } }
  @media only screen and (min-width: 992px) {
    .Header .HeaderControls ul li a .Text {
      max-width: 100px; } }
/*** End of Header ***/
/*** USPs ***/
.USPs {
  background: white;
  position: relative; }
  .USPs .USPItem {
    padding: 8px;
    display: flex;
    justify-content: center;
    align-items: center; }
    .USPs .USPItem i {
      margin-right: 8px; }

/*** End of USPs ***/
/*** Navigation Bar ***/
.ProdNav ul, .VerticalNav ul, .NavigationBar ul {
  list-style: none;
  margin: 0;
  padding: 0;
  float: none; }
  .ProdNav ul li, .VerticalNav ul li, .NavigationBar ul li {
    list-style: none;
    margin: 0;
    padding: 0; }
  .ProdNav ul li, .VerticalNav ul li, .NavigationBar ul li {
    float: none; }
    .ProdNav ul li a, .VerticalNav ul li a, .NavigationBar ul li a {
      display: block; }

.ProdNav ul > li > a, .VerticalNav ul > li > a, .NavigationBar ul > li > a {
  position: relative; }

.ProdNav ul > li.HasSub > a, .VerticalNav ul > li.HasSub > a, .NavigationBar ul > li.HasSub > a {
  padding-right: 25px; }
  .ProdNav ul > li.HasSub > a:after, .VerticalNav ul > li.HasSub > a:after, .NavigationBar ul > li.HasSub > a:after {
    content: '\f054';
    font-family: "Font Awesome 6 Pro";
    position: absolute;
    top: 0;
    right: 5px;
    bottom: 0;
    margin: auto;
    line-height: 30px;
    height: 30px; }

.NavigationBar .container > ul.navbar {
  justify-content: center; }

.NavigationBar .container > ul > li {
  position: static; }
  .NavigationBar .container > ul > li > a {
    background: #fff;
    color: #787878; }
    .NavigationBar .container > ul > li > a:hover, .NavigationBar .container > ul > li > a:focus {
      background: white;
      color: #787878; }

.NavigationBar.fs-navigation-enabled ul > li {
  margin-bottom: 1px;
  width: 100%;
  /* Added for B5 */ }
  .NavigationBar.fs-navigation-enabled ul > li > a {
    padding: 8px;
    /* Added for B5 */ }

.NavigationBar:not(.fs-navigation-enabled) {
  background: #fff; }
  .NavigationBar:not(.fs-navigation-enabled) .container > ul {
    float: none;
    position: relative;
    width: 100%;
    text-align: center; }
    .NavigationBar:not(.fs-navigation-enabled) .container > ul > li {
      text-align: center;
      float: none;
      display: inline-block; }
      .NavigationBar:not(.fs-navigation-enabled) .container > ul > li > a {
        background: none;
        padding: 12px 10px; }
      .NavigationBar:not(.fs-navigation-enabled) .container > ul > li.HasSub > a {
        padding-right: 25px; }
      .NavigationBar:not(.fs-navigation-enabled) .container > ul > li.HasSub > a:after {
        content: '\f078'; }

.NavigationBar.fs-navigation-enabled ul + ul {
  margin-top: 8px; }

.VerticalNav {
  margin-bottom: 8px;
  background: #fff;
  border: 1px solid #bd1722; }
  .VerticalNav h3 {
    background: #bd1722;
    color: #ffffff;
    text-align: center;
    padding: 16px 8px;
    margin: 0; }
    .VerticalNav h3 .ClearAll {
      color: #ffffff;
      position: absolute;
      top: 16px;
      right: 22px;
      line-height: 50px; }
  .VerticalNav .VerticalProductNav ul > li {
    width: 100%; }
    .VerticalNav .VerticalProductNav ul > li > a {
      padding: 8px 16px;
      color: #58585a; }
      .VerticalNav .VerticalProductNav ul > li > a:after {
        color: #bd1722;
        right: 8px; }
      .VerticalNav .VerticalProductNav ul > li > a:hover, .VerticalNav .VerticalProductNav ul > li > a:focus {
        background: #f2f2f2; }
    .VerticalNav .VerticalProductNav ul > li:not(:first-child) > a {
      position: relative; }
      .VerticalNav .VerticalProductNav ul > li:not(:first-child) > a:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 1px;
        background: #e6e6e6; }
  @media only screen and (min-width: 992px) {
    .VerticalNav .VerticalProductNav ul > li .SubNavContainer {
      top: 0;
      left: 100%;
      width: calc(992px - 100% - 24px);
      /* 3 x grid spacing to deal with nav left padding and prim horizontal padding */ } }
  @media only screen and (min-width: 1200px) {
    .VerticalNav .VerticalProductNav ul > li .SubNavContainer {
      width: calc(1170px - 100% - 24px); } }
.SubNavContainer {
  background: #fff;
  -moz-box-shadow: 0 0 10px rgba(88, 88, 90, 0.5);
  -webkit-box-shadow: 0 0 10px rgba(88, 88, 90, 0.5);
  box-shadow: 0 0 10px rgba(88, 88, 90, 0.5);
  padding: 8px !important;
  position: absolute;
  left: 0;
  right: 0;
  text-align: left;
  display: block;
  opacity: 0;
  visibility: hidden;
  z-index: 0; }
  .SubNavContainer .SubNav {
    -webkit-column-count: 4;
    /* Chrome, Safari, Opera */
    -moz-column-count: 4;
    /* Firefox */
    column-count: 4;
    padding: 8px !important; }
    .SubNavContainer .SubNav > li {
      height: 100%;
      overflow: auto; }
      .SubNavContainer .SubNav > li > a {
        border-bottom: 1px solid #bd1722;
        font-weight: bold; }
      .SubNavContainer .SubNav > li a {
        display: block;
        color: #58585a;
        padding: 8px; }
  .SubNavContainer .MenuImage {
    display: block;
    padding: 8px !important;
    float: right;
    width: 25%; }
    .SubNavContainer .MenuImage + .SubNav {
      float: left;
      width: 75%;
      -webkit-column-count: 3;
      /* Chrome, Safari, Opera */
      -moz-column-count: 3;
      /* Firefox */
      column-count: 3; }

.fs-navigation-enabled .SubNavContainer .MenuImage {
  display: none; }
  .fs-navigation-enabled .SubNavContainer .MenuImage + .SubNav {
    float: none;
    width: 100%; }

.HasSub:hover .SubNavContainer {
  opacity: 1;
  visibility: visible;
  z-index: 3;
  /* to sit over the home slider & thumbnail prod ribbons */ }

.fs-navigation-element.fs-navigation-enabled .HasSub > .SubNavContainer {
  display: none !important; }

.fs-navigation-element.fs-navigation-enabled .SubNavContainer {
  opacity: 1;
  visibility: visible; }
  .fs-navigation-element.fs-navigation-enabled .SubNavContainer .SubNav {
    -webkit-column-count: auto;
    /* Chrome, Safari, Opera */
    -moz-column-count: auto;
    /* Firefox */
    column-count: auto; }

.OffCanvaSubMenu,
.OffCanvaSubSubMenu {
  display: none; }

.fs-navigation-enabled.NavigationBar .asp-offcanvas-inner, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner {
  height: 100%; }
  .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .VerticalProductNav, .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .container, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .VerticalProductNav, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .container {
    height: calc(100% - 40px);
    overflow-y: auto;
    padding: 0; }
  .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubMenu,
  .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubSubMenu, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubMenu,
  .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubSubMenu {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background: #fff;
    left: -100%;
    -webkit-transition: left ease 0.5s;
    -moz-transition: left ease 0.5s;
    transition: left ease 0.5s;
    padding: 8px; }
    .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubMenu.Open,
    .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubSubMenu.Open, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubMenu.Open,
    .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubSubMenu.Open {
      left: 0; }
    .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubMenu .SubNavContainer,
    .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubSubMenu .SubNavContainer, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubMenu .SubNavContainer,
    .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubSubMenu .SubNavContainer {
      display: block;
      background: none;
      -moz-box-shadow: none;
      -webkit-box-shadow: none;
      box-shadow: none;
      padding: 0 !important;
      position: static; }
      .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubMenu .SubNavContainer .SubSubNav,
      .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubSubMenu .SubNavContainer .SubSubNav, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubMenu .SubNavContainer .SubSubNav,
      .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubSubMenu .SubNavContainer .SubSubNav {
        display: none;
        padding: 0; }
    .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubMenu ul > li,
    .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubMenu ul > li,
    .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li {
      position: static;
      margin-bottom: 1px; }
      .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubMenu ul > li > a,
      .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li > a, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubMenu ul > li > a,
      .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li > a {
        background: #fff;
        color: #787878;
        padding: 8px;
        font-weight: normal; }
        .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubMenu ul > li > a:hover, .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubMenu ul > li > a:focus,
        .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li > a:hover,
        .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li > a:focus, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubMenu ul > li > a:hover, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubMenu ul > li > a:focus,
        .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li > a:hover,
        .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li > a:focus {
          background: white;
          color: #787878; }
      .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubMenu ul > li.HasSubSub > a,
      .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li.HasSubSub > a, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubMenu ul > li.HasSubSub > a,
      .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li.HasSubSub > a {
        position: relative;
        padding-right: 25px; }
        .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubMenu ul > li.HasSubSub > a:after,
        .fs-navigation-enabled.NavigationBar .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li.HasSubSub > a:after, .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubMenu ul > li.HasSubSub > a:after,
        .fs-navigation-enabled.VerticalNav .asp-offcanvas-inner .OffCanvaSubSubMenu ul > li.HasSubSub > a:after {
          content: '\f054';
          font-family: "Font Awesome 6 Pro";
          position: absolute;
          top: 0;
          right: 5px;
          bottom: 0;
          margin: auto;
          line-height: 30px;
          height: 30px; }

/*** End of Department Navigation ***/
/*** Agent Bar ***/
.AgentBar {
  background: #EDEDED;
  color: #2c2c2c;
  text-align: right;
  padding-top: 8px;
  padding-bottom: 8px;
  font-size: 12px; }
  .AgentBar a:not(.Button) {
    color: #ffffff; }
  .AgentBar .Button {
    margin-left: 8px;
    font-size: 12px;
    padding: 4px 8px; }

/*** End of Agent Bar ***/
/*** Filter Navigation ***/
.FeatureFilter .FilterGroupWrapper {
  position: relative; }
  .FeatureFilter .FilterGroupWrapper .Loading {
    display: none;
    text-align: center;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.5);
    z-index: 3; }
    .FeatureFilter .FilterGroupWrapper .Loading img {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      margin: auto; }
  .FeatureFilter .FilterGroupWrapper .FilterGroup .FilterGroupTitle {
    position: relative;
    cursor: pointer;
    /* js to open and close Group */
    padding: 8px 16px;
    /* icons are usually square fo the size of the icon plus 5px for spacing */
    border-bottom: 1px solid #cccccc; }
    .FeatureFilter .FilterGroupWrapper .FilterGroup .FilterGroupTitle:before {
      position: absolute;
      top: 0;
      right: 8px;
      bottom: 0;
      margin: auto;
      height: 18px;
      line-height: 18px;
      font-size: 18px;
      font-family: "Font Awesome 6 Pro";
      content: "\f107";
      color: #bd1722;
      -webkit-transition: transform ease 1s;
      -moz-transition: transform ease 1s;
      transition: transform ease 1s; }
    .FeatureFilter .FilterGroupWrapper .FilterGroup .FilterGroupTitle.Open:before {
      -webkit-transform: rotate(180deg);
      -moz-transform: rotate(180deg);
      transform: rotate(180deg); }
  .FeatureFilter .FilterGroupWrapper .FilterGroup .FilterGroupContent {
    display: none;
    /* js to open and close Group */
    padding: 8px 16px; }
    .FeatureFilter .FilterGroupWrapper .FilterGroup .FilterGroupContent .Feature li {
      padding-left: 20px;
      position: relative; }
      .FeatureFilter .FilterGroupWrapper .FilterGroup .FilterGroupContent .Feature li label {
        display: inline-block;
        font-weight: normal; }
      .FeatureFilter .FilterGroupWrapper .FilterGroup .FilterGroupContent .Feature li input[type='checkbox'] {
        position: absolute;
        top: 2px;
        left: 0;
        margin: 0; }
    .FeatureFilter .FilterGroupWrapper .FilterGroup .FilterGroupContent.DepartmentLinks ul li {
      padding-left: 0; }
      .FeatureFilter .FilterGroupWrapper .FilterGroup .FilterGroupContent.DepartmentLinks ul li a {
        color: #58585a;
        padding: 2px 0; }
  .FeatureFilter .FilterGroupWrapper .RestBtnWrap {
    padding-top: 8px;
    padding-bottom: 8px; }

/*** End of Filter Navigation ***/
/*** Account Overview ***/
ul.AccountPageLinks {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  margin-right: -8px;
  margin-left: -8px; }
  ul.AccountPageLinks li {
    list-style: none;
    margin: 0;
    padding: 0; }
  ul.AccountPageLinks li {
    padding: 8px;
    width: 100%; }
    ul.AccountPageLinks li a {
      border: 1px solid #d8d8d9;
      background: #fff;
      /*@include border-radius($component-border-radius);*/
      color: #58585a;
      padding: 8px;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      height: 100%;
      text-align: center; }
      ul.AccountPageLinks li a i {
        display: block;
        color: #bd1722;
        font-size: 35px;
        line-height: 35px;
        padding-bottom: 8px;
        margin-bottom: auto;
        /* this will align the icon to the top of the box */ }
  @media only screen and (min-width: 768px) {
    ul.AccountPageLinks li {
      width: 50%; } }
  @media only screen and (min-width: 992px) {
    ul.AccountPageLinks li {
      width: 25%; } }
/*** End of Account Overview ***/
/*** Repeat Orders ***/
.OrderHistoryTable .OrderRepeatButtons .ItemContainer {
  display: flex;
  align-items: center; }
  .OrderHistoryTable .OrderRepeatButtons .ItemContainer > * {
    margin-left: 8px; }
  .OrderHistoryTable .OrderRepeatButtons .ItemContainer .Button {
    width: fit-content; }

/*** End of Repeat Orders ***/
/*** Footer ***/
.Footer {
  background: #58585a;
  color: #ffffff;
  padding-top: 16px;
  padding-bottom: 16px; }
  .Footer .container .row {
    display: flex;
    flex-wrap: wrap; }
    .Footer .container .row .FooterCol {
      padding-top: 8px;
      padding-bottom: 16px; }
      .Footer .container .row .FooterCol h4 {
        text-transform: uppercase; }
      .Footer .container .row .FooterCol a {
        color: #ffffff; }
      .Footer .container .row .FooterCol p {
        margin: 0; }
      .Footer .container .row .FooterCol .FooterText .ContactDetails a {
        display: block;
        padding-left: 30px;
        position: relative;
        margin-bottom: 4px; }
        .Footer .container .row .FooterCol .FooterText .ContactDetails a i {
          position: absolute;
          top: 0;
          left: 0;
          color: #ffffff; }
      .Footer .container .row .FooterCol .FooterText .FooterNewsletterForm input,
      .Footer .container .row .FooterCol .FooterText .FooterNewsletterForm .Button {
        margin-top: 8px; }
      .Footer .container .row .FooterCol .FooterLinks {
        list-style: none;
        margin: 0;
        padding: 0; }
        .Footer .container .row .FooterCol .FooterLinks li {
          list-style: none;
          margin: 0;
          padding: 0; }
        .Footer .container .row .FooterCol .FooterLinks li {
          margin-bottom: 4px; }
  .Footer .container .Copyright {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: center;
    color: #ffffff; }
    .Footer .container .Copyright li {
      list-style: none;
      margin: 0;
      padding: 0; }
    .Footer .container .Copyright li {
      display: inline-block; }
      .Footer .container .Copyright li a {
        color: #ffffff; }
      .Footer .container .Copyright li:not(:first-child):before {
        content: "";
        height: 14px;
        width: 1px;
        display: inline-block;
        vertical-align: middle;
        background: #ffffff;
        margin: 0 4px; }

/*** End of Footer ***/
/*** Cookie Concent ***/
.CookieConsent {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 5;
  background: #fff;
  color: #58585a;
  -moz-box-shadow: 0 0 10px #58585a;
  -webkit-box-shadow: 0 0 10px #58585a;
  box-shadow: 0 0 10px #58585a; }
  .CookieConsent p {
    margin: 0; }
  .CookieConsent .row {
    /* this should be used on the containing div of the cols often the bootstrap .row */
    display: flex;
    align-items: center;
    flex-wrap: wrap; }
    .CookieConsent .row > div {
      padding-top: 8px;
      padding-bottom: 8px; }

/*** End ofCookie Concent ***/
/*** Page Content ***/
body.fs-navigation-lock .PageContent {
  z-index: auto; }

.PageContent {
  z-index: 1;
  position: relative; }
  .PageContent > .row > div {
    padding-top: 16px;
    padding-bottom: 16px; }
  @media only screen and (max-width: 991px) {
    .PageContent .VerticalNavCol {
      z-index: 5;
      /* zindex issue with ofcanvas menus with VertialNav */
      padding-top: 0 !important;
      padding-bottom: 0 !important; } }
/*** End of Page Content ***/
/*** Home Page / Department Modules ***/
.HomeModules > div:not(.SliderModule),
.Modules > div:not(.SliderModule) {
  margin-top: 50px; }

.HomeModules .FeatureBlocksModule + .FeatureBlocksModule,
.Modules .FeatureBlocksModule + .FeatureBlocksModule {
  margin-top: 0; }

.HomeModules h2,
.Modules h2 {
  margin-top: 8px; }

.HomeModules .SliderModule,
.Modules .SliderModule {
  margin-bottom: 8px; }
  .HomeModules .SliderModule:first-child,
  .Modules .SliderModule:first-child {
    margin-top: -16px; }
  .HomeModules .SliderModule .owl-dots,
  .Modules .SliderModule .owl-dots {
    bottom: 0; }
  .HomeModules .SliderModule .Slide a,
  .Modules .SliderModule .Slide a {
    display: block; }
    .HomeModules .SliderModule .Slide a img,
    .Modules .SliderModule .Slide a img {
      display: block;
      margin: auto; }
    .HomeModules .SliderModule .Slide a .SliderModuleTextOverlay,
    .Modules .SliderModule .Slide a .SliderModuleTextOverlay {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      display: flex;
      align-items: center; }
      .HomeModules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner,
      .Modules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner {
        padding: 0 24px; }
        @media only screen and (min-width: 992px) {
          .HomeModules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner,
          .Modules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner {
            width: 50%; } }
        .HomeModules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner h2,
        .HomeModules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner .Description,
        .Modules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner h2,
        .Modules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner .Description {
          color: #ffffff;
          text-shadow: 1px 1px 2px #58585a; }
        .HomeModules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner h2,
        .Modules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner h2 {
          margin: 0 0 8px 0;
          font-weight: bold;
          text-transform: uppercase; }
          @media only screen and (min-width: 768px) {
            .HomeModules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner h2,
            .Modules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner h2 {
              font-size: 35px; } }
        .HomeModules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner .Description,
        .Modules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner .Description {
          margin-bottom: 8px; }
          @media only screen and (min-width: 768px) {
            .HomeModules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner .Description,
            .Modules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner .Description {
              font-size: 18px; } }
          .HomeModules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner .Description p,
          .Modules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner .Description p {
            margin-bottom: 8px; }
            .HomeModules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner .Description p:last-child,
            .Modules .SliderModule .Slide a .SliderModuleTextOverlay .OverlayInner .Description p:last-child {
              margin-bottom: 0; }
  @media only screen and (max-width: 767px) {
    .HomeModules .SliderModule .Slide:not(:first-child),
    .Modules .SliderModule .Slide:not(:first-child) {
      display: none; } }
.HomeModules .DefaultModule .row,
.Modules .DefaultModule .row {
  display: flex;
  align-items: center;
  /*@include respond-to(md-max){
	            flex-wrap:wrap;
            }*/ }
  @media only screen and (min-width: 768px) {
    .HomeModules .DefaultModule .row,
    .Modules .DefaultModule .row {
      flex-wrap: unset; }
      .HomeModules .DefaultModule .row > *,
      .Modules .DefaultModule .row > * {
        flex-shrink: unset; } }
  .HomeModules .DefaultModule .row > div,
  .Modules .DefaultModule .row > div {
    padding-top: 16px;
    padding-bottom: 16px; }

.HomeModules .DefaultModule p:last-child,
.Modules .DefaultModule p:last-child {
  margin-bottom: 0; }

.HomeModules .FeatureBlocksModule .row > div,
.HomeModules .FeatureBlocksModule .row .FeatureBlock,
.Modules .FeatureBlocksModule .row > div,
.Modules .FeatureBlocksModule .row .FeatureBlock {
  padding: 8px; }

.HomeModules .FeatureBlocksModule a,
.Modules .FeatureBlocksModule a {
  display: block; }

.HomeModules .PanelsModule .Panels,
.Modules .PanelsModule .Panels {
  display: flex;
  flex-wrap: wrap; }
  .HomeModules .PanelsModule .Panels .PanelWrapper,
  .Modules .PanelsModule .Panels .PanelWrapper {
    padding: 0;
    display: flex;
    flex-wrap: wrap; }
    .HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb,
    .Modules .PanelsModule .Panels .PanelWrapper .PanelThumb {
      padding: 8px; }
      .HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a,
      .Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a {
        display: block;
        height: 100%;
        background: #bd1722;
        color: #ffffff;
        padding: 0; }
        .HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ImageWrapper,
        .Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ImageWrapper {
          padding: 0;
          height: 100%; }
          .HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ImageWrapper .background-image-wrap,
          .Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ImageWrapper .background-image-wrap {
            height: 100%; }
        .HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper,
        .Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper {
          display: flex;
          height: 100%; }
          .HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper .InformationWrapper,
          .Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper .InformationWrapper {
            display: flex;
            flex-direction: column;
            padding: 8px;
            justify-content: space-between; }
            .HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper .InformationWrapper .Name,
            .Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper .InformationWrapper .Name {
              font-size: 18px;
              font-weight: bold;
              color: #ffffff; }
            @media (min-width: 992px) and (max-width: 1199px) {
              .HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper .InformationWrapper p,
              .Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper .InformationWrapper p {
                font-size: 9.8px; } }
        .HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a > .Name,
        .Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a > .Name {
          background: #bd1722;
          position: absolute;
          top: 8px;
          left: 32px;
          min-width: 50%;
          max-width: 50%;
          font-size: 28px;
          font-weight: bold;
          padding: 8px;
          color: #ffffff;
          text-align: center; }
        .HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a:hover, .HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a:focus,
        .Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a:hover,
        .Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a:focus {
          opacity: 0.8; }

.HomeModules .BrandCarouselModule .VAlignImg,
.Modules .BrandCarouselModule .VAlignImg {
  padding-bottom: 50%; }

@media only screen and (min-width: 768px) {
  .HomeModules .FeatureBlocksModule .row,
  .Modules .FeatureBlocksModule .row {
    display: flex;
    justify-content: center;
    flex-wrap: unset; }
    .HomeModules .FeatureBlocksModule .row .FeatureBlock,
    .Modules .FeatureBlocksModule .row .FeatureBlock {
      flex-shrink: unset; } }

.HomeModules .TabsModule .ModuleTabTitle ul,
.Modules .TabsModule .ModuleTabTitle ul {
  padding: 0;
  margin: 0; }
  .HomeModules .TabsModule .ModuleTabTitle ul li,
  .Modules .TabsModule .ModuleTabTitle ul li {
    list-style: none; }
    .HomeModules .TabsModule .ModuleTabTitle ul li a,
    .Modules .TabsModule .ModuleTabTitle ul li a {
      background: #bd1722;
      color: #ffffff;
      padding: 16px;
      text-align: left;
      margin-bottom: 8px;
      display: block; }
      @media only screen and (min-width: 768px) {
        .HomeModules .TabsModule .ModuleTabTitle ul li a,
        .Modules .TabsModule .ModuleTabTitle ul li a {
          width: 90%; } }
    .HomeModules .TabsModule .ModuleTabTitle ul li.ActiveTab a,
    .HomeModules .TabsModule .ModuleTabTitle ul li a:hover,
    .Modules .TabsModule .ModuleTabTitle ul li.ActiveTab a,
    .Modules .TabsModule .ModuleTabTitle ul li a:hover {
      background: #bd1722;
      color: #ffffff;
      position: relative; }
      @media only screen and (min-width: 768px) {
        .HomeModules .TabsModule .ModuleTabTitle ul li.ActiveTab a:after,
        .HomeModules .TabsModule .ModuleTabTitle ul li a:hover:after,
        .Modules .TabsModule .ModuleTabTitle ul li.ActiveTab a:after,
        .Modules .TabsModule .ModuleTabTitle ul li a:hover:after {
          content: "";
          position: absolute;
          height: 0;
          width: 0;
          left: 100%;
          top: 0;
          border: 26px solid transparent;
          border-left: 26px solid #bd1722; } }
.HomeModules .TabsModule .ModuleTabContent .ModuleTabContentInner,
.Modules .TabsModule .ModuleTabContent .ModuleTabContentInner {
  display: none; }
  .HomeModules .TabsModule .ModuleTabContent .ModuleTabContentInner:first-child,
  .Modules .TabsModule .ModuleTabContent .ModuleTabContentInner:first-child {
    display: block; }

.HomeModules .CategoriesModule .Categories,
.Modules .CategoriesModule .Categories {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }
  .HomeModules .CategoriesModule .Categories .Category,
  .Modules .CategoriesModule .Categories .Category {
    padding: 8px; }
    .HomeModules .CategoriesModule .Categories .Category .Inner,
    .Modules .CategoriesModule .Categories .Category .Inner {
      padding: 8px;
      border: 1px solid #d8d8d9; }
      .HomeModules .CategoriesModule .Categories .Category .Inner .CategoryList,
      .Modules .CategoriesModule .Categories .Category .Inner .CategoryList {
        text-align: left; }
        .HomeModules .CategoriesModule .Categories .Category .Inner .CategoryList .Name,
        .Modules .CategoriesModule .Categories .Category .Inner .CategoryList .Name {
          border-bottom: 1px solid #d8d8d9;
          margin-bottom: 8px; }
          .HomeModules .CategoriesModule .Categories .Category .Inner .CategoryList .Name a,
          .Modules .CategoriesModule .Categories .Category .Inner .CategoryList .Name a {
            display: block;
            font-size: 18px; }
        .HomeModules .CategoriesModule .Categories .Category .Inner .CategoryList ul,
        .Modules .CategoriesModule .Categories .Category .Inner .CategoryList ul {
          padding-left: 16px;
          margin: 0; }
          .HomeModules .CategoriesModule .Categories .Category .Inner .CategoryList ul li::marker,
          .Modules .CategoriesModule .Categories .Category .Inner .CategoryList ul li::marker {
            color: #bd1722; }
          .HomeModules .CategoriesModule .Categories .Category .Inner .CategoryList ul li a,
          .Modules .CategoriesModule .Categories .Category .Inner .CategoryList ul li a {
            color: #58585a; }

.HomeModules .ProductModule,
.Modules .ProductModule {
  position: relative; }
  .HomeModules .ProductModule .owl-controls,
  .Modules .ProductModule .owl-controls {
    margin-bottom: 16px; }
  .HomeModules .ProductModule .ProductModuleBackgroundImage,
  .Modules .ProductModule .ProductModuleBackgroundImage {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }
    .HomeModules .ProductModule .ProductModuleBackgroundImage img,
    .Modules .ProductModule .ProductModuleBackgroundImage img {
      object-fit: cover;
      height: 100%;
      width: 100%; }
  .HomeModules .ProductModule .container .ProductWrapper,
  .Modules .ProductModule .container .ProductWrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
    .HomeModules .ProductModule .container .ProductWrapper .Product .Inner,
    .Modules .ProductModule .container .ProductWrapper .Product .Inner {
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 32px 8px; }
      @media only screen and (min-width: 768px) {
        .HomeModules .ProductModule .container .ProductWrapper .Product .Inner,
        .Modules .ProductModule .container .ProductWrapper .Product .Inner {
          padding: 32px; } }
      .HomeModules .ProductModule .container .ProductWrapper .Product .Inner .ProductRibbon,
      .Modules .ProductModule .container .ProductWrapper .Product .Inner .ProductRibbon {
        left: 8px; }
        .HomeModules .ProductModule .container .ProductWrapper .Product .Inner .ProductRibbon .RibbonInner,
        .Modules .ProductModule .container .ProductWrapper .Product .Inner .ProductRibbon .RibbonInner {
          -webkit-border-radius: 5px;
          -moz-border-radius: 5px;
          border-radius: 5px; }
        .HomeModules .ProductModule .container .ProductWrapper .Product .Inner .ProductRibbon:after,
        .Modules .ProductModule .container .ProductWrapper .Product .Inner .ProductRibbon:after {
          display: none; }
    .HomeModules .ProductModule .container .ProductWrapper .Info .Inner,
    .Modules .ProductModule .container .ProductWrapper .Info .Inner {
      padding: 32px 8px; }
      @media only screen and (min-width: 768px) {
        .HomeModules .ProductModule .container .ProductWrapper .Info .Inner,
        .Modules .ProductModule .container .ProductWrapper .Info .Inner {
          padding: 32px; } }
      .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Name h2,
      .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Name h3,
      .Modules .ProductModule .container .ProductWrapper .Info .Inner .Name h2,
      .Modules .ProductModule .container .ProductWrapper .Info .Inner .Name h3 {
        margin: 0 0 8px 0; }
      .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Intro,
      .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Price,
      .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Buying,
      .Modules .ProductModule .container .ProductWrapper .Info .Inner .Intro,
      .Modules .ProductModule .container .ProductWrapper .Info .Inner .Price,
      .Modules .ProductModule .container .ProductWrapper .Info .Inner .Buying {
        margin-top: 8px; }
      .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Price .PriceNumber,
      .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .PricePOA,
      .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .PriceFree,
      .Modules .ProductModule .container .ProductWrapper .Info .Inner .Price .PriceNumber,
      .Modules .ProductModule .container .ProductWrapper .Info .Inner .PricePOA,
      .Modules .ProductModule .container .ProductWrapper .Info .Inner .PriceFree {
        font-size: 18px;
        color: #bd1722; }
      .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .RRPPrice .RRPPriceLabel,
      .Modules .ProductModule .container .ProductWrapper .Info .Inner .RRPPrice .RRPPriceLabel {
        font-weight: bold; }
      .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .BuyForm,
      .Modules .ProductModule .container .ProductWrapper .Info .Inner .BuyForm {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 8px; }
        .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .BuyForm .Stock,
        .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .BuyForm .Notify,
        .Modules .ProductModule .container .ProductWrapper .Info .Inner .BuyForm .Stock,
        .Modules .ProductModule .container .ProductWrapper .Info .Inner .BuyForm .Notify {
          display: none; }
        .HomeModules .ProductModule .container .ProductWrapper .Info .Inner .BuyForm .Next .Button,
        .Modules .ProductModule .container .ProductWrapper .Info .Inner .BuyForm .Next .Button {
          height: 34px;
          margin-left: 8px; }

.HomeModules .OrderingModule .container .OrderingModuleForms,
.Modules .OrderingModule .container .OrderingModuleForms {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }
  .HomeModules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm,
  .Modules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm {
    padding: 8px; }
    .HomeModules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner,
    .Modules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner {
      height: 100%;
      padding: 16px;
      background: #fff;
      color: #58585a;
      border: 1px solid #d8d8d9; }
      .HomeModules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner h2,
      .Modules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner h2 {
        margin-top: 0; }
      .HomeModules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .QuickOrderForm .QuickOrderProducts,
      .HomeModules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .QuickOrderForm .QuickOrderProducts .QuickOrderProductRow,
      .Modules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .QuickOrderForm .QuickOrderProducts,
      .Modules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .QuickOrderForm .QuickOrderProducts .QuickOrderProductRow {
        margin-bottom: 8px; }
      .HomeModules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .CSVUploadForm .input-group .form-control,
      .Modules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .CSVUploadForm .input-group .form-control {
        height: 36px;
        /* file button with input */ }
      .HomeModules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .CSVUploadForm .checkbox,
      .Modules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .CSVUploadForm .checkbox {
        text-align: left;
        margin: 8px 0; }
      .HomeModules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .CSVUploadForm .Submit,
      .Modules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .CSVUploadForm .Submit {
        position: relative; }
        .HomeModules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .CSVUploadForm .Submit .CSVHelpLink,
        .Modules .OrderingModule .container .OrderingModuleForms .OrderingModuleForm .Inner .CSVUploadForm .Submit .CSVHelpLink {
          position: absolute;
          left: 0;
          top: 0;
          bottom: 0;
          display: flex;
          align-items: center;
          font-size: 18px; }

@media (min-width: 440px) and (max-width: 575px), (min-width: 616px) and (max-width: 767px), (min-width: 808px) and (max-width: 991px), (min-width: 1032px) {
  .SliderModule,
  .ProductCarousel {
    /* when there is spcae for the control to sit outside of the container */ }
    .SliderModule .owl-controls .owl-nav div.owl-prev,
    .ProductCarousel .owl-controls .owl-nav div.owl-prev {
      left: -20px; }
    .SliderModule .owl-controls .owl-nav div.owl-next,
    .ProductCarousel .owl-controls .owl-nav div.owl-next {
      right: -20px; } }

/* Adjustemnts for Vertical Product Nav */
@media only screen and (min-width: 992px) {
  .VerticalProductNav .HomeModules .BreakOut {
    width: 100%;
    left: auto;
    right: auto; }
    .VerticalProductNav .HomeModules .BreakOut .container {
      width: 100%; }
  .VerticalProductNav .HomeModules .SliderModule:first-child {
    margin-top: 0; }
  .VerticalProductNav .HomeModules .SliderModule .owl-carousel .owl-controls .owl-nav > div.owl-prev {
    left: 8px; }
  .VerticalProductNav .HomeModules .SliderModule .owl-carousel .owl-controls .owl-nav > div.owl-next {
    right: 8px; } }

/*** End of Home Page / Department Modules ***/
/*** Breadcrumbs ***/
.Breadcrumbs {
  background: #fff; }
  .Breadcrumbs a {
    padding: 8px;
    display: inline-block;
    vertical-align: middle;
    text-decoration: none; }
    .Breadcrumbs a:not(.Home) {
      color: #58585a; }
    .Breadcrumbs a.Home {
      color: #bd1722; }
  .Breadcrumbs .Divider {
    display: inline-block;
    vertical-align: middle;
    color: #bd1722; }

/*** End of Breadcrumbs ***/
/*** Basket Message ***/
.AjaxBasketMessage .modal-title i {
  color: #84be5e; }

.AjaxBasketMessage .BasketMessageProducts {
  overflow: auto;
  max-height: 500px; }
  .AjaxBasketMessage .BasketMessageProducts .BasketMessageProduct {
    display: flex;
    align-items: center;
    padding: 8px; }
    .AjaxBasketMessage .BasketMessageProducts .BasketMessageProduct .Image {
      width: 100px; }
    .AjaxBasketMessage .BasketMessageProducts .BasketMessageProduct .Name {
      flex: 1;
      padding-left: 16px; }
      .AjaxBasketMessage .BasketMessageProducts .BasketMessageProduct .Name h4 {
        margin-top: 0; }
      .AjaxBasketMessage .BasketMessageProducts .BasketMessageProduct .Name p:last-child {
        margin-bottom: 0; }
    .AjaxBasketMessage .BasketMessageProducts .BasketMessageProduct:nth-child(even) {
      background: #e6e6e6; }

@media only screen and (max-width: 767px) {
  .AjaxBasketMessage .BasketMessageProducts {
    max-height: 300px; }
    .AjaxBasketMessage .BasketMessageProducts .BasketMessageProduct .Image {
      width: 70px; }
  .AjaxBasketMessage .modal-footer .Button {
    width: 100%; }
    .AjaxBasketMessage .modal-footer .Button + .Button {
      margin-left: 0;
      margin-top: 8px; } }

.BasketMessageModal .modal-dialog,
#BasketMessage .modal-dialog {
  width: auto;
  max-width: 800px; }

/*** End of Basket Message ***/
/*** Department Banner ***/
.DepartmentBanner {
  margin: -16px 0 16px;
  position: relative; }
  .DepartmentBanner .DepartmentTitlePlaceholder {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center; }
    .DepartmentBanner .DepartmentTitlePlaceholder h1 {
      margin: 0;
      color: #fff;
      text-shadow: 0 0 10px #58585a; }

.FilterDepartmentContent .DepartmentBanner,
.DepartmentBannerVertNav {
  width: auto;
  left: 0;
  margin: 0 0 16px; }

/*** End of Department Banner ***/
/*** Product Ribbon ***/
.ProductRibbon {
  position: absolute;
  top: 30px;
  left: 0;
  z-index: 2;
  max-width: 60%; }
  .ProductRibbon .RibbonInner {
    display: block;
    background: #bd1722;
    color: #ffffff;
    padding: 8px 16px;
    border-radius: 5px 5px 5px 0; }
  .ProductRibbon:after {
    content: "";
    position: absolute;
    bottom: -8px;
    border: 8px solid transparent;
    border-right-color: #90111a;
    left: -8px;
    z-index: -2; }

.ImagesContainer .ProductRibbon {
  font-size: 18px; }

/*** End of Product Ribbon ***/
/*** Thumbnails ***/
.Thumbnail, .Products .ProductThumbnail,
.Departments .Department,
.ContentThumb {
  padding-top: 8px;
  padding-bottom: 8px; }
  .Thumbnail .Inner, .Products .ProductThumbnail .Inner,
  .Departments .Department .Inner,
  .ContentThumb .Inner {
    border: 1px solid #d8d8d9;
    background: #fff;
    /*@include border-radius($component-border-radius);*/
    color: #58585a;
    padding: 8px;
    text-align: center; }
    .Thumbnail .Inner .Image, .Products .ProductThumbnail .Inner .Image,
    .Departments .Department .Inner .Image,
    .ContentThumb .Inner .Image {
      padding-bottom: 100%;
      width: 100%;
      position: relative; }
      .Thumbnail .Inner .Image a, .Products .ProductThumbnail .Inner .Image a,
      .Departments .Department .Inner .Image a,
      .ContentThumb .Inner .Image a, .Thumbnail .Inner .Image .AnchorPlaceholder, .Products .ProductThumbnail .Inner .Image .AnchorPlaceholder,
      .Departments .Department .Inner .Image .AnchorPlaceholder,
      .ContentThumb .Inner .Image .AnchorPlaceholder {
        display: block;
        height: 100%;
        position: absolute;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center; }
    .Thumbnail .Inner .Name, .Products .ProductThumbnail .Inner .Name,
    .Departments .Department .Inner .Name,
    .ContentThumb .Inner .Name {
      padding-top: 8px;
      font-size: 18px; }
      .Thumbnail .Inner .Name a, .Products .ProductThumbnail .Inner .Name a,
      .Departments .Department .Inner .Name a,
      .ContentThumb .Inner .Name a {
        color: #58585a;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-decoration: none; }

.Products .ProductThumbnail .Name .StockCode {
  display: block; }

.Products .ProductThumbnail .Favourites {
  top: 8px; }

.Products .ProductThumbnail .Price {
  padding-top: 8px;
  color: #bd1722;
  font-size: 18px; }

.Products .ProductThumbnail .Buying {
  padding-top: 8px;
  display: flex;
  align-items: flex-end;
  justify-content: center; }
  .Products .ProductThumbnail .Buying .Stock {
    display: inline-block; }
  .Products .ProductThumbnail .Buying .BuyForm {
    padding-top: 8px;
    display: flex;
    justify-content: center; }
    .Products .ProductThumbnail .Buying .BuyForm .Stock {
      display: none; }
    .Products .ProductThumbnail .Buying .BuyForm .Next {
      padding-left: 8px; }
      .Products .ProductThumbnail .Buying .BuyForm .Next .Button {
        font-size: 0;
        height: 34px; }
        .Products .ProductThumbnail .Buying .BuyForm .Next .Button:before {
          content: "\f07a";
          font-family: "Font Awesome 6 Pro";
          font-size: 14px; }

.Products .ProductThumbnail .Skus {
  display: none; }

.ContentThumb .Inner .Image {
  padding-bottom: 50%;
  /* nicer image ratio for news thumbnails */ }

.ThumbOptionsModal .modal-dialog {
  width: 1000px;
  max-width: 90%; }

/*** End of Thumbnails ***/
/*** List View ***/
.DepartmentListView .ProductThumbnail {
  border: 1px solid #d8d8d9;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58585a;
  padding: 8px;
  width: 100%; }
  .DepartmentListView .ProductThumbnail:not(:first-child) {
    border-top: none; }
  .DepartmentListView .ProductThumbnail .Inner {
    display: flex;
    align-items: center; }
    .DepartmentListView .ProductThumbnail .Inner .Image {
      width: 100px;
      height: 100px;
      text-align: center;
      padding: 8px; }
    .DepartmentListView .ProductThumbnail .Inner .ProductInfo {
      flex: 1;
      padding: 8px; }
      .DepartmentListView .ProductThumbnail .Inner .ProductInfo > div:not(:first-child) {
        padding-top: 8px; }
      .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Name h3 {
        margin-bottom: 0; }
      .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Name .StockCode {
        display: block;
        font-weight: bold; }
      .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Favourites {
        position: initial; }
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Favourites .FavouritesBtn {
          background: none;
          color: #bd1722;
          font-size: 18px; }
      .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying {
        height: auto !important;
        padding: 0 !important; }
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Stock,
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .BuyForm,
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify {
          display: block;
          padding-top: 8px; }
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying br {
          display: none; }
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify a {
          display: block;
          white-space: normal;
          text-align: center; }
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .BuyForm .Stock {
          display: none; }
  .DepartmentListView .ProductThumbnail.LineThumb > .Inner .Image, .DepartmentListView .ProductThumbnail.LineThumb > .Inner .Price, .DepartmentListView .ProductThumbnail.LineThumb > .Inner .Units, .DepartmentListView .ProductThumbnail.LineThumb > .Inner .Buying, .DepartmentListView .ProductThumbnail.LineThumb > .Inner .StockCode {
    display: none; }
  .DepartmentListView .ProductThumbnail.LineThumb > .Inner .Name a {
    color: #bd1722;
    font-size: 18px;
    text-decoration: none; }
  .DepartmentListView .ProductThumbnail.LineThumb > .Inner .Favourites {
    display: none; }
  @media only screen and (max-width: 767px) {
    .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .SpinnerContainer {
      max-width: 100%;
      margin-bottom: 8px; }
    .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Next .Button {
      width: 100%; } }
  @media only screen and (min-width: 768px) {
    .DepartmentListView .ProductThumbnail:nth-child(even) {
      background: white; }
    .DepartmentListView .ProductThumbnail .Inner .ProductInfo {
      padding: 0;
      display: flex;
      align-items: center; }
      .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Name {
        flex: 1; }
      .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Price {
        width: 120px;
        text-align: center; }
      .DepartmentListView .ProductThumbnail .Inner .ProductInfo .StockPosition {
        width: 120px;
        text-align: center; }
      .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying {
        width: 335px; }
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Stock,
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .BuyForm,
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify {
          padding: 8px;
          display: inline-block;
          vertical-align: middle; }
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Stock {
          width: 120px; }
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify,
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .BuyForm {
          width: 210px; }
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .SpinnerContainer {
          display: inline-block;
          vertical-align: top;
          margin-bottom: 0; }
        .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Next {
          display: inline-block;
          vertical-align: top;
          padding-left: 8px; }
          .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Next .Button {
            font-size: 0;
            height: 34px; }
            .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Next .Button:before {
              content: "\f07a";
              font-family: "Font Awesome 6 Pro";
              font-size: 14px; }
      .DepartmentListView .ProductThumbnail .Inner .ProductInfo > div {
        padding: 8px; }
    .DepartmentListView .ProductThumbnail .Skus .Inner:not(:first-child) {
      position: relative; }
      .DepartmentListView .ProductThumbnail .Skus .Inner:not(:first-child):before {
        content: "";
        position: absolute;
        top: 0;
        right: 8px;
        left: 8px;
        height: 1px;
        background: #d8d8d9; } }
/*** End of List View ***/
/*** Repeater Nav ***/
.ProductSorting,
.RepeaterNav {
  margin-right: -8px;
  margin-left: -8px;
  clear: both; }
  .ProductSorting label,
  .RepeaterNav label {
    display: inline-block; }
  .ProductSorting select,
  .RepeaterNav select {
    display: inline-block;
    width: auto; }
  .ProductSorting .Button,
  .RepeaterNav .Button {
    min-width: 34px;
    margin-right: 8px; }
  .ProductSorting .ViewSwitcher a,
  .RepeaterNav .ViewSwitcher a {
    border: 1px solid #d8d8d9;
    background: #fff;
    /*@include border-radius($component-border-radius);*/
    color: #58585a;
    padding: 8px;
    text-decoration: none;
    display: inline-block; }
    .ProductSorting .ViewSwitcher a i,
    .RepeaterNav .ViewSwitcher a i {
      color: #bd1722; }
    .ProductSorting .ViewSwitcher a.ActiveView,
    .RepeaterNav .ViewSwitcher a.ActiveView {
      border-color: #bd1722; }
    .ProductSorting .ViewSwitcher a:not(:first-child),
    .RepeaterNav .ViewSwitcher a:not(:first-child) {
      margin-left: 8px; }
  .ProductSorting .Sort,
  .ProductSorting .NoPerPage,
  .ProductSorting .RepeaterNavLinks,
  .ProductSorting .ViewSwitcher,
  .RepeaterNav .Sort,
  .RepeaterNav .NoPerPage,
  .RepeaterNav .RepeaterNavLinks,
  .RepeaterNav .ViewSwitcher {
    text-align: center;
    padding: 8px; }
  @media only screen and (min-width: 768px) {
    .ProductSorting,
    .RepeaterNav {
      display: flex; }
      .ProductSorting .RepeaterNavLinks,
      .RepeaterNav .RepeaterNavLinks {
        text-align: left; }
      .ProductSorting .Sort, .ProductSorting .NoPerPage,
      .RepeaterNav .Sort,
      .RepeaterNav .NoPerPage {
        margin-left: auto;
        text-align: right; } }
/*** Qty Spinner ***/
.SpinnerContainer {
  max-width: 130px;
  position: relative;
  padding-right: 42px;
  padding-left: 42px; }
  .SpinnerContainer .Button {
    width: 34px;
    height: 34px;
    position: absolute;
    top: 0;
    padding-right: 0;
    padding-left: 0; }
    .SpinnerContainer .Button.AddBtn {
      right: 0; }
    .SpinnerContainer .Button.MinusBtn {
      left: 0;
      background: #c10000; }
  .SpinnerContainer input.Quantity {
    text-align: center;
    padding-right: 0;
    padding-left: 0;
    min-width: 30px; }

/*** End of Qty Spinner ***/
/*** Stock Message ***/
.Stock.InStock i {
  color: #84be5e; }

.Stock.InStock.LowStock i {
  color: #f97e00; }

.Stock.BackOrder i {
  color: #f97e00; }

.Stock.OutOfStock i {
  color: #c10000; }

.Stock .DueIn {
  display: block; }

/*** End of Stock Message ***/
/*** Product Page ***/
.ProductPageContainer .ImagesContainer .Favourites .FavouritesBtn {
  font-size: 18px; }

.ProductPageContainer .ImagesContainer .MainImageCarousel .owl-controls .owl-nav > div.owl-prev {
  left: 8px; }

.ProductPageContainer .ImagesContainer .MainImageCarousel .owl-controls .owl-nav > div.owl-next {
  right: 8px; }

.ProductPageContainer .ImagesContainer .MainImageCarousel .owl-controls .owl-dots {
  display: none !important; }

.ProductPageContainer .ImagesContainer .MainImageCarousel .Image:not(:first-child) {
  display: none;
  /* Stop images loading vertically and once owl carousel loads all image will be first child */ }

.ProductPageContainer .ImagesContainer .MainImageCarousel .Image.VidThumb .fluid-width-video-wrapper {
  padding-top: 100% !important; }

.ProductPageContainer .ImagesContainer .MainImageCarousel .Image.VidThumb .FrameWrap {
  border: 1px solid #d8d8d9;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58585a;
  padding: 8px; }
  .ProductPageContainer .ImagesContainer .MainImageCarousel .Image.VidThumb .FrameWrap iframe {
    outline: none;
    border: none; }

.ProductPageContainer .ImagesContainer .MainImageCarousel a {
  border: 1px solid #d8d8d9;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58585a;
  padding: 8px; }
  .ProductPageContainer .ImagesContainer .MainImageCarousel a .Enlarge {
    color: #bd1722;
    position: absolute;
    bottom: 8px;
    right: 8px;
    font-size: 18px; }

.ProductPageContainer .ImagesContainer .ThumbImages {
  padding-top: 8px;
  padding-bottom: 8px; }
  .ProductPageContainer .ImagesContainer .ThumbImages:not(.owl-carousel) .Thumb:only-child {
    display: none; }
  .ProductPageContainer .ImagesContainer .ThumbImages .Thumb .Inner {
    padding-bottom: 100%;
    width: 100%;
    position: relative; }
    .ProductPageContainer .ImagesContainer .ThumbImages .Thumb .Inner a, .ProductPageContainer .ImagesContainer .ThumbImages .Thumb .Inner .AnchorPlaceholder {
      display: block;
      height: 100%;
      position: absolute;
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center; }
    .ProductPageContainer .ImagesContainer .ThumbImages .Thumb .Inner a {
      border: 1px solid #d8d8d9;
      background: #fff;
      /*@include border-radius($component-border-radius);*/
      color: #58585a;
      padding: 8px;
      padding: 4px; }
  .ProductPageContainer .ImagesContainer .ThumbImages .Thumb.VidThumb .Inner a:after {
    font-family: "Font Awesome 6 Pro";
    content: "\f04b";
    font-weight: bold;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #bd1722;
    font-size: 18px;
    text-shadow: 0 0 8px #ffffff; }

.ProductPageContainer #ProductTitle {
  display: flex;
  align-items: center;
  justify-content: space-between; }
  .ProductPageContainer #ProductTitle .BrandImage {
    margin-left: 8px;
    margin-bottom: 10px;
    /* To match heading margin */ }
  @media only screen and (max-width: 767px) {
    .ProductPageContainer #ProductTitle {
      flex-wrap: wrap; }
      .ProductPageContainer #ProductTitle .BrandImage {
        margin-left: 0; } }
.ProductPageContainer .BuyBox p {
  margin: 0;
  padding-top: 8px;
  padding-bottom: 8px; }

.ProductPageContainer .BuyBox table.PriceBreaks tr th, .ProductPageContainer .BuyBox table.PriceBreaks tr td {
  padding-right: 16px;
  text-align: left; }

.ProductPageContainer .BuyBox fieldset div div {
  padding-top: 0;
  padding-bottom: 0; }

.ProductPageContainer .BuyBox fieldset div label {
  margin-bottom: 0; }

.ProductPageContainer .BuyBox fieldset .ProductOptions {
  display: flex;
  flex-wrap: wrap;
  margin-right: -8px;
  margin-left: -8px; }
  .ProductPageContainer .BuyBox fieldset .ProductOptions .Option {
    width: 100%;
    padding: 8px; }

.ProductPageContainer .BuyBox fieldset .Price span[itemprop='price'] {
  color: #bd1722;
  font-size: 18px; }

.ProductPageContainer .BuyBox fieldset .QuantityBox {
  display: flex;
  align-items: center; }
  .ProductPageContainer .BuyBox fieldset .QuantityBox label {
    display: none; }
  .ProductPageContainer .BuyBox fieldset .QuantityBox .Stock {
    display: inline-block;
    padding-left: 8px; }
  .ProductPageContainer .BuyBox fieldset .QuantityBox .Notify {
    margin-left: 8px; }

.ProductPageContainer .BuyBox.updatePanelLoading {
  position: relative;
  height: 100%;
  overflow: hidden; }
  .ProductPageContainer .BuyBox.updatePanelLoading:before, .ProductPageContainer .BuyBox.updatePanelLoading:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }
  .ProductPageContainer .BuyBox.updatePanelLoading:before {
    content: " ";
    background-color: rgba(255, 255, 255, 0.75);
    z-index: 2; }
  .ProductPageContainer .BuyBox.updatePanelLoading:after {
    content: '\f110';
    font-family: "Font Awesome 6 Pro";
    font-size: 50px;
    line-height: 50px;
    width: 50px;
    height: 50px;
    margin: auto;
    z-index: 3;
    animation-name: spin;
    animation-duration: 2000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear; }

@keyframes spin {
  from {
    transform: rotate(0deg); }
  to {
    transform: rotate(360deg); } }

.ProductPageContainer .ProductCrossSell {
  padding-top: 8px;
  padding-bottom: 8px; }

@media only screen and (min-width: 992px) {
  .ProductPageContainer .BuyBox fieldset .ProductOptions .Option {
    width: 50%; } }

@media only screen and (max-width: 767px) {
  .ProductPageContainer > [class*="col-"] {
    padding-top: 8px;
    padding-bottom: 8px; } }

.TabContainer .TabContentsContainer .r-tabs-accordion-title a {
  border: 1px solid #d8d8d9;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58585a;
  padding: 8px;
  display: flex;
  align-items: center;
  position: relative;
  text-decoration: none;
  margin: 4px 0; }
  .TabContainer .TabContentsContainer .r-tabs-accordion-title a:after {
    font-family: "Font Awesome 6 Pro";
    content: "\f078";
    margin-left: auto;
    -webkit-transition: transform ease 1s;
    -moz-transition: transform ease 1s;
    transition: transform ease 1s; }

.TabContainer .TabContentsContainer .r-tabs-accordion-title.r-tabs-state-active a:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  transform: rotate(180deg); }

.TabContainer .TabContentsContainer .TabContent {
  border: 1px solid #d8d8d9;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58585a;
  padding: 8px;
  padding: 16px;
  display: none; }
  .TabContainer .TabContentsContainer .TabContent .ProductFeatureValuesTable,
  .TabContainer .TabContentsContainer .TabContent .ProductDimensionsTable {
    margin-bottom: 0; }
  .TabContainer .TabContentsContainer .TabContent p:last-child {
    margin-bottom: 0; }

.TabContainer.AccordionTabs ul.TabControls {
  display: none; }

.TabContainer:not(.AccordionTabs) ul.TabControls {
  list-style: none;
  margin: 0;
  padding: 0;
  display: none;
  margin-bottom: -1px; }
  .TabContainer:not(.AccordionTabs) ul.TabControls li {
    list-style: none;
    margin: 0;
    padding: 0; }
  .TabContainer:not(.AccordionTabs) ul.TabControls li {
    width: auto;
    border: 1px solid #d8d8d9;
    background: #fff;
    /*@include border-radius($component-border-radius);*/
    color: #58585a;
    padding: 8px; }
    .TabContainer:not(.AccordionTabs) ul.TabControls li:not(:first-child) {
      border-left: none; }
    .TabContainer:not(.AccordionTabs) ul.TabControls li.r-tabs-state-active {
      border-bottom-color: #fff; }
    .TabContainer:not(.AccordionTabs) ul.TabControls li a {
      padding: 8px 16px;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      text-decoration: none;
      color: #58585a; }

@media only screen and (min-width: 768px) {
  .TabContainer:not(.AccordionTabs) ul.TabControls {
    display: flex; }
  .TabContainer:not(.AccordionTabs) .TabContentsContainer .r-tabs-accordion-title {
    display: none; } }

/*** End of Product Page ***/
/*** Content Template ***/
.Content .ProductCrossSell {
  clear: both; }

/*** End of Content Template ***/
/*** Contact Page ***/
/*@media (min-width:768px) and (max-width:991px) {
    .ContactWrapper .row {
        @include column-count(2);

        > div {
            float:none;
            width:auto;
            overflow:auto;
        }
    }
}

@include respond-to(md){
    .VerticalProductNav .ContactWrapper .row {
        @include column-count(2);

        > div {
            float:none;
            width:auto;
            overflow:auto;
        }
    }
}*/
.ContactWrapper > .row > div {
  padding-top: 8px;
  padding-bottom: 8px; }

.ContactWrapper .ContactDetails table {
  width: 100%; }
  .ContactWrapper .ContactDetails table td {
    padding: 4px 0;
    vertical-align: top; }
  .ContactWrapper .ContactDetails table i {
    color: #bd1722; }

.ContactWrapper .ContactMap iframe {
  width: 100%; }

/*** End of Contact Page ***/
/*** News Section ***/
.NewPageContent .NewsImageCarousel {
  margin-bottom: 8px; }

@media only screen and (min-width: 768px) {
  .NewPageContent .NewsImageCarousel {
    float: right;
    width: 300px;
    margin-left: 8px; } }

/*** End of News Section ***/
/*** Login Page ***/
.Login {
  text-align: center; }
  .Login .LoginIntro {
    font-size: 18px;
    margin-bottom: 16px; }
    .Login .LoginIntro p {
      margin: 0; }
  .Login .LoginBox {
    border: 1px solid #d8d8d9;
    background: #fff;
    /*@include border-radius($component-border-radius);*/
    color: #58585a;
    padding: 8px; }
    .Login .LoginBox .Button {
      text-transform: capitalize; }
    .Login .LoginBox .RegisterInfo:not(:last-child) {
      margin-bottom: 8px; }
  @media only screen and (min-width: 768px) {
    .Login > .row {
      margin: auto;
      max-width: 700px; } }
/*** End of Login Page ***/
/*** Cart Page ***/
.CartQuickOrderContainer .accordion-header a .Icons {
  position: absolute;
  right: 8px;
  top: 8px;
  color: #bd1722; }
  .CartQuickOrderContainer .accordion-header a .Icons .Icon.Plus {
    display: none; }

.CartQuickOrderContainer .accordion-header a.collapsed .Icons .Icon.Minus {
  display: none; }

.CartQuickOrderContainer .accordion-header a.collapsed .Icons .Icon.Plus {
  display: block; }

.CartQuickOrderContainer #QuickOrderForm .col-12 {
  padding: 0;
  margin-bottom: 8px; }
  .CartQuickOrderContainer #QuickOrderForm .col-12 input {
    padding: 0 8px; }

.CartQuickOrderContainer #QuickOrderForm label.col-4 {
  text-align: right;
  line-height: 34px;
  margin: 0; }

.CartQuickOrderContainer #QuickOrderForm div.col-4 input {
  text-align: center;
  padding: 0; }

.CartQuickOrderContainer #QuickOrderForm .col-xs-4:last-child {
  padding: 0; }

.CartQuickOrderContainer .CartCSVUpload .CSVHelp {
  display: inline-block;
  vertical-align: middle;
  padding-left: 8px; }
  .CartQuickOrderContainer .CartCSVUpload .CSVHelp .CSVHelpLink {
    font-size: 18px; }

.CSVHelpModal .row > div {
  padding-top: 8px;
  padding-bottom: 8px; }

.DataTable tbody tr {
  background: #e6e6e6;
  color: #58585a; }
  .DataTable tbody tr:nth-child(even) {
    background: white; }

@media only screen and (max-width: 991px) {
  .DataTable {
    display: block; }
    .DataTable thead {
      display: none; }
    .DataTable tbody,
    .DataTable > tbody > tr,
    .DataTable > tbody > tr > th,
    .DataTable > tbody > tr > td,
    .DataTable > tfoot,
    .DataTable > tfoot > tr,
    .DataTable > tfoot > tr > th,
    .DataTable > tfoot > tr > td {
      display: block; }
    .DataTable td[class*="col-"] {
      float: left; }
    .DataTable tr {
      clear: both; } }

@media only screen and (min-width: 992px) {
  .DataTable {
    width: 100%;
    display: table; }
    .DataTable thead,
    .DataTable tbody,
    .DataTable tfoot {
      display: table-row-group !important; }
      .DataTable thead tr,
      .DataTable tbody tr,
      .DataTable tfoot tr {
        display: table-row !important; }
        .DataTable thead tr td, .DataTable thead tr th,
        .DataTable tbody tr td,
        .DataTable tbody tr th,
        .DataTable tfoot tr td,
        .DataTable tfoot tr th {
          display: table-cell !important; }
    .DataTable tr[class*="col-"],
    .DataTable td[class*="col-"] {
      float: none !important;
      width: auto; }
    .DataTable th, .DataTable td {
      padding: 8px; } }

.CartDataTable label {
  margin: 0; }

.CartDataTable .ActionButtons {
  text-align: right;
  white-space: nowrap; }

.CartDataTable .SubTotal {
  text-align: right; }

.CartDataTable .TotalsRow .Total {
  text-align: right; }

.CartDataTable .TotalsRow .Price {
  text-align: right; }

.CartDataTable .TotalsRow.GrandTotalRow {
  font-size: 18px;
  font-weight: bold; }

.CartDataTable input.Quantity {
  text-align: center;
  max-width: 50px;
  padding-right: 0;
  padding-left: 0; }

@media only screen and (max-width: 991px) {
  .CartDataTable .ProductInfoRow {
    padding-top: 8px;
    padding-bottom: 8px; }
    .CartDataTable .ProductInfoRow:after {
      content: "";
      display: block;
      clear: both; }
    .CartDataTable .ProductInfoRow td:not(.Image) {
      float: right; }
    .CartDataTable .ProductInfoRow td.SubTotal {
      display: flex;
      justify-content: flex-end;
      align-items: center;
      padding-top: 8px;
      padding-bottom: 8px; }
    .CartDataTable .ProductInfoRow td.Qnty {
      display: flex;
      justify-content: flex-end;
      align-items: center; }
      .CartDataTable .ProductInfoRow td.Qnty > * {
        width: auto; }
  .CartDataTable .TotalsRow td {
    padding-top: 8px;
    padding-bottom: 8px; }
  .CartDataTable .TotalsRow .Price {
    text-align: right; }
  .CartDataTable .TotalsRow.GrandTotalRow {
    font-size: 14px; } }

.CartActionButtons {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  flex-wrap: wrap; }
  @media only screen and (max-width: 767px) {
    .CartActionButtons [class*="col-"] {
      padding-top: 8px;
      padding-bottom: 8px; } }
.AgentPriceOverride .overridePriceEdit .form-control {
  max-width: 100px;
  display: inline-block;
  vertical-align: middle;
  text-align: right; }

.AgentPriceOverride .overridePriceEdit .UpdateSubmit {
  display: inline-block;
  vertical-align: middle; }

.AgentPriceOverride .stdUnitPrice {
  display: block; }

.CartContainer .FreeShipping {
  border: 1px solid #d8d8d9;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58585a;
  padding: 8px;
  border: none;
  margin: 8px 0;
  text-align: center; }
  @media only screen and (min-width: 768px) {
    .CartContainer .FreeShipping {
      font-size: 18px; } }
  .CartContainer .FreeShipping i,
  .CartContainer .FreeShipping .AmountRequired {
    color: #bd1722;
    font-size: 18px; }
    @media only screen and (min-width: 768px) {
      .CartContainer .FreeShipping i,
      .CartContainer .FreeShipping .AmountRequired {
        font-size: 28px; } }
  .CartContainer .FreeShipping i {
    margin-right: 8px; }

/*** End of Cart Page ***/
/*** Barcode Scanner ***/
#BarcodeScannerModal .modal-dialog {
  width: 95%;
  max-width: 1200px; }
  #BarcodeScannerModal .modal-dialog .modal-content {
    max-height: calc(100vh - 20px);
    display: flex;
    flex-direction: column; }
    #BarcodeScannerModal .modal-dialog .modal-content .modal-title i {
      margin-right: 8px;
      color: #bd1722; }
    #BarcodeScannerModal .modal-dialog .modal-content .modal-body {
      overflow: auto;
      padding: 16px; }
    #BarcodeScannerModal .modal-dialog .modal-content .BarcodeScanner {
      position: sticky;
      top: 0;
      background: #fff;
      z-index: 2; }
    #BarcodeScannerModal .modal-dialog .modal-content .BarcodeButtons {
      position: sticky;
      z-index: 2;
      margin-bottom: -16px;
      /* this allows the add to basket to sit under all the products without the products appearing below*/
      bottom: -16px;
      padding-bottom: 16px;
      background: #fff; }
      #BarcodeScannerModal .modal-dialog .modal-content .BarcodeButtons .Button {
        margin-top: 8px; }
  #BarcodeScannerModal .modal-dialog .ProductThumbnail {
    padding: 0; }
    #BarcodeScannerModal .modal-dialog .ProductThumbnail .Inner .Image {
      min-width: 100px; }
    #BarcodeScannerModal .modal-dialog .ProductThumbnail .Inner .ProductInfo {
      width: calc(100% - 100px); }
    #BarcodeScannerModal .modal-dialog .ProductThumbnail .Inner .ProductInfo .Buying {
      width: 275px; }
      #BarcodeScannerModal .modal-dialog .ProductThumbnail .Inner .ProductInfo .Buying .BuyForm {
        width: 150px; }
      #BarcodeScannerModal .modal-dialog .ProductThumbnail .Inner .ProductInfo .Buying .Next {
        display: none; }
  #BarcodeScannerModal .modal-dialog .BarcodeButtons {
    padding-top: 8px;
    text-align: right; }
  @media only screen and (max-width: 767px) {
    #BarcodeScannerModal .modal-dialog .modal-content .BarcodeScanner {
      margin-top: -16px;
      top: -16px;
      padding-top: 16px; }
    #BarcodeScannerModal .modal-dialog .modal-content .BarcodeResults {
      padding-top: 8px; }
    #BarcodeScannerModal .modal-dialog .modal-content .BarcodeButtons .Button {
      width: 100%; }
    #BarcodeScannerModal .modal-dialog .modal-content .ProductThumbnail .Inner .ProductInfo .Buying {
      width: 100%; } }
  @media only screen and (min-width: 992px) {
    #BarcodeScannerModal .modal-dialog .modal-content .modal-body > .row {
      display: flex; }
      #BarcodeScannerModal .modal-dialog .modal-content .modal-body > .row .BarcodeResults {
        display: flex;
        flex-direction: column; }
        #BarcodeScannerModal .modal-dialog .modal-content .modal-body > .row .BarcodeResults .DepartmentViews {
          flex: 1; }
        #BarcodeScannerModal .modal-dialog .modal-content .modal-body > .row .BarcodeResults .BarcodeButtons {
          display: flex;
          justify-content: flex-end; }
          #BarcodeScannerModal .modal-dialog .modal-content .modal-body > .row .BarcodeResults .BarcodeButtons .Button {
            margin-top: 0;
            margin-left: 8px; } }
#BarCodeReader #BarCodeReader__scan_region:before {
  content: "";
  height: 2px;
  width: 90%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background: red;
  transition: all ease 0.25s; }

#BarCodeReader #BarCodeReader__scan_region video {
  width: 100% !important;
  object-fit: cover;
  aspect-ratio: 2; }

#BarCodeReader.BarcodeScanned #BarCodeReader__scan_region:before {
  height: 8px;
  width: 98%; }

/*** End of Barcode Scanner ***/
/*** Checkout ***/
table.Wizard .Sidebar table,
table.Wizard .Sidebar tbody,
table.Wizard .Sidebar tr {
  display: block; }

table.Wizard .Sidebar tr {
  display: flex;
  justify-content: center; }
  table.Wizard .Sidebar tr td a {
    display: inline-block;
    padding: 8px; }

@media only screen and (min-width: 768px) {
  table.Wizard .Sidebar td a .Number:after {
    content: ". "; }
  table.Wizard .Sidebar td:not(:first-child):before {
    content: "\f054";
    font-family: "Font Awesome 6 Pro";
    display: inline-block; }
  table.Wizard .Sidebar td.Selected a {
    font-weight: bold; } }

table.Wizard .CheckBoxContainer {
  display: flex; }
  @media only screen and (min-width: 768px) {
    table.Wizard .CheckBoxContainer {
      justify-content: flex-end; } }
  table.Wizard .CheckBoxContainer input {
    margin-right: 8px; }

@media only screen and (max-width: 767px) {
  table.Wizard .Sidebar td a {
    text-align: center; }
    table.Wizard .Sidebar td a .Number {
      display: flex;
      justify-content: center;
      align-items: center;
      height: 30px;
      width: 30px;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      margin: 0 auto 8px;
      border: 1px solid; }
    table.Wizard .Sidebar td a .Text {
      display: block;
      font-size: 9.8px; }
  table.Wizard .Sidebar td.Selected a .Text {
    font-size: 18px; }
  table.Wizard .Sidebar td:not(.Selected) a {
    color: #58585a; } }

.PrintBtns .Button {
  margin-bottom: 8px; }
  .PrintBtns .Button + .Button {
    margin-left: 8px; }

.CheckoutContainer .NotifyNameSelect,
.CheckoutContainer .NotifEmail {
  margin-bottom: 8px; }

/*** End of Checkout ***/
/*** Cart Intercept ***/
.AgentCartInterceptCart .ActionButtons .UpdateBtn {
  display: none; }

/*** Dealer Search ***/
.DealerSearch {
  padding: 0 0 65%;
  position: relative; }
  .DealerSearch .DealerMapWrapper {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 5; }
    .DealerSearch .DealerMapWrapper iframe {
      width: 100%;
      border: none;
      height: 100%; }
  .DealerSearch .DealerSearchWraper {
    -webkit-transition: all 1s ease-in-out 0s;
    -moz-transition: all 1s ease-in-out 0s;
    transition: all 1s ease-in-out 0s;
    position: absolute;
    background: rgba(0, 0, 0, 0.4) url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAACCAYAAACddGYaAAAAD0lEQVQIW2NkQABjRmQOAAM+AGkQsDBSAAAAAElFTkSuQmCC) repeat;
    z-index: 10;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }
    .DealerSearch .DealerSearchWraper.Close {
      -webkit-transition: all 1s ease-in-out 0s;
      -moz-transition: all 1s ease-in-out 0s;
      transition: all 1s ease-in-out 0s;
      background: transparent;
      z-index: 1; }
    .DealerSearch .DealerSearchWraper .DealerSearchBar {
      position: absolute;
      top: 50%;
      left: 50%;
      padding: 18px;
      transform: translate(-50%, -50%);
      background: #333;
      width: 90%; }
      @media only screen and (min-width: 768px) {
        .DealerSearch .DealerSearchWraper .DealerSearchBar {
          width: auto;
          padding: 18px 28px; } }
      .DealerSearch .DealerSearchWraper .DealerSearchBar h3 {
        margin: 0 0 20px;
        color: #fff; }
        @media only screen and (max-width: 767px) {
          .DealerSearch .DealerSearchWraper .DealerSearchBar h3 {
            font-size: 120%; } }
      .DealerSearch .DealerSearchWraper .DealerSearchBar > div {
        display: flex; }
        .DealerSearch .DealerSearchWraper .DealerSearchBar > div input.Text {
          border: none; }
      .DealerSearch .DealerSearchWraper .DealerSearchBar.ResultsLoading {
        background-image: url(../../../images/ajax-loader-dealer.gif);
        background-repeat: no-repeat;
        background-position: center center; }
        .DealerSearch .DealerSearchWraper .DealerSearchBar.ResultsLoading > * {
          visibility: hidden; }
        .DealerSearch .DealerSearchWraper .DealerSearchBar.ResultsLoading.FindLocation:before {
          content: "Determining location...";
          display: block !important;
          visibility: visible !important;
          color: #fff;
          text-align: center; }
          .DealerSearch .DealerSearchWraper .DealerSearchBar.ResultsLoading.FindLocation:before.LocationFound:before {
            content: "Location found, loading results..."; }
          .DealerSearch .DealerSearchWraper .DealerSearchBar.ResultsLoading.FindLocation:before.FindLocationFailed:before {
            content: "Detect location failed, enter manually..."; }

/*** End Dealer Search ***/
/*** Password Recover ***/
.PasswordRecover fieldset {
  display: flex;
  align-items: center; }
  .PasswordRecover fieldset label {
    min-width: 115px;
    margin: 0; }
  .PasswordRecover fieldset input.form-control {
    margin: 0 8px; }
  .PasswordRecover fieldset .Button {
    height: 34px; }
  @media only screen and (max-width: 767px) {
    .PasswordRecover fieldset {
      flex-wrap: wrap; }
      .PasswordRecover fieldset input.form-control {
        margin: 8px 0; } }
/*** End of Password Recover ***/
/* all variables, sizes colors etc. */
/*** General ***/
.Login .LoginBox,
.ProductSorting .ViewSwitcher a,
.RepeaterNav .ViewSwitcher a,
ul.AccountPageLinks li a {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px; }

/*** End of General ***/
/*** Buttons ***/
.Button:hover, .Button:focus,
.btn:hover,
.DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify a:hover,
.btn:focus,
.DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify a:focus,
.btn-default:hover,
.btn-default:focus {
  color: #ffffff; }

.Favourites .FavouritesBtn {
  background: none;
  color: #bd1722; }
  .Favourites .FavouritesBtn:hover, .Favourites .FavouritesBtn:focus {
    color: #bd1722;
    opacity: 0.75;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none; }

/*** End of Buttons ***/
/*** Header ***/
.BannerMessage a {
  color: #ffffff;
  text-decoration: underline; }

.TopBar ul li a {
  padding: 8px 12px; }

.TopBar .TopBarHeaderControls ul li a {
  display: flex;
  align-items: center;
  padding: 8px 12px; }
  .TopBar .TopBarHeaderControls ul li a i {
    margin-right: 8px; }
  .TopBar .TopBarHeaderControls ul li a .Count {
    display: none; }

@media only screen and (min-width: 768px) {
  .Header .HeaderControls ul li:first-child {
    margin-right: 0; } }

@media (max-width: 992px) {
  .TopBar .TopBarHeaderControls ul.navbar {
    float: none !important;
    text-align: center; }
    .TopBar .TopBarHeaderControls ul.navbar > li {
      float: none;
      display: inline-block; } }

.Header .row > div.Logo {
  order: 1; }

.Header .row > div.SearchWrapper {
  order: 2; }
  .Header .row > div.SearchWrapper .Search {
    padding: 0; }
    .Header .row > div.SearchWrapper .Search .AjaxSearchBoxContainer {
      -webkit-border-radius: 8px;
      -moz-border-radius: 8px;
      border-radius: 8px;
      border: none; }
      .Header .row > div.SearchWrapper .Search .AjaxSearchBoxContainer .AjaxSearchResults {
        top: 104%;
        background: #fff; }
        .Header .row > div.SearchWrapper .Search .AjaxSearchBoxContainer .AjaxSearchResults a {
          border-bottom: 1px solid #d8d8d9; }
          .Header .row > div.SearchWrapper .Search .AjaxSearchBoxContainer .AjaxSearchResults a h4 {
            font-size: 14px; }

.Header .row > div.HeaderControls {
  order: 3; }

.AgentBar {
  font-size: 12px;
  border-bottom: 1px solid #d8d8d9; }
  .AgentBar .Button {
    font-size: 12px;
    padding: 4px 8px;
    line-height: 20px; }

.Breadcrumbs {
  z-index: 1;
  position: relative;
  border-bottom: 1px solid #d8d8d9; }

@media only screen and (max-width: 991px) {
  .Header .container .HeaderControls {
    border-top: 1px solid #d8d8d9;
    border-bottom: 1px solid #d8d8d9; } }

/*** End of Header ***/
/*** Navigation ***/
@media only screen and (min-width: 992px) {
  .NavigationBar {
    border-bottom: 1px solid #d8d8d9; }
    .NavigationBar .container > ul > li > a {
      font-weight: bold;
      text-transform: uppercase; }
  .SubNavContainer {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    transition: none !important; }
    .SubNavContainer .SubNav > li a {
      color: #787878; } }

/*** End of Navigation ***/
/*** Home Page Modules ***/
.HomeModules > div:not(.SliderModule) {
  margin-top: 16px; }

.HomeModules .SliderModule {
  margin-bottom: 0; }

.HomeModules .USPsModule .USPItems {
  display: flex;
  justify-content: center;
  padding: 8px;
  border: 1px solid #d8d8d9;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px; }
  .HomeModules .USPsModule .USPItems .USPItem {
    display: flex;
    align-items: center;
    flex: 1;
    padding: 16px;
    border-right: 1px solid #d8d8d9; }
    @media (max-width: 991px) {
      .HomeModules .USPsModule .USPItems .USPItem {
        justify-content: center;
        text-align: center; } }
    .HomeModules .USPsModule .USPItems .USPItem:last-child {
      border-right: none; }
    .HomeModules .USPsModule .USPItems .USPItem a {
      display: flex;
      align-items: center;
      justify-content: flex-start;
      text-align: left;
      color: #58585a; }
      .HomeModules .USPsModule .USPItems .USPItem a i {
        color: #bd1722;
        font-size: 28px;
        padding-right: 16px; }

/*** End of Home Page Modules ***/
/*** Thumbnails ***/
@media only screen and (min-width: 768px) {
  .ProductSorting {
    background: #EDEDED;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px; } }

.Thumbnail .Inner,
.Products .ProductThumbnail .Inner,
.Departments .Department .Inner,
.ContentThumb .Inner {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px; }
  .Thumbnail .Inner .Name,
  .Products .ProductThumbnail .Inner .Name,
  .Departments .Department .Inner .Name,
  .ContentThumb .Inner .Name {
    font-size: 14px; }

.Products .ProductThumbnail .Inner {
  display: flex;
  flex-direction: column; }
  .Products .ProductThumbnail .Inner .Name {
    order: -1;
    padding: 0;
    font-size: 12px;
    letter-spacing: 0.5px; }
    .Products .ProductThumbnail .Inner .Name a {
      padding: 8px 40px 16px 8px;
      justify-content: flex-start;
      align-items: flex-start;
      text-align: left;
      font-weight: bold; }
  .Products .ProductThumbnail .Inner .Image .PromotionSticker {
    position: absolute;
    bottom: 8px;
    right: 8px; }
  .Products .ProductThumbnail .Inner .Favourites {
    top: 16px; }
    .Products .ProductThumbnail .Inner .Favourites .FavouritesBtn {
      font-size: 18px; }
  .Products .ProductThumbnail .Inner .Buying {
    padding-top: 0; }
    .Products .ProductThumbnail .Inner .Buying .Stock,
    .Products .ProductThumbnail .Inner .Buying .Notify {
      font-size: 12px; }

.DepartmentListView .ProductThumbnail .Inner .Image .PromotionSticker {
  display: none; }

@media only screen and (min-width: 768px) {
  .DepartmentListView {
    margin-top: 8px; }
    .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Name a {
      color: #58585a; }
    .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Stock {
      font-size: 12px; } }

.Departments .Department .Inner {
  border: none;
  padding: 0; }
  .Departments .Department .Inner .Name {
    font-size: 18px; }

/*** End of Thumbnails ***/
/*** Product Page ***/
.ProductPageContainer h1,
.ProductPageContainer h2 {
  color: #58585a;
  font-size: 28px; }

.ProductPageContainer .ImagesContainer .MainImageCarousel a,
.ProductPageContainer .ImagesContainer .ThumbImages .Thumb .Inner a {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px; }

.ProductPageContainer .ImagesContainer .Favourites .FavouritesBtn {
  font-size: 28px; }

.ProductPageContainer .ImagesContainer .PromotionSticker {
  position: absolute;
  bottom: 16px;
  right: 16px;
  z-index: 2; }

.ProductPageContainer .ImagesContainer .ThumbImages + .PromotionSticker {
  bottom: calc(20% + 16px); }

.TabContainer .TabContentsContainer .r-tabs-accordion-title a,
.TabContainer .TabContentsContainer .TabContent {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px; }

/*** End of Product Page ***/
/*** Footer ***/
.Footer .FooterImages img {
  padding: 0 8px 8px 0; }

/*** End of Footer ***/
/*** Agent Orders ***/
.CartDataTable .WriteInCostPrice {
  display: flex;
  align-items: center;
  width: 85px; }

.WriteInProductRow .Description {
  word-break: break-all; }

.OrderSaveForLaterForm fieldset {
  background: #e6e6e6;
  padding: 16px; }

.ViewOrderModal .modal-dialog {
  max-width: 800px;
  width: 90%; }

/*** End of Agent Orders ***/
._bespoke_approval input[type=checkbox] {
  margin-right: 4px; }

/*** Widgets ***/
.WidgetsRow {
  margin: 0 -8px; }
  .WidgetsRow ._Widget {
    margin-top: 16px;
    margin-bottom: 16px; }
    .WidgetsRow ._Widget .Inner ._PieChart,
    .WidgetsRow ._Widget .Inner ._Chart,
    .WidgetsRow ._Widget .Inner ._SingleDigit,
    .WidgetsRow ._Widget .Inner .WidgetError {
      height: 285px;
      overflow: auto; }
    .WidgetsRow ._Widget .Inner ._SingleDigit,
    .WidgetsRow ._Widget .Inner .WidgetError {
      text-align: center;
      display: flex;
      align-items: center;
      justify-content: center; }
    .WidgetsRow ._Widget .Inner ._SingleDigit {
      color: #bd1722;
      font-size: 100px; }
      .WidgetsRow ._Widget .Inner ._SingleDigit.Zero {
        color: #c10000; }
    .WidgetsRow ._Widget .Inner .WidgetError {
      color: #c10000; }

/*** End of Widgets ***/
/*** Start Of Split Shipping  ***/
.radio-button-list-container {
  line-height: 24px; }

.list-item-container {
  display: flex;
  align-items: center; }

.radio-button-spacing {
  margin-right: 10px; }

.normal-text {
  font-weight: normal; }

.split-shipping-container {
  margin-top: 5px; }

/*** End Of Split Shipping  ***/
