/*** Parameters ***/
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600&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 */
/* Checkout Confirmation */
/* Don't override these (for icons in payment options) */
/* Orginal component border */
/* Orginal body text */
/* Orginal component border */
/* Promotions */
/* End of Promotions */
/* 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: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  border: 1px solid #d8d9da;
  color: #58595b;
  background: #fff; }
  .form-control::placeholder {
    color: #58595b; }

/*** 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: #002a67;
  border: none;
  box-shadow: none;
  text-shadow: none;
  color: #fff;
  padding: 8px 16px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0; }
  .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: #003f9a;
    color: #fff; }
  .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;
  padding-right: 0;
  padding-left: 0; }

table.Wizard .WizardNav tr td {
  padding-top: 8px; }

table.Wizard .WizardNav .Button {
  width: 100%;
  display: block; }

@media only screen and (min-width: 768px) {
  table.Wizard .WizardNav table > tbody tr {
    display: flex;
    justify-content: flex-end; }
    table.Wizard .WizardNav table > tbody tr td {
      width: auto; }
      table.Wizard .WizardNav table > tbody tr td:first-child:not(:last-child) {
        margin-right: auto; }
  table.Wizard .WizardNav .Button {
    width: auto; } }

/*** General ***/
body {
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  color: #58595b;
  background: #fff; }

a {
  color: #002a67;
  text-decoration: none; }
  a:hover, a:focus {
    color: #003f9a;
    cursor: pointer;
    text-decoration: none; }

*:focus {
  outline: none; }

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

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

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

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

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: #002a67 !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: #002a67; }

.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: 19.6px;
  padding: 8px 16px;
  height: auto; }

.accordion-item {
  border-color: #d8d9da;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0; }
  .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: #58595b; }

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

.ui-datepicker.ui-widget-content .ui-state-default {
  border: 1px solid #d8d9da;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58595b;
  padding: 8px;
  padding: 4px; }
  .ui-datepicker.ui-widget-content .ui-state-default.ui-state-highlight {
    border-color: #002a67;
    background: rgba(0, 42, 103, 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 #d8d9da;
      background: #fff;
      /*@include border-radius($component-border-radius);*/
      color: #58595b;
      padding: 8px; }
      .AccountMenuLinks li a i {
        margin-right: 8px;
        color: #002a67; }

/*** 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 #d8d9da; }
  .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 .TotalsDiscount {
    font-weight: bold;
    color: #002a67; }
  .MiniBasket .MiniBasketTotals .GrandTotalRow {
    font-weight: bold;
    font-size: 19.6px; }

/*** 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: #002a67;
      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: #67a5ff; }
      .owl-carousel .owl-controls .owl-dots .owl-dot.active {
        background: #002a67; }

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

/*** Delivery Cut Off ***/
.DeliveryCutOff {
  background: #48391D;
  color: #fff;
  font-size: 11.2px; }
  @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: #002a67;
  color: #fff;
  text-align: center;
  padding: 8px;
  font-size: 11.2px; }
  .BannerMessage p {
    margin: 0; }
  .BannerMessage a {
    color: #fff; }

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

/*** End of Banner Message ***/
/*** Top Bar ***/
.TopBar {
  background: #f2f2f2; }
  .TopBar ul li a {
    color: #58595b; }
    .TopBar ul li a i {
      color: #002a67; }
    .TopBar ul li a:hover, .TopBar ul li a:focus {
      background: white; }

/*** 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 #d8d9da;
    background: #fff;
    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: #002a67;
      padding: 0;
      font-size: 19.6px; }
    .Header .Search .AjaxSearchBoxContainer .AjaxSearchResults {
      display: none;
      position: absolute;
      top: 100%;
      right: -1px;
      left: -1px;
      z-index: 2;
      border: 1px solid #d8d9da;
      background: #fff;
      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: #58595b; }
      .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: #58595b;
        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: #58595b;
          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: #002a67;
        padding-top: 0 !important;
        padding-bottom: 0 !important; }
        .Header .container .HeaderControls li a, .Header .container .HeaderControls li i {
          color: #fff; }
        .Header .container .HeaderControls li:nth-child(odd) {
          background: #003f9a; }
        .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: #002a67; }
    .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: #dfdfdf;
  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: #002a67;
    color: #fff; }
    .NavigationBar .container > ul > li > a:hover, .NavigationBar .container > ul > li > a:focus {
      background: #003f9a;
      color: #fff; }

.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: #002a67; }
  .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 #002a67; }
  .VerticalNav h3 {
    background: #002a67;
    color: #fff;
    text-align: center;
    padding: 16px 8px;
    margin: 0; }
    .VerticalNav h3 .ClearAll {
      color: #fff;
      position: absolute;
      top: 16px;
      right: 22px;
      line-height: 50px; }
  .VerticalNav .VerticalProductNav ul > li {
    width: 100%; }
    .VerticalNav .VerticalProductNav ul > li > a {
      padding: 8px 16px;
      color: #58595b; }
      .VerticalNav .VerticalProductNav ul > li > a:after {
        color: #002a67;
        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, 89, 91, 0.5);
  -webkit-box-shadow: 0 0 10px rgba(88, 89, 91, 0.5);
  box-shadow: 0 0 10px rgba(88, 89, 91, 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 #002a67;
        font-weight: bold; }
      .SubNavContainer .SubNav > li a {
        display: block;
        color: #58595b;
        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: #002a67;
        color: #fff;
        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: #003f9a;
          color: #fff; }
      .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: #EBEBEC;
  color: #58595b;
  text-align: right;
  padding-top: 8px;
  padding-bottom: 8px;
  font-size: 11.2px; }
  .AgentBar a:not(.Button) {
    color: #58595b; }
  .AgentBar .Button {
    margin-left: 8px;
    font-size: 11.2px;
    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: 19.6px;
      line-height: 19.6px;
      font-size: 19.6px;
      font-family: "Font Awesome 6 Pro";
      content: "\f107";
      color: #002a67;
      -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: #58595b;
        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 #d8d9da;
      background: #fff;
      /*@include border-radius($component-border-radius);*/
      color: #58595b;
      padding: 8px;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      height: 100%;
      text-align: center; }
      ul.AccountPageLinks li a i {
        display: block;
        color: #002a67;
        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%; } }
.AddressList .AddressListHeading {
  display: flex;
  align-items: center;
  justify-content: space-between; }
  .AddressList .AddressListHeading h2 {
    margin: .5rem 0;
    /* to match _reboot.scss */ }
  .AddressList .AddressListHeading .Next {
    margin-right: 8px;
    /* Line buttons up in table */ }

.AddressList .table-responsive {
  max-height: 300px; }

/*** 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: #EBEBEC;
  color: #58595b;
  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: #58595b; }
      .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: #002a67; }
      .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: #58595b; }
    .Footer .container .Copyright li {
      list-style: none;
      margin: 0;
      padding: 0; }
    .Footer .container .Copyright li {
      display: inline-block; }
      .Footer .container .Copyright li a {
        color: #58595b; }
      .Footer .container .Copyright li:not(:first-child):before {
        content: "";
        height: 14px;
        width: 1px;
        display: inline-block;
        vertical-align: middle;
        background: #58595b;
        margin: 0 4px; }

/*** End of Footer ***/
/*** Cookie Concent ***/
.CookieConsent {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 5;
  background: #fff;
  color: #58595b;
  -moz-box-shadow: 0 0 10px #58595b;
  -webkit-box-shadow: 0 0 10px #58595b;
  box-shadow: 0 0 10px #58595b; }
  .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: #fff;
          text-shadow: 1px 1px 2px #2C2C2C; }
        .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: 19.6px; } }
          .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 .row > div p:last-child,
    .Modules .DefaultModule .row > div 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: #002a67;
        color: #fff;
        padding: 0;
        overflow: hidden; }
        .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: 19.6px;
              font-weight: bold;
              color: #fff; }
            @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: #48391D;
          position: absolute;
          top: 8px;
          left: 32px;
          min-width: 50%;
          max-width: 50%;
          font-size: 28px;
          font-weight: bold;
          padding: 8px;
          color: #fff;
          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: #48391D;
      color: #fff;
      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: #002a67;
      color: #fff;
      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 #002a67; } }
.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;
      background: #fff;
      border: 1px solid #d8d9da; }
      .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 #d8d9da;
          margin-bottom: 8px; }
          .HomeModules .CategoriesModule .Categories .Category .Inner .CategoryList .Name a,
          .Modules .CategoriesModule .Categories .Category .Inner .CategoryList .Name a {
            display: block;
            font-size: 19.6px; }
        .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: #002a67; }
          .HomeModules .CategoriesModule .Categories .Category .Inner .CategoryList ul li a,
          .Modules .CategoriesModule .Categories .Category .Inner .CategoryList ul li a {
            color: #58595b; }

.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: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: 19.6px;
        color: #002a67; }
      .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: #58595b;
      border: 1px solid #d8d9da; }
      .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: 19.6px; }

@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; } }

.AccountModules > div:first-child {
  margin-top: 0; }

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

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

/*** 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 #58595b; }

.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: #002a67;
    color: #fff;
    padding: 8px 16px;
    border-radius: 5px 5px 5px 0; }
  .ProductRibbon:after {
    content: "";
    position: absolute;
    bottom: -8px;
    border: 8px solid transparent;
    border-right-color: #001534;
    left: -8px;
    z-index: -2; }

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

/*** 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 #d8d9da;
    background: #fff;
    /*@include border-radius($component-border-radius);*/
    color: #58595b;
    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: 19.6px; }
      .Thumbnail .Inner .Name a, .Products .ProductThumbnail .Inner .Name a,
      .Departments .Department .Inner .Name a,
      .ContentThumb .Inner .Name a {
        color: #58595b;
        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: #002a67;
  font-size: 19.6px; }

.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 #d8d9da;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58595b;
  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: #002a67;
          font-size: 19.6px; }
      .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: #808080;
    font-size: 19.6px;
    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: #d8d9da; } }
/*** 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 #d8d9da;
    background: #fff;
    /*@include border-radius($component-border-radius);*/
    color: #58595b;
    padding: 8px;
    text-decoration: none;
    display: inline-block; }
    .ProductSorting .ViewSwitcher a i,
    .RepeaterNav .ViewSwitcher a i {
      color: #002a67; }
    .ProductSorting .ViewSwitcher a.ActiveView,
    .RepeaterNav .ViewSwitcher a.ActiveView {
      border-color: #002a67; }
    .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: 19.6px; }

.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 #d8d9da;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58595b;
  padding: 8px; }
  .ProductPageContainer .ImagesContainer .MainImageCarousel .Image.VidThumb .FrameWrap iframe {
    outline: none;
    border: none; }

.ProductPageContainer .ImagesContainer .MainImageCarousel a {
  border: 1px solid #d8d9da;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58595b;
  padding: 8px; }
  .ProductPageContainer .ImagesContainer .MainImageCarousel a .Enlarge {
    color: #002a67;
    position: absolute;
    bottom: 8px;
    right: 8px;
    font-size: 19.6px; }

.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 #d8d9da;
      background: #fff;
      /*@include border-radius($component-border-radius);*/
      color: #58595b;
      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: #002a67;
    font-size: 19.6px;
    text-shadow: 0 0 8px #fff; }

.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: #002a67;
  font-size: 19.6px; }

.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 #d8d9da;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58595b;
  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 #d8d9da;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58595b;
  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 #d8d9da;
    background: #fff;
    /*@include border-radius($component-border-radius);*/
    color: #58595b;
    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: #58595b; }

@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: #002a67; }

.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: 19.6px;
    margin-bottom: 16px; }
    .Login .LoginIntro p {
      margin: 0; }
  .Login .LoginBox {
    border: 1px solid #d8d9da;
    background: #fff;
    /*@include border-radius($component-border-radius);*/
    color: #58595b;
    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: #002a67; }
  .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: 19.6px; }

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

.DataTable tbody tr {
  background: #e6e6e6;
  color: #58595b; }
  .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.TotalsDiscount {
  font-weight: bold;
  color: #002a67; }

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

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

.CartDataTable .ProductInfoRow .Description .OrderItemNote {
  font-style: italic; }

@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.TotalsDiscount {
    font-weight: bold;
    color: #002a67; }
  .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 #d8d9da;
  background: #fff;
  /*@include border-radius($component-border-radius);*/
  color: #58595b;
  padding: 8px;
  border: none;
  margin: 8px 0;
  text-align: center; }
  @media only screen and (min-width: 768px) {
    .CartContainer .FreeShipping {
      font-size: 19.6px; } }
  .CartContainer .FreeShipping i,
  .CartContainer .FreeShipping .AmountRequired {
    color: #002a67;
    font-size: 19.6px; }
    @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: #002a67; }
    #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 ***/
/*** Promotions ***/
.OrderPromotionsApplied {
  background: #f9f9f9;
  color: #58595b;
  border: 1px solid #d8d9da;
  padding: 16px;
  margin: 8px 0;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  clear: both; }
  @media only screen and (min-width: 768px) {
    .OrderPromotionsApplied {
      flex-direction: row;
      width: fit-content; } }
  .OrderPromotionsApplied p {
    margin: 0 8px 0 0; }
  .OrderPromotionsApplied ul {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    list-style: none; }
    .OrderPromotionsApplied ul li:before {
      font-family: "Font Awesome 6 Pro";
      content: '\f058';
      color: #002a67;
      font-weight: bold; }
    @media only screen and (min-width: 768px) {
      .OrderPromotionsApplied ul {
        flex-wrap: wrap;
        flex-direction: row; }
        .OrderPromotionsApplied ul li {
          padding-right: 8px;
          margin-right: 8px;
          border-right: 1px solid #58595b; }
          .OrderPromotionsApplied ul li:last-child {
            border: none;
            padding-right: 0;
            margin-right: 0; }
          .OrderPromotionsApplied ul li:before {
            font-family: "Font Awesome 6 Pro";
            content: '\f058';
            color: #002a67;
            font-weight: bold; } }
/*** End of Promotions ***/
/*** 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; }

table.Wizard .CheckBoxContainer {
  display: flex;
  align-items: center; }
  table.Wizard .CheckBoxContainer input {
    margin-top: 0;
    margin-right: 8px; }
  table.Wizard .CheckBoxContainer label {
    margin-bottom: 0; }

@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; } }

@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: 19.6px; }
  table.Wizard .Sidebar td:not(.Selected) a {
    color: #58595b; } }

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

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

.CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol {
  display: flex;
  align-items: flex-end; }
  .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner {
    flex: 1;
    padding: 24px;
    background: #f9f9f9;
    border: 1px solid #d8d9da;
    color: #58595b;
    margin-top: 8px; }
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner h3 {
      margin-top: 8px; }
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .AgreementCheckboxContainer {
      align-items: flex-start;
      padding: 8px 0 0; }
      .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .AgreementCheckboxContainer label {
        flex: 1; }
      .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .AgreementCheckboxContainer input {
        margin-top: 4px; }
      .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .AgreementCheckboxContainer .Error {
        width: 100%; }
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .TokensTable .CardRow .CardLogo img {
      max-width: 30px; }
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .SaveOrderBtnContainer .Divider {
      text-align: center;
      position: relative;
      margin: 8px 0; }
      .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .SaveOrderBtnContainer .Divider:before, .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .SaveOrderBtnContainer .Divider:after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        height: 1px;
        width: calc(50% - 30px);
        border-top: 1px solid #d8d9da; }
      .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .SaveOrderBtnContainer .Divider:after {
        left: auto;
        right: 0; }
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .PaymentTotal {
      display: flex;
      justify-content: space-between;
      font-weight: bold; }
      .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .PaymentTotal .PaymentTotalFigure {
        color: #002a67; }
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .VoucherPayment .Commit,
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .VoucherPaymentOverview {
      text-align: right; }
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .PaymentBtnsWrapper .Button,
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .SaveOrderBtnContainer .Button,
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .VoucherPaymentContent .Button {
      display: flex;
      justify-content: space-between;
      align-items: center;
      width: 100%;
      min-height: 40px;
      margin-top: 8px;
      border: 1px solid #d6d6d6;
      background: #ffffff;
      color: #575756;
      text-align: left; }
      .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .PaymentBtnsWrapper .Button:hover, .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .PaymentBtnsWrapper .Button:focus,
      .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .SaveOrderBtnContainer .Button:hover,
      .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .SaveOrderBtnContainer .Button:focus,
      .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .VoucherPaymentContent .Button:hover,
      .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .VoucherPaymentContent .Button:focus {
        border-color: #002a67;
        opacity: 0.75; }
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .PaymentBtnsWrapper .Button.SagePayDirectPaymentButton:after {
      content: "";
      background: url(../../../images/paypal.png) no-repeat;
      width: 80px;
      height: 20px; }
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .SaveOrderBtnContainer .Button:after {
      content: "";
      background: url(../../../images/save-order.png) no-repeat;
      width: 20px;
      height: 20px; }
    .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentCol .CheckoutPaymentColInner .VoucherPaymentContent .Button:after {
      content: "";
      background: url(../../../images/gift-voucher.png) no-repeat;
      width: 22px;
      height: 20px; }

@media only screen and (min-width: 1200px) {
  .CheckoutContainer .CheckoutPaymentStep .CheckoutPaymentColInner {
    position: sticky;
    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. */
/*** End of Parameters ***/
/*
    Regen styles + update version.
*/
/*** General ***/
#widget-preview.ac-widget {
  z-index: 10; }

.container {
  width: 75vw !important;
  max-width: 2000px; }

@media only screen and (max-width: 767px) {
  .Header .container {
    width: 100vw !important; } }

.Button,
.btn,
.DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Notify a,
.btn-default,
.NotAvailable.Button {
  background: #002a67; }
  .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,
  .NotAvailable.Button:hover,
  .NotAvailable.Button:focus {
    color: #fff; }

.Stock,
.Notify {
  font-size: 12px; }

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

.FixedSideButton {
  position: fixed;
  z-index: 1;
  -webkit-transform: rotate(270deg);
  -moz-transform: rotate(270deg);
  transform: rotate(270deg);
  -moz-box-shadow: 0 0 8px rgba(255, 255, 255, 0.5);
  -webkit-box-shadow: 0 0 8px rgba(255, 255, 255, 0.5);
  box-shadow: 0 0 8px rgba(255, 255, 255, 0.5); }
  .FixedSideButton.MainSite {
    bottom: 100px;
    right: -45px; }
    @media only screen and (max-width: 767px) {
      .FixedSideButton.MainSite {
        right: -33px; } }
  .FixedSideButton.FindARetailer {
    bottom: 240px;
    right: -51px; }
    @media only screen and (max-width: 767px) {
      .FixedSideButton.FindARetailer {
        right: -39px;
        bottom: 200px; } }
  .FixedSideButton.Brochure {
    bottom: 380px;
    right: -45px; }
    @media only screen and (max-width: 767px) {
      .FixedSideButton.Brochure {
        right: -33px;
        bottom: 301px; } }
  @media only screen and (max-width: 767px) {
    .FixedSideButton .Button {
      font-size: 11.2px;
      padding: 4px 8px; } }
@media only screen and (max-width: 767px) {
  .container {
    padding: 0 16px; }
  .Header .container {
    padding: 0 8px; }
  .ProductRibbon {
    top: 16px; }
    .ProductRibbon .RibbonInner {
      padding: 8px;
      font-size: 12px; }
      .ProductRibbon .RibbonInner .Button {
        padding: 0;
        font-size: 12px; } }

.ProductRibbon .RibbonInner {
  line-height: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center; }
  .ProductRibbon .RibbonInner > * {
    margin-right: 4px; }
  .ProductRibbon .RibbonInner .FindARetailer {
    display: flex; }
  .ProductRibbon .RibbonInner p {
    margin-bottom: 0; }
  .ProductRibbon .RibbonInner .Button:hover, .ProductRibbon .RibbonInner .Button:focus {
    background: transparent; }

.AddressFinderContainer {
  background: #f1f1f1;
  padding: 8px;
  margin-bottom: 8px; }
  .AddressFinderContainer > div > label {
    z-index: 2;
    font-weight: bold;
    color: #c10000; }
  .AddressFinderContainer > div > input.Text {
    background: #fff !important; }

/*** End of General ***/
/*** Owl Carousel ***/
.owl-carousel .owl-controls .owl-dots .owl-dot {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  height: 4px;
  width: 24px; }

/*** End of Owl Carousel ***/
/*** Forms ***/
fieldset div + legend {
  margin-top: 8px; }

fieldset legend {
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 2px solid #d8d9da; }

fieldset div {
  margin: 0;
  position: relative; }
  fieldset div label {
    position: absolute;
    top: 8px;
    left: 8px;
    margin: 0;
    padding: 0;
    text-align: left;
    width: auto;
    z-index: 0;
    font-weight: normal;
    font-size: 12px;
    -webkit-transition: all 0.15s linear;
    -moz-transition: all 0.15s linear;
    transition: all 0.15s linear; }
    fieldset div label.fieldInFocus {
      font-size: 9.8px; }
    fieldset div label .Required {
      position: static;
      color: #c10000; }
  fieldset div input.Text {
    position: relative;
    z-index: 1;
    background-color: transparent !important;
    height: 50px;
    line-height: 50px;
    padding: 16px 8px 8px 8px;
    line-height: 44px;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none; }
    fieldset div input.Text:focus {
      outline: none;
      -moz-box-shadow: none;
      -webkit-box-shadow: none;
      box-shadow: none;
      border-color: #002a67; }
    fieldset div input.Text:-webkit-autofill {
      webkit-transition-delay: 9999s;
      -webkit-transition: color 9999s ease-out, background-color 9999s ease-out; }
  fieldset div select.form-control {
    line-height: 50px;
    height: 50px;
    position: relative;
    z-index: 1;
    background-color: transparent;
    padding: 16px 8px 8px 4px; }
  fieldset div textarea.form-control {
    padding: 16px 8px 8px 8px;
    margin-top: 0 !important;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    min-height: 60px; }
  fieldset div .Error {
    font-size: 12px; }

fieldset.RadioButtons div label {
  position: initial; }

fieldset.RadioButtons div div {
  display: inline-flex;
  align-items: center;
  margin: 0 0 0 8px; }
  fieldset.RadioButtons div div input {
    margin: 0 4px 0 0; }
  fieldset.RadioButtons div div label {
    position: initial;
    margin: 0; }

/*** End of Forms ***/
/*** Header Badges ***/
.Header .Logo {
  order: 1; }
  .Header .Logo img {
    max-height: 60px; }

.Header .HeaderBadges {
  order: 3; }
  .Header .HeaderBadges .HeaderBadgesWrapper {
    display: flex;
    align-items: center;
    justify-content: flex-end; }
    .Header .HeaderBadges .HeaderBadgesWrapper .Image {
      padding: 4px; }

.Header .SearchWrapper {
  order: 5; }
  @media only screen and (min-width: 768px) {
    .Header .SearchWrapper {
      order: 2; } }
.Header .HeaderControls {
  order: 4; }
  @media only screen and (min-width: 768px) {
    .Header .HeaderControls ul li:first-child {
      margin-right: 0; } }
/*** End of Header Badges ***/
/*** Search ***/
.AjaxSearchResults .ResultsSubHeading {
  font-weight: bold;
  text-transform: uppercase; }

.AjaxSearchResults p {
  margin: 8px 0;
  font-style: italic; }

.AjaxSearchResults .DepartmentResults {
  border-top: 1px solid #d8d9da;
  border-bottom: 1px solid #d8d9da;
  padding: 8px;
  margin: 8px 0; }

/*** End of Search ***/
/*** Navigation ***/
.ProdNav ul > li.HasSub > a:after,
.NavigationBar ul > li.HasSub > a:after,
.VerticalNav ul > li.HasSub > a:after {
  right: 8px; }

.NavigationBar .container > ul:before, .NavigationBar .container > ul:after {
  display: none; }

.NavigationBar .container > ul > li:last-child > a {
  background: #f1f1f1; }
  .NavigationBar .container > ul > li:last-child > a:hover, .NavigationBar .container > ul > li:last-child > a:focus {
    background: #002a67;
    color: #fff; }

.NavigationBar .container > ul > li > a {
  background: none;
  color: #58595b; }
  .NavigationBar .container > ul > li > a:hover, .NavigationBar .container > ul > li > a:focus {
    background: #f1f1f1;
    color: #58595b; }

@media only screen and (min-width: 992px) {
  .NavigationBar {
    background: none !important;
    border-top: 1px solid #d8d9da;
    border-bottom: 1px solid #d8d9da; } }

@media (max-width: 991px) {
  .NavigationBar.fs-navigation-enabled .container > ul > li {
    margin-bottom: 8px; }
    .NavigationBar.fs-navigation-enabled .container > ul > li a {
      border: 1px solid #d8d9da; } }

@media only screen and (min-width: 992px) {
  .SubNavContainer {
    padding: 0 !important; }
    .SubNavContainer .MenuImage {
      float: none;
      width: 100%;
      text-align: center;
      padding: 0; }
    .SubNavContainer.noSecondLevel {
      left: auto;
      right: auto; }
      .SubNavContainer.noSecondLevel > ul.SubNav {
        -webkit-column-count: 1;
        /* Chrome, Safari, Opera */
        -moz-column-count: 1;
        /* Firefox */
        column-count: 1; }
        .SubNavContainer.noSecondLevel > ul.SubNav > li > a {
          border-bottom: none;
          font-weight: normal; }
    .SubNavContainer:not(.noSecondLevel) > ul.SubNav {
      -webkit-column-count: unset;
      /* Chrome, Safari, Opera */
      -moz-column-count: unset;
      /* Firefox */
      column-count: unset;
      display: flex;
      flex-wrap: wrap; }
      .SubNavContainer:not(.noSecondLevel) > ul.SubNav > li {
        width: 25%;
        padding: 8px; }
    .SubNavContainer ul.SubNav > li a {
      padding: 4px; } }

@media (max-width: 991px) {
  .fs-navigation-enabled .OffCanvaSubMenu ul > li,
  .fs-navigation-enabled .OffCanvaSubSubMenu ul > li {
    margin-bottom: 8px !important; }
    .fs-navigation-enabled .OffCanvaSubMenu ul > li > a,
    .fs-navigation-enabled .OffCanvaSubSubMenu ul > li > a {
      background: none !important;
      color: #58595b !important;
      border: 1px solid #d8d9da;
      padding: 16px !important; }
      .fs-navigation-enabled .OffCanvaSubMenu ul > li > a:hover, .fs-navigation-enabled .OffCanvaSubMenu ul > li > a:focus,
      .fs-navigation-enabled .OffCanvaSubSubMenu ul > li > a:hover,
      .fs-navigation-enabled .OffCanvaSubSubMenu ul > li > a:focus {
        background: #f1f1f1 !important; } }

.VerticalNav {
  border: none; }
  .VerticalNav h3 {
    display: none; }
  .VerticalNav .FeatureFilter .FilterGroupWrapper .FilterGroup .FilterGroupTitle:before {
    color: #58595b;
    font-weight: 600; }
  .VerticalNav .FeatureFilter .FilterGroupWrapper .FilterGroup .FilterGroupTitle {
    color: #58595b;
    font-weight: 600; }

.ProductSorting .ViewSwitcher .Position,
.RepeaterNav .ViewSwitcher .Position {
  margin-left: 8px;
  font-size: 11.2px; }

/*** End of Navigation ***/
/*** Modules ***/
.HomeModules > div h2 {
  font-size: 19.6px;
  margin-top: 0;
  letter-spacing: 2px; }

.HomeModules > div.VideoModule {
  margin-top: -16px; }
  .HomeModules > div.VideoModule + div {
    margin-top: 0; }

.HomeModules > div.SliderModule {
  margin-bottom: 0; }
  .HomeModules > div.SliderModule + div {
    margin-top: 0; }
  .HomeModules > div.SliderModule .owl-carousel .owl-controls .owl-nav {
    display: block; }
  .HomeModules > div.SliderModule .owl-carousel .owl-controls .owl-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 8px; }

.HomeModules > div.LinksModule {
  border-top: 1px solid #d8d9da;
  border-bottom: 1px solid #d8d9da; }
  .HomeModules > div.LinksModule + .CarouselModule {
    margin-top: 0; }
  .HomeModules > div.LinksModule + .LinksModule {
    margin-top: 0;
    border-top: 0; }
  .HomeModules > div.LinksModule .row {
    display: flex;
    justify-content: center; }
    @media only screen and (max-width: 767px) {
      .HomeModules > div.LinksModule .row {
        flex-wrap: wrap; } }
    .HomeModules > div.LinksModule .row .Link {
      padding: 8px;
      flex: 1; }
      @media only screen and (min-width: 768px) {
        .HomeModules > div.LinksModule .row .Link {
          border-right: 1px solid #d8d9da; }
          .HomeModules > div.LinksModule .row .Link:last-child {
            border-right: none; } }
      @media only screen and (max-width: 767px) {
        .HomeModules > div.LinksModule .row .Link:nth-child(2n + 1) {
          clear: both; } }
      @media only screen and (max-width: 767px) {
        .HomeModules > div.LinksModule .row .Link a {
          font-size: 11.2px; } }
      .HomeModules > div.LinksModule .row .Link a p {
        display: block;
        margin: 0; }
        .HomeModules > div.LinksModule .row .Link a p i {
          display: block;
          font-size: 19.6px;
          color: #002a67;
          margin-bottom: 8px; }
      .HomeModules > div.LinksModule .row .Link a > div {
        margin-top: 8px;
        overflow: hidden;
        -webkit-transition: all ease 0.5s;
        -moz-transition: all ease 0.5s;
        transition: all ease 0.5s;
        position: relative; }
        .HomeModules > div.LinksModule .row .Link a > div:hover video, .HomeModules > div.LinksModule .row .Link a > div:focus video {
          -webkit-transform: scale(1.1);
          -moz-transform: scale(1.1);
          transform: scale(1.1); }
        .HomeModules > div.LinksModule .row .Link a > div video {
          -webkit-transition: transform 0.5s ease;
          -moz-transition: transform 0.5s ease;
          transition: transform 0.5s ease; }

.HomeModules > div.CarouselModule {
  background: #f1f1f1;
  padding: 50px; }

.HomeModules > div.DefaultModule {
  padding: 16px;
  margin-top: 0; }
  .HomeModules > div.DefaultModule + .HomeModule {
    margin-top: 0; }
  @media only screen and (min-width: 768px) {
    .HomeModules > div.DefaultModule {
      padding: 50px; } }
  .HomeModules > div.DefaultModule .background-image-wrap {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    padding-bottom: 0;
    background-attachment: fixed;
    z-index: -1; }
  .HomeModules > div.DefaultModule .Wrapper .ContentInner {
    background: rgba(255, 255, 255, 0.9);
    padding: 16px; }
    @media only screen and (min-width: 768px) {
      .HomeModules > div.DefaultModule .Wrapper .ContentInner {
        padding: 50px; } }
    .HomeModules > div.DefaultModule .Wrapper .ContentInner h2.Title {
      font-size: 19.6px;
      margin-top: 0;
      letter-spacing: 2px;
      color: #2C2C2C;
      margin-bottom: 16px; }
      @media only screen and (min-width: 768px) {
        .HomeModules > div.DefaultModule .Wrapper .ContentInner h2.Title {
          margin-bottom: 32px; } }
    .HomeModules > div.DefaultModule .Wrapper .ContentInner .HomeText {
      color: #2C2C2C; }
  .HomeModules > div.DefaultModule h2 {
    text-align: center; }
  .HomeModules > div.DefaultModule .row {
    align-items: flex-start; }
    .HomeModules > div.DefaultModule .row .HomeText {
      text-align: justify; }
      .HomeModules > div.DefaultModule .row .HomeText p:last-child {
        margin: 0; }

.HomeModules > div.SocialModule .Social {
  padding: 8px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .HomeModules > div.SocialModule .Social p {
    margin: 0; }
    .HomeModules > div.SocialModule .Social p i {
      margin-right: 16px;
      font-size: 35px;
      color: #002a67; }

/*** End of Modules ***/
/*** Thumbnails ***/
.DepartmentBanner .DepartmentTitlePlaceholder h1 {
  font-weight: bold;
  text-transform: uppercase; }
  @media only screen and (min-width: 992px) {
    .DepartmentBanner .DepartmentTitlePlaceholder h1 {
      font-size: 70px; } }
.ParallaxBanner {
  padding: 50px; }
  @media only screen and (max-width: 767px) {
    .ParallaxBanner {
      padding: 8px; } }
  .ParallaxBanner .background-image-wrap {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    padding-bottom: 0;
    background-attachment: fixed;
    z-index: -1; }
  .ParallaxBanner .Wrapper .ContentInner {
    background: rgba(255, 255, 255, 0.9);
    padding: 16px; }
    @media only screen and (min-width: 768px) {
      .ParallaxBanner .Wrapper .ContentInner {
        padding: 50px; } }
    .ParallaxBanner .Wrapper .ContentInner h2.Title {
      font-size: 19.6px;
      margin-top: 0;
      letter-spacing: 2px;
      color: #2C2C2C;
      margin-bottom: 16px; }
      @media only screen and (min-width: 768px) {
        .ParallaxBanner .Wrapper .ContentInner h2.Title {
          margin-bottom: 32px; } }
    .ParallaxBanner .Wrapper .ContentInner .Description {
      color: #2C2C2C; }

.Products:not(.ProductCarousel),
.Departments {
  display: flex;
  justify-content: center;
  flex-wrap: wrap; }

.Thumbnail .Inner,
.Products .ProductThumbnail .Inner,
.Departments .Department .Inner,
.ContentThumb .Inner {
  -webkit-transition: all ease 0.5s;
  -moz-transition: all ease 0.5s;
  transition: all ease 0.5s;
  position: relative; }
  .Thumbnail .Inner:hover .Image img, .Thumbnail .Inner:focus .Image img,
  .Products .ProductThumbnail .Inner:hover .Image img,
  .Products .ProductThumbnail .Inner:focus .Image img,
  .Departments .Department .Inner:hover .Image img,
  .Departments .Department .Inner:focus .Image img,
  .ContentThumb .Inner:hover .Image img,
  .ContentThumb .Inner:focus .Image img {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    transform: scale(1.1); }
  .Thumbnail .Inner .Image,
  .Products .ProductThumbnail .Inner .Image,
  .Departments .Department .Inner .Image,
  .ContentThumb .Inner .Image {
    padding-bottom: 75%;
    overflow: hidden; }
    .Thumbnail .Inner .Image img,
    .Products .ProductThumbnail .Inner .Image img,
    .Departments .Department .Inner .Image img,
    .ContentThumb .Inner .Image img {
      -webkit-transition: transform 0.5s ease;
      -moz-transition: transform 0.5s ease;
      transition: transform 0.5s ease; }
  .Thumbnail .Inner .Name,
  .Products .ProductThumbnail .Inner .Name,
  .Departments .Department .Inner .Name,
  .ContentThumb .Inner .Name {
    font-size: 14px; }

.Products .Department .Inner {
  border: none; }
  .Products .Department .Inner .Buying {
    padding-top: 8px; }

.Products .ProductThumbnail .Inner {
  border: none; }

@media only screen and (min-width: 768px) {
  .DepartmentListView .ProductThumbnail .Inner .ProductInfo .Buying .Stock {
    text-align: left; } }

/*** End of Thumbnails ***/
/*** Brands Template ***/
.BrandsTemplate .Department .Inner {
  padding: 0;
  margin: 0 8px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  overflow: hidden; }
  @media only screen and (min-width: 768px) {
    .BrandsTemplate .Department .Inner {
      height: 100%;
      min-height: 300px; } }
  .BrandsTemplate .Department .Inner > div {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%; }
    .BrandsTemplate .Department .Inner > div .Logo {
      padding: 16px; }
    .BrandsTemplate .Department .Inner > div .ResponsiveImage {
      -webkit-transition: all ease 1s;
      -moz-transition: all ease 1s;
      transition: all ease 1s; }
    .BrandsTemplate .Department .Inner > div .Name {
      position: absolute;
      top: 100%;
      right: 0;
      left: 0;
      height: 100%;
      background: rgba(0, 0, 0, 0.75);
      color: #fff;
      margin: 0;
      padding: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      -webkit-transition: top ease 1s;
      -moz-transition: top ease 1s;
      transition: top ease 1s;
      padding: 32px;
      font-size: 11.2px; }
      .BrandsTemplate .Department .Inner > div .Name .Title {
        font-size: 14px;
        font-weight: bold;
        letter-spacing: 1px;
        margin-bottom: 8px; }
      .BrandsTemplate .Department .Inner > div .Name a {
        color: #fff; }
        .BrandsTemplate .Department .Inner > div .Name a p:last-child {
          margin: 0; }
      @media only screen and (max-width: 767px) {
        .BrandsTemplate .Department .Inner > div .Name {
          display: none; } }
  @media only screen and (min-width: 768px) {
    .BrandsTemplate .Department .Inner:hover .Name.Strapline {
      top: 0; } }
  @media only screen and (max-width: 767px) {
    .BrandsTemplate .Department .Inner .BackgroundImage {
      min-height: 300px; } }
  .BrandsTemplate .Department .Inner .BackgroundImage .background-image-wrap {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }

/*** End of Brands Template ***/
/*** Kit Builder ***/
.KitBuilder .KitOptions {
  position: relative; }
  .KitBuilder .KitOptions._isLoading:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: url(../../../images/spinner.gif);
    background-position: center center;
    background-repeat: no-repeat;
    background-color: rgba(255, 255, 255, 0.75);
    z-index: 5; }
  .KitBuilder .KitOptions .Option .DropdownImage {
    margin-right: 8px; }
  .KitBuilder .KitOptions .Option .fs-dropdown-selected img {
    display: none; }
  .KitBuilder .KitOptions .Option span.dd-small-text {
    font-size: 12px; }

.KitBuilder .AdditionalInfoWrapper {
  margin-top: 50px; }

/*** End of Kit Builder ***/
/*** Product Page ***/
.ProductPageContainer .MobileTitlePlaceholder,
.ProductPageContainer .MobileProductLocationPlaceholder {
  padding: 0 8px; }

.ProductPageContainer h1 {
  font-size: 28px;
  border-bottom: 2px solid #808080;
  padding-bottom: 8px;
  margin-bottom: 8px; }
  @media only screen and (max-width: 767px) {
    .ProductPageContainer h1 {
      font-size: 19.6px; } }
.ProductPageContainer #ProductLocation {
  font-size: 19.6px;
  font-weight: 100;
  margin-bottom: 16px;
  /*.Item {
            display:none;

            &:nth-last-child(-n+2) {
                display:inline;
            }
        }*/ }
  @media only screen and (max-width: 767px) {
    .ProductPageContainer #ProductLocation {
      font-size: 14px;
      margin-bottom: 0; } }
.ProductPageContainer .ImagesContainer .MainImageCarousel a {
  padding: 0; }

.ProductPageContainer .ImagesContainer .MainImageCarousel .VAlignImg {
  padding-bottom: 57%; }

.ProductPageContainer .ImagesContainer .MainImageCarousel .Video .VAlignImg {
  padding-bottom: 57%; }
  .ProductPageContainer .ImagesContainer .MainImageCarousel .Video .VAlignImg .AnchorPlaceholder {
    border: 1px solid #d8d9da; }
  .ProductPageContainer .ImagesContainer .MainImageCarousel .Video .VAlignImg .fluid-width-video-wrapper {
    padding-top: 57% !important; }

.ProductPageContainer .ImagesContainer .MainImageCarousel.owl-carousel:hover .owl-controls .owl-nav {
  display: block; }

.ProductPageContainer .ImagesContainer .owl-carousel .owl-controls .owl-nav {
  display: none; }

.ProductPageContainer .ImagesContainer .owl-carousel .owl-controls .owl-dots {
  display: flex !important;
  position: absolute;
  left: 50px;
  right: 50px;
  bottom: 8px; }
  .ProductPageContainer .ImagesContainer .owl-carousel .owl-controls .owl-dots .owl-dot {
    background: #002a67;
    height: 16px;
    width: 16px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    opacity: 0.5;
    margin: 4px;
    border: 1px solid #d8d9da; }
    .ProductPageContainer .ImagesContainer .owl-carousel .owl-controls .owl-dots .owl-dot.active {
      opacity: 1; }

@media only screen and (min-width: 992px) {
  .ProductPageContainer .BuyContainer {
    padding-left: 50px; } }

.ProductPageContainer .BuyContainer .StockCode {
  margin: 0;
  padding: 4px 0; }

.ProductPageContainer .BuyContainer .BuyBox fieldset div label {
  position: initial;
  font-size: 14px;
  font-weight: bold; }

.ProductPageContainer .BuyContainer .BuyBox fieldset div input.Text,
.ProductPageContainer .BuyContainer .BuyBox fieldset div select.form-control {
  height: 34px;
  line-height: 34px;
  padding: 6px 0; }

.ProductPageContainer .BuyContainer .QtyCrossSell thead tr td {
  background: #002a67;
  color: #fff; }

.ProductPageContainer .BuyContainer .QtyCrossSell .QtyCrossSellItem .AddToOrderQuantity {
  padding: 0;
  width: 50px;
  text-align: center; }

.ProductPageContainer .BuyContainer .QtyCrossSell .QtyCrossSellItem .Price,
.ProductPageContainer .BuyContainer .QtyCrossSell .QtyCrossSellItem span[itemprop='price'] {
  font-size: 14px;
  color: #002a67; }

.ProductPageContainer .BuyContainer .SparePartsBtn .Title {
  margin-bottom: 8px;
  font-weight: bold; }

.ProductPageContainer .BuyContainer .ProductInformationWrapper {
  margin: 8px 0; }
  .ProductPageContainer .BuyContainer .ProductInformationWrapper .Title {
    border-left: 12px solid #d8d9da;
    border-top: 1px solid #d8d9da;
    border-right: 1px solid #d8d9da;
    padding: 12px;
    font-size: 16px; }
  .ProductPageContainer .BuyContainer .ProductInformationWrapper .Content {
    border: 1px solid #d8d9da;
    padding: 8px; }
    .ProductPageContainer .BuyContainer .ProductInformationWrapper .Content p {
      margin: 0; }
    .ProductPageContainer .BuyContainer .ProductInformationWrapper .Content ul {
      list-style: none;
      margin: 0;
      padding: 0;
      position: relative; }
      .ProductPageContainer .BuyContainer .ProductInformationWrapper .Content ul li {
        padding: 2px 0 2px 16px; }
        .ProductPageContainer .BuyContainer .ProductInformationWrapper .Content ul li:before {
          content: '\f067';
          font-family: "Font Awesome 6 Pro";
          position: absolute;
          left: 0;
          font-size: 11.2px;
          line-height: 18px;
          font-weight: lighter; }

.ProductPageContainer .BuyContainer .ShareButtonsWrapper {
  margin: 16px 0; }
  .ProductPageContainer .BuyContainer .ShareButtonsWrapper .Title {
    margin-bottom: 8px; }

.ProductPageContainer .BuyContainer #ProductPageAccordion .accordion-header a .Icons {
  position: absolute;
  right: 8px;
  top: 8px;
  color: #002a67; }

.ProductPageContainer .Description {
  margin: 32px 0; }
  @media only screen and (max-width: 767px) {
    .ProductPageContainer .Description {
      margin: 16px 0 0 0; } }
  .ProductPageContainer .Description h2 {
    font-size: 19.6px; }
  .ProductPageContainer .Description p:last-child {
    margin: 0; }

.ProductPageContainer .AdditionalInfoWrapper {
  clear: both; }
  .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer:not(.AccordionTabs) ul.TabControls {
    flex-wrap: wrap; }
    .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer:not(.AccordionTabs) ul.TabControls li {
      border-color: #eee;
      padding: 0; }
      .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer:not(.AccordionTabs) ul.TabControls li.r-tabs-state-active {
        border-bottom-color: #fff; }
      .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer:not(.AccordionTabs) ul.TabControls li.r-tabs-state-default a {
        background: #f9f9f9; }
      .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer:not(.AccordionTabs) ul.TabControls li a {
        font-weight: bold;
        text-transform: uppercase;
        color: #48391D;
        padding: 16px; }
  .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer .TabContent {
    padding: 32px;
    border-color: #eee; }
    @media only screen and (max-width: 767px) {
      .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer .TabContent {
        padding: 8px; } }
    .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer .TabContent strong {
      color: #48391D; }
    .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer .TabContent table {
      width: auto; }
      .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer .TabContent table th,
      .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer .TabContent table td {
        padding: 8px;
        border: 1px solid #d8d9da; }
      .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer .TabContent table tbody tr:nth-child(odd) {
        background: #e6e6e6; }
    .ProductPageContainer .AdditionalInfoWrapper .ProductTabs .TabContainer .TabContent .fileDownloadWrapper a {
      color: #58595b; }
  .ProductPageContainer .AdditionalInfoWrapper .MoreOptions {
    margin-top: 32px; }
    .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner {
      background: #002a67;
      color: #fff;
      display: flex;
      flex-wrap: wrap;
      margin-left: 0;
      margin-right: 0; }
      .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Info {
        padding: 16px;
        display: flex;
        flex-direction: column;
        justify-content: center; }
        @media only screen and (min-width: 992px) {
          .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Info {
            padding: 30px; } }
        @media only screen and (max-width: 767px) {
          .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Info {
            align-items: center;
            text-align: center; } }
        .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Info h2,
        .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Info .Text {
          color: #fff;
          margin-bottom: 16px; }
        @media (min-width: 768px) and (max-width: 991px) {
          .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Info h2 {
            font-size: 19.6px; } }
        @media only screen and (min-width: 992px) {
          .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Info .Text {
            font-size: 16px; } }
        .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Info .Button {
          text-transform: uppercase;
          background: #fff;
          color: #002a67; }
          @media (min-width: 768px) and (max-width: 991px) {
            .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Info .Button {
              font-size: 11.2px;
              padding: 6px 8px; } }
      .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Image {
        padding: 0;
        text-align: right;
        display: flex;
        align-items: center; }
        .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Image .fluid-width-video-wrapper {
          height: 100%; }
        @media only screen and (max-width: 767px) {
          .ProductPageContainer .AdditionalInfoWrapper .MoreOptions .Inner .Image {
            justify-content: center; } }
.ProductPageContainer .AdditionalInfoWrapper .TabContainer #ProductInformation .row {
  display: flex;
  flex-wrap: wrap; }
  .ProductPageContainer .AdditionalInfoWrapper .TabContainer #ProductInformation .row .ImageInfo {
    padding: 8px;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column; }
    .ProductPageContainer .AdditionalInfoWrapper .TabContainer #ProductInformation .row .ImageInfo .Image {
      margin-bottom: 8px; }
      .ProductPageContainer .AdditionalInfoWrapper .TabContainer #ProductInformation .row .ImageInfo .Image .VAlignImg {
        padding-bottom: 0; }
    .ProductPageContainer .AdditionalInfoWrapper .TabContainer #ProductInformation .row .ImageInfo .Name {
      display: flex;
      align-items: center;
      align-content: center;
      justify-content: center;
      flex: 1; }

@media only screen and (min-width: 768px) {
  .ProductPageContainer .ProductCrossSell {
    margin-top: 50px; } }

.ProductPageContainer .ProductCrossSell h2 {
  font-size: 19.6px;
  margin-top: 0;
  letter-spacing: 2px; }

.ProductPageContainer .Certifications {
  padding-bottom: 8px;
  margin-left: -8px;
  margin-right: -8px; }
  .ProductPageContainer .Certifications .Content {
    display: flex;
    align-items: center;
    flex-wrap: wrap; }
    .ProductPageContainer .Certifications .Content > * {
      padding: 8px; }

.ProductPageContainer .Features {
  border: 1px solid #eee; }
  .ProductPageContainer .Features + .Features {
    margin-top: 8px; }
  .ProductPageContainer .Features .Title {
    font-size: 19.6px;
    border-left: 8px solid #eee;
    border-bottom: 1px solid #eee;
    padding: 8px; }
  .ProductPageContainer .Features.FeatureIcons .FeatureSetIcons {
    padding: 0;
    /*.FeatureIcon .Inner {
                    aspect-ratio: 1;
                    display: flex;
                    align-items: center;
                    justify-content:center;
                    text-align: center;   
                    font-size:$font-size-small;
                }*/ }
    .ProductPageContainer .Features.FeatureIcons .FeatureSetIcons .FeatureSetName {
      padding: 4px 8px;
      background: #f9f9f9;
      font-size: 11.2px; }
    .ProductPageContainer .Features.FeatureIcons .FeatureSetIcons .ContentInner {
      display: flex;
      flex-wrap: wrap; }
      .ProductPageContainer .Features.FeatureIcons .FeatureSetIcons .ContentInner > * {
        padding: 8px; }
      .ProductPageContainer .Features.FeatureIcons .FeatureSetIcons .ContentInner .AltText {
        width: 50px;
        /* Matches image width */
        font-size: 9.8px;
        padding-top: 8px;
        text-align: center;
        word-break: break-word; }
  .ProductPageContainer .Features.FeatureBullets ul {
    margin: 0;
    padding-left: 16px;
    /*padding:0;
                 list-style:none;*/ }
    .ProductPageContainer .Features.FeatureBullets ul li {
      /*position:relative;
                     padding-left:4 * $grid-spacing;*/
      margin: 4px 0;
      font-size: 12px;
      /*&:before {
                         font-family:$icon-font;
                         content:"\f067";
                         position:absolute;
                         left:$grid-spacing;
                     }*/ }
  @media only screen and (min-width: 768px) {
    .ProductPageContainer .Features.FeatureIcons .FeatureSetIcons:nth-child(2n+1) {
      border-right: 1px solid #eee; } }
.ProductPageContainer .OptionalExtraNonPurchasable {
  border: 1px solid #eee;
  margin-top: 8px; }
  .ProductPageContainer .OptionalExtraNonPurchasable .Title {
    font-size: 19.6px;
    border-left: 8px solid #eee;
    border-bottom: 1px solid #eee;
    padding: 8px; }
  .ProductPageContainer .OptionalExtraNonPurchasable ul {
    margin: 0;
    padding-left: 32px; }
    .ProductPageContainer .OptionalExtraNonPurchasable ul li {
      margin: 4px 0;
      font-size: 12px; }

.ProductPageContainer .product-surcharge-label {
  font-size: 12px; }

/*** End of  Product Page ***/
/*** Exploded View ***/
/*** Exploded View ***/
/* Products */
/* Image Tagging */
.ExplodedView > .row {
  align-items: flex-start; }

.ExplodedView .ProductList .ProductListTitle {
  background: #c0c0c0;
  color: #fff;
  padding: 5px; }

.ExplodedView .ProductList .Product {
  padding: 5px;
  transition: all ease 0.5s;
  background: #fff; }
  .ExplodedView .ProductList .Product .Image img {
    max-height: 100px;
    /* to contain long images */ }
  .ExplodedView .ProductList .Product .ItemDetails > .row {
    height: 100%; }
  .ExplodedView .ProductList .Product .Buy .Stock,
  .ExplodedView .ProductList .Product .Buy .Notify {
    display: none; }
  .ExplodedView .ProductList .Product .Buy .QuantityWrapper {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-bottom: 5px; }
    .ExplodedView .ProductList .Product .Buy .QuantityWrapper .Label {
      padding: 0 5px; }
    .ExplodedView .ProductList .Product .Buy .QuantityWrapper input[type='text'] {
      text-align: center; }
  .ExplodedView .ProductList .Product .Buy .Next {
    text-align: right; }
  .ExplodedView .ProductList .Product .Buy.Loading:before {
    bottom: 0; }
  .ExplodedView .ProductList .Product .Buy.Loading:after {
    display: none; }
  .ExplodedView .ProductList .Product .Text .StockCode {
    display: block; }
  .ExplodedView .ProductList .Product ._TaggingControls:before {
    content: "Image Tagging: "; }
  .ExplodedView .ProductList .Product ._TaggingControls .Button {
    margin-left: 5px; }
  .ExplodedView .ProductList .Product:nth-child(odd) {
    background: #e6e6e6; }
  .ExplodedView .ProductList .Product.Hovering {
    background: rgba(193, 0, 0, 0.2);
    box-shadow: 0 0 10px silver;
    z-index: 1;
    position: relative; }

.ExplodedView .ImageContainer {
  position: sticky;
  top: 0;
  z-index: 2; }

.ExplodedView ._evImage {
  position: relative; }
  .ExplodedView ._evImage .PromptWrap .Prompt {
    display: flex; }
  .ExplodedView ._evImage .Imagetag {
    position: absolute;
    cursor: pointer; }
    .ExplodedView ._evImage .Imagetag:before {
      content: "";
      position: absolute;
      top: -10px;
      left: -10px;
      height: 20px;
      width: 20px;
      border-radius: 50%;
      background: transparent;
      opacity: 0.8;
      transition: all ease 0.5s; }
    .ExplodedView ._evImage .Imagetag:hover:before, .ExplodedView ._evImage .Imagetag.Hovering:before {
      transform: scale(2); }
  .ExplodedView ._evImage.AddingTag:before {
    content: "Click to add Tags";
    color: #fff; }
  .ExplodedView ._evImage.AddingTag:hover, .ExplodedView ._evImage.AddingTag.Editing {
    cursor: crosshair !important; }
    .ExplodedView ._evImage.AddingTag:hover:before, .ExplodedView ._evImage.AddingTag.Editing:before {
      display: none; }

.ExplodedView .ImageOverlay, .ExplodedView ._evImage .PromptWrap, .ExplodedView ._evImage.AddingTag:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.4);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 2; }

.ExplodedView .PanZoomSection .Buttons {
  text-align: center; }
  .ExplodedView .PanZoomSection .Buttons .Button {
    margin: 5px; }

.ExplodedView .ExplodedViewCarousel .owl-controls .owl-nav > div {
  opacity: 1;
  position: absolute;
  bottom: 0;
  top: auto;
  height: auto;
  padding: 5px; }
  .ExplodedView .ExplodedViewCarousel .owl-controls .owl-nav > div.owl-prev {
    left: 0; }
  .ExplodedView .ExplodedViewCarousel .owl-controls .owl-nav > div.owl-next {
    right: 0; }

@media (max-width: 991px) {
  .ExplodedView .ImageContent {
    background: #fff; }
    .ExplodedView .ImageContent:not(.Fixed) {
      position: relative !important; }
  .ExplodedView .MobileViewSwitch {
    padding: 5px; }
    .ExplodedView .MobileViewSwitch .Hide {
      display: none; }
    .ExplodedView .MobileViewSwitch .Show {
      display: block; }
  .ExplodedView ._evImageContainer {
    visibility: hidden;
    background: #fff;
    position: absolute !important;
    top: 100%;
    width: 100% !important;
    transform: scale(0);
    max-height: calc(100vh - 60px); }
  .ExplodedView.ShowDiagram ._evImageContainer {
    visibility: visible;
    transform: scale(1); }
  .ExplodedView.ShowDiagram .MobileViewSwitch .Hide {
    display: block; }
  .ExplodedView.ShowDiagram .MobileViewSwitch .Show {
    display: none; } }

/*** End of Exploded View ***/
.ExplodedView .ProductList .Product .Next {
  text-align: right; }

.ExplodedView ._evImage .Imagetag:before {
  border: 2px solid #002a67; }

.ExplodedView ._evImage .Imagetag.Hovering:before {
  border-color: #c10000; }

.custom-combobox {
  position: relative;
  display: inline-block;
  background: #dedede;
  border-radius: 3px; }

.custom-combobox-toggle {
  position: relative;
  top: 0;
  bottom: 0;
  margin-left: -1px;
  padding: 0.5em 1em; }

.custom-combobox-input {
  margin: 0;
  padding: 5px 10px; }

/*** End of Exploded View ***/
/*** FAQ Tabs ***/
.FAQ {
  margin-top: 16px; }
  .FAQ .Categories h3 {
    color: #002a67;
    margin: 0;
    white-space: nowrap;
    border-bottom: 1px solid #d8d9da;
    padding-bottom: 8px; }
  .FAQ .Categories ul {
    margin: 0;
    padding: 0;
    list-style: none; }
    .FAQ .Categories ul li {
      width: 100%;
      padding: 0; }
      .FAQ .Categories ul li a {
        display: flex;
        flex-wrap: wrap;
        flex-direction: row;
        align-items: center;
        padding: 8px 0;
        -webkit-transition: ease all 0.3s;
        -moz-transition: ease all 0.3s;
        transition: ease all 0.3s; }
        .FAQ .Categories ul li a .Image {
          margin-right: 8px;
          min-width: 75px; }
  .FAQ .Categories .Button {
    width: 100%; }
  .FAQ .FAQWrapper a {
    color: #58595b;
    font-size: 16px; }
    .FAQ .FAQWrapper a:hover {
      opacity: 0.7; }
  .FAQ .FAQWrapper #FAQTabs.accordion {
    margin-top: 8px; }
    .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item {
      border: none;
      box-shadow: none;
      margin: 0; }
      .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-header a {
        display: flex;
        align-items: center;
        padding: 8px;
        border-bottom: 1px solid #d8d9da;
        border-left: 1px solid #d8d9da;
        border-right: 1px solid #d8d9da;
        position: relative;
        padding-right: 45px; }
        .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-header a:hover, .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-header a:focus {
          text-decoration: none;
          opacity: 0.7; }
        .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-header a:before {
          content: 'Q';
          margin-right: 8px;
          font-size: 35px; }
        .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-header a.collapsed:after {
          content: "\f067";
          font-family: "Font Awesome 6 Pro"; }
        .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-header a:after {
          content: "\f068";
          font-family: "Font Awesome 6 Pro";
          line-height: normal;
          transition: transform ease 0.5s;
          position: absolute;
          top: 0;
          right: 16px;
          bottom: 0;
          margin: auto;
          height: 14px; }
      .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-collapse > .accordion-body {
        border-top: none;
        border-bottom: 1px solid #d8d9da;
        border-left: 1px solid #d8d9da;
        border-right: 1px solid #d8d9da;
        padding: 16px; }
      .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item:first-child .accordion-header a {
        border-top: 1px solid #d8d9da; }
      .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-body {
        position: relative; }
        .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-body:before {
          content: 'A';
          position: absolute;
          top: 8px;
          left: 8px;
          font-size: 35px; }
        .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-body > * {
          padding-left: 30px; }
        .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-body ul {
          list-style: none;
          margin: 0;
          padding: 0; }
        .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-body iframe {
          width: 100%; }
        .FAQ .FAQWrapper #FAQTabs.accordion .accordion-item .accordion-body p:last-child {
          margin-bottom: 0; }

/*** End of FAQ ***/
/*** Cart/CheckoutContainer ***/
.CheckoutContainer .ErrorLI > div > ul > li {
  color: #c10000; }

/*** End of Cart/CheckoutContainer ***/
/*** Footer ***/
.QuoteModule {
  background: #002a67;
  color: #fff;
  padding: 50px;
  letter-spacing: 1px;
  margin-top: 32px; }
  .QuoteModule + .QuoteModule {
    background: #003f9a;
    margin-top: 0; }
  .QuoteModule + .QuoteModule {
    margin-top: 0; }
  @media only screen and (min-width: 768px) {
    .QuoteModule .container {
      margin: 0 auto;
      width: 70%; } }
  .QuoteModule .container .Description {
    position: relative; }
    @media only screen and (min-width: 768px) {
      .QuoteModule .container .Description {
        font-size: 19.6px; } }
    .QuoteModule .container .Description:before, .QuoteModule .container .Description:after {
      font-family: "Font Awesome 6 Pro";
      font-weight: bold;
      position: absolute;
      top: 0; }
      @media only screen and (min-width: 768px) {
        .QuoteModule .container .Description:before, .QuoteModule .container .Description:after {
          font-size: 35px; } }
    .QuoteModule .container .Description:before {
      content: '\f10d';
      left: -24px; }
      @media only screen and (min-width: 768px) {
        .QuoteModule .container .Description:before {
          left: -100px; } }
    .QuoteModule .container .Description:after {
      content: '\f10e';
      right: -24px; }
      @media only screen and (min-width: 768px) {
        .QuoteModule .container .Description:after {
          right: -100px; } }
  .QuoteModule .container .Name {
    font-size: 11.2px; }

.MapModule {
  padding: 16px; }
  @media only screen and (min-width: 768px) {
    .MapModule {
      padding: 50px; } }
  .MapModule .background-image-wrap {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    padding-bottom: 0;
    background-attachment: fixed;
    z-index: -1; }
  .MapModule .Wrapper {
    width: fit-content;
    margin: 0 auto;
    background: #fff;
    padding: 16px; }
    @media only screen and (min-width: 768px) {
      .MapModule .Wrapper {
        width: fit-content;
        padding: 32px; } }
    .MapModule .Wrapper h2.Title {
      font-size: 19.6px;
      margin-top: 0;
      letter-spacing: 2px;
      color: #58595b;
      margin-bottom: 16px; }
      @media only screen and (min-width: 768px) {
        .MapModule .Wrapper h2.Title {
          margin-bottom: 32px; } }
.BrandCarouselModule .container .row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }
  @media only screen and (min-width: 1200px) {
    .BrandCarouselModule .container .row {
      flex-wrap: nowrap; } }
  .BrandCarouselModule .container .row .BrandThumb {
    padding: 8px; }

#Footer {
  border-top: 1px solid #d8d9da; }
  #Footer.Footer .FooterCol h4 {
    text-transform: capitalize;
    font-size: 14px; }
  #Footer.Footer .FooterCol a,
  #Footer.Footer .FooterCol p {
    font-size: 11.2px; }
  #Footer.Footer .FooterCol .FooterText .ContactDetails a i {
    top: 2px; }
  #Footer.Footer .Copyright {
    border-top: 1px solid #d8d9da;
    padding-top: 12px; }
    #Footer.Footer .Copyright li {
      font-size: 11.2px; }

@media only screen and (max-width: 767px) {
  .Footer .Copyright li:not(:first-child):before {
    width: 0; } }

/*** End of Footer ***/
