﻿/*** 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 */
/* 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.6666666667%;
  }
}
/*** 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 .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: #be092f;
  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%;
  }
}

/*** 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 p:last-child,
.Modules .DefaultModule p:last-child {
  margin-bottom: 0;
}
.HomeModules .FeatureBlocksModule .row > div,
.HomeModules .FeatureBlocksModule .row .FeatureBlock,
.Modules .FeatureBlocksModule .row > div,
.Modules .FeatureBlocksModule .row .FeatureBlock {
  padding: 8px;
}
.HomeModules .FeatureBlocksModule a,
.Modules .FeatureBlocksModule a {
  display: block;
}
.HomeModules .PanelsModule .Panels,
.Modules .PanelsModule .Panels {
  display: flex;
  flex-wrap: wrap;
}
.HomeModules .PanelsModule .Panels .PanelWrapper,
.Modules .PanelsModule .Panels .PanelWrapper {
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}
.HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb,
.Modules .PanelsModule .Panels .PanelWrapper .PanelThumb {
  padding: 8px;
}
.HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a,
.Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a {
  display: block;
  height: 100%;
  background: #002a67;
  color: #fff;
  padding: 0;
}
.HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ImageWrapper,
.Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ImageWrapper {
  padding: 0;
  height: 100%;
}
.HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ImageWrapper .background-image-wrap,
.Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ImageWrapper .background-image-wrap {
  height: 100%;
}
.HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper,
.Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper {
  display: flex;
  height: 100%;
}
.HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper .InformationWrapper,
.Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper .InformationWrapper {
  display: flex;
  flex-direction: column;
  padding: 8px;
  justify-content: space-between;
}
.HomeModules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper .InformationWrapper .Name,
.Modules .PanelsModule .Panels .PanelWrapper .PanelThumb a .ContentWrapper .InformationWrapper .Name {
  font-size: 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: #be092f;
  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: #be092f;
  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;
  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 .RibbonInner,
.Modules .ProductModule .container .ProductWrapper .Product .Inner .ProductRibbon .RibbonInner {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}
.HomeModules .ProductModule .container .ProductWrapper .Product .Inner .ProductRibbon:after,
.Modules .ProductModule .container .ProductWrapper .Product .Inner .ProductRibbon:after {
  display: none;
}
.HomeModules .ProductModule .container .ProductWrapper .Info .Inner,
.Modules .ProductModule .container .ProductWrapper .Info .Inner {
  padding: 32px 8px;
}
@media only screen and (min-width: 768px) {
  .HomeModules .ProductModule .container .ProductWrapper .Info .Inner,
  .Modules .ProductModule .container .ProductWrapper .Info .Inner {
    padding: 32px;
  }
}
.HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Name h2,
.HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Name h3,
.Modules .ProductModule .container .ProductWrapper .Info .Inner .Name h2,
.Modules .ProductModule .container .ProductWrapper .Info .Inner .Name h3 {
  margin: 0 0 8px 0;
}
.HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Intro,
.HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Price,
.HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Buying,
.Modules .ProductModule .container .ProductWrapper .Info .Inner .Intro,
.Modules .ProductModule .container .ProductWrapper .Info .Inner .Price,
.Modules .ProductModule .container .ProductWrapper .Info .Inner .Buying {
  margin-top: 8px;
}
.HomeModules .ProductModule .container .ProductWrapper .Info .Inner .Price .PriceNumber,
.HomeModules .ProductModule .container .ProductWrapper .Info .Inner .PricePOA,
.HomeModules .ProductModule .container .ProductWrapper .Info .Inner .PriceFree,
.Modules .ProductModule .container .ProductWrapper .Info .Inner .Price .PriceNumber,
.Modules .ProductModule .container .ProductWrapper .Info .Inner .PricePOA,
.Modules .ProductModule .container .ProductWrapper .Info .Inner .PriceFree {
  font-size: 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;
  }
}

/* Adjustemnts for Vertical Product Nav */
@media only screen and (min-width: 992px) {
  .VerticalProductNav .HomeModules .BreakOut {
    width: 100%;
    left: auto;
    right: auto;
  }
  .VerticalProductNav .HomeModules .BreakOut .container {
    width: 100%;
  }
  .VerticalProductNav .HomeModules .SliderModule:first-child {
    margin-top: 0;
  }
  .VerticalProductNav .HomeModules .SliderModule .owl-carousel .owl-controls .owl-nav > div.owl-prev {
    left: 8px;
  }
  .VerticalProductNav .HomeModules .SliderModule .owl-carousel .owl-controls .owl-nav > div.owl-next {
    right: 8px;
  }
}

/*** End of Home Page / Department Modules ***/
/*** Breadcrumbs ***/
.Breadcrumbs {
  background: #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.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.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 ***/
/*** 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 {
  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 input {
  margin-top: 4px;
}
.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 .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: #be092f;
  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: #be092f;
}
.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 ***/
