﻿@charset "UTF-8";
/**************************
    variables
**************************/
/**************************
    mixins
**************************/
/**************************
    typo
**************************/
@import url("https://fonts.googleapis.com/css?family=Roboto:400,700");
h1, h2, h3, h4, h5, h6 {
  color: #1a2810; }

p {
  font-size: 16px;
  color: #666666;
  line-height: 1.5; }

/********************************************
    Responsive Typography
*********************************************/
/**************************
    globals
**************************/
* {
  margin: 0;
  padding: 0;
  outline: none !important; }

html, body {
  max-width: 1920px;
  margin: auto;
  font-family: 'Roboto', sans-serif;
  letter-spacing: 0.025em;
  -webkit-font-smoothing: antialiased;
  font-smooth: auto;
  font-smoothing: antialiased;
  -webkit-overflow-scrolling: touch !important; }

main {
  min-height: calc(100vh - 358px); }

.container .container {
  padding: 0px; }

a {
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out; }

.img-responsive {
  max-width: 100%;
  max-height: 100%; }

.margin-auto {
  margin: auto; }

.page-content {
  min-height: 500px;
  padding-bottom: 15px; }
  .page-content:not(.single-product-page) ul:not(.nav), .page-content:not(.single-product-page) ol:not(.nav) {
    margin-left: 15px; }

.has-error, .validate-error, input.validate-error:not([type=checkbox]):not([type=radio]), input.has-error:not([type=checkbox]):not([type=radio]) {
  border: 1px solid #ffa6a6 !important;
  box-shadow: 0 0 25px 0 #efd7d7 inset !important; }

.validate-error-message {
  padding-top: 2px !important;
  color: #f12727 !important; }

.productMessage, #alert-msg {
  position: fixed;
  z-index: 999999999;
  bottom: 0;
  display: none;
  text-align: center;
  width: 98%;
  left: 50%;
  margin-bottom: 0 !important;
  box-shadow: none;
  background: #FFF;
  margin-left: -49%;
  padding: 35px;
  border: 1px solid #808080; }
  .productMessage .close, #alert-msg .close {
    position: absolute !important;
    font-size: 30px !important;
    right: 20px !important;
    top: 5px !important;
    color: #666666;
    text-decoration: none;
    opacity: 0.7; }
  .productMessage h3 a, #alert-msg h3 a {
    display: block;
    margin-top: 20px; }
  .productMessage.alert-success, #alert-msg.alert-success {
    color: #000 !important; }
    .productMessage.alert-success a, .productMessage.alert-success h3, #alert-msg.alert-success a, #alert-msg.alert-success h3 {
      color: #000; }
  .productMessage.alert-danger h3, #alert-msg.alert-danger h3 {
    padding: 28px 0; }

.backdrop {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: fade(#000, 30%);
  z-index: 99; }

/*button.btn {
  color: $color-white; !important - remove important as this is standard
}*/
.paginate-block {
  position: relative; }

.formLoader, .divLoader {
  background: none repeat scroll 0 0 rgba(255, 255, 255, 0.8);
  color: #666666;
  font-size: 50px;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  padding-top: 120px;
  width: 100%;
  opacity: 0.8;
  text-align: center;
  z-index: 101; }
  .formLoader span, .divLoader span {
    display: block;
    position: relative;
    text-align: center;
    top: 0px;
    width: 100%;
    text-align: center;
    color: #666666; }

.video-container {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  height: 0; }
  .video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important; }

.thumbnail.video span {
  position: absolute;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }
  .thumbnail.video span i {
    position: absolute;
    font-size: 40px;
    color: fade(#FFF, 20%);
    width: 50px;
    height: 50px;
    left: 50%;
    top: 50%;
    margin-left: -25px;
    margin-top: -25px; }

.owl-carousel .owl-item img {
  -webkit-transform-style: flat !important;
  transform-style: flat !important; }

input[type=number] {
  -moz-appearance: textfield; }

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0; }

body.customise-modal-open {
  overflow: hidden; }

.validate-error-message {
  font-size: 12px; }

.vcenter-parent, .vcenter {
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center; }

/**************************
    header
**************************/
.navbar {
  margin-bottom: 0px; }

.head-user-menu {
  background: #cbcbcb; }
  .head-user-menu ul li a {
    color: #666666; }

.user-menu-options {
  position: relative; }
  .user-menu-options.user-menu-text a {
    display: inline-block;
    padding: 10px 3px; }
  .user-menu-options li a {
    color: #FFF; }
    .user-menu-options li a:hover, .user-menu-options li a:active, .user-menu-options li a:focus {
      background: #eee;
      color: #337ab7; }
  .user-menu-options .checkout--active > .checkout__button {
    display: none; }

header {
  position: relative;
  background-color: #FFF;
  border-bottom: 1px solid #e6e6e6; }
  header .search-bar {
    position: absolute;
    background-color: #FFF;
    left: 0;
    z-index: 99;
    background: fade(#FFF, 98%);
    border-top: 1px solid #808080;
    border-bottom: 1px solid #808080;
    height: 70px;
    padding: 17px;
    width: 100%;
    box-shadow: 0 0 25px 0 fade(black, 15%); }
    header .search-bar #search2 {
      position: relative; }
      header .search-bar #search2 i {
        font-size: 18px;
        position: absolute;
        right: 5px;
        color: #000; }
      header .search-bar #search2 input {
        border: none;
        text-align: center;
        background: none;
        font-size: 18px;
        outline: none;
        box-shadow: none; }
        header .search-bar #search2 input:focus {
          box-shadow: none; }
  header .dropdown.category-dropdown .sub-menu {
    left: 0px !important; }
    @media screen and (max-width: 1024px) {
      header .dropdown.category-dropdown .sub-menu {
        position: absolute !important; } }

.main-header {
  position: relative;
  z-index: 10;
  width: 100%; }
  .main-header .logo, .main-header nav, .main-header .head-items {
    float: left;
    -moz-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out; }
    .main-header .logo img, .main-header nav img, .main-header .head-items img {
      -moz-transition: all 0.25s ease-in-out;
      -o-transition: all 0.25s ease-in-out;
      -webkit-transition: all 0.25s ease-in-out;
      transition: all 0.25s ease-in-out;
      padding-bottom: 0 !important;
      padding-top: 0 !important;
      position: relative; }
      .main-header .logo img.main-logo, .main-header nav img.main-logo, .main-header .head-items img.main-logo {
        max-height: 65px; }
      .main-header .logo img.mobile-logo, .main-header nav img.mobile-logo, .main-header .head-items img.mobile-logo {
        max-height: 45px; }
  .main-header .logo {
    padding-top: 8px;
    padding-bottom: 8px; }
  .main-header .logo-text, .main-header .logo-hastext a {
    display: inline-block; }
  .main-header .header-inner {
    position: relative; }
  .main-header .navbar-nav > li.active > a {
    color: #4f93ce;
    border-bottom: 2px solid #4f93ce; }
  .main-header .navbar-nav > li > a {
    padding-bottom: 14px;
    padding-top: 14px;
    margin-top: 10.5px;
    margin-bottom: 10.5px;
    color: #666666;
    text-transform: uppercase;
    font-size: 14px; }
    .main-header .navbar-nav > li > a:hover, .main-header .navbar-nav > li > a:focus, .main-header .navbar-nav > li > a:active {
      background-color: none !important;
      color: #337ab7; }
  .main-header .navbar-nav > li .sub-menu-column-fix {
    -moz-page-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    break-inside: avoid;
    -o-column-break-inside: avoid;
    -ms-column-break-inside: avoid;
    column-break-inside: avoid;
    page-break-inside: avoid;
    width: 100%; }
  .main-header .navbar-nav > li .sub-menu-item a, .main-header .navbar-nav > li .sub-menu-column-item a {
    -ms-word-wrap: break-word;
    word-wrap: break-word; }
  .main-header .navbar-nav > li .sub-menu-column {
    padding: 10px;
    -webkit-column-gap: 1em;
    column-gap: 1em;
    -moz-column-gap: 1em; }
    .main-header .navbar-nav > li .sub-menu-column > div {
      display: inline-block; }
  .main-header .slideDown.headroom--top {
    top: 50px; }

.header-callout {
  position: absolute;
  right: 0;
  bottom: -75px;
  opacity: 0.65;
  /*background: #6c288e;
    border: 1px dashed #fff;
    top: 0;
    -webkit-box-shadow: 0 0 0 4px #6c288e;
    box-shadow: 0 0 0 4px #6c288e;
    color: #fff;
    font-family: arial;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0;
    padding: 8px 50px;
    position: fixed;
    right: 0;
    text-shadow: 0 1px 0 #355773;
    text-transform: uppercase;
    -webkit-transform: rotate(45deg) translate(45px,20px);
    -ms-transform: rotate(45deg) translate(45px,20px);
    transform: rotate(45deg) translate(45px,20px);
    z-index: 99999;*/ }
  .header-callout a {
    color: #FFF; }

/**************************
    livechat
**************************/
.chat-container.chat-header {
  position: absolute;
  bottom: 10px;
  right: -10%;
  height: 100%; }

.chat-container .chat-wrapper {
  text-align: center; }
  .chat-container .chat-wrapper .chat-link:hover, .chat-container .chat-wrapper .chat-link:active, .chat-container .chat-wrapper .chat-link:focus {
    text-decoration: none; }
  .chat-container .chat-wrapper .chat-link svg:hover #live-chat path, .chat-container .chat-wrapper .chat-link svg:hover #LIVE-CHAT {
    fill: #3498DB; }
  .chat-container .chat-wrapper .chat-link svg path, .chat-container .chat-wrapper .chat-link svg #LIVE-CHAT {
    -moz-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out; }
  .chat-container .chat-wrapper .chat-link .chat-img {
    text-align: center; }
  .chat-container .chat-wrapper .chat-link .chat-text {
    text-transform: uppercase; }

/******************************
    //breadcrumb
*******************************/
.breadcrumb-container {
  clear: both; }

.breadcrumb {
  background: none;
  padding-top: 5px;
  padding-left: 0px;
  margin-bottom: 0px; }
  .breadcrumb li a {
    font-size: 12px !important;
    color: #737373;
    text-transform: uppercase; }

.breadcrumb-title {
  margin-bottom: 0; }

/**************************
    Address
**************************/
.address-fields {
  position: relative; }

.loading-region {
  position: absolute;
  width: 100%;
  height: 100%;
  text-align: center;
  font-size: 25px;
  color: #000;
  background: rgba(255, 255, 255, 0.6) !important;
  top: 0;
  padding-top: 25px;
  left: 0; }
  .loading-region i {
    display: block;
    padding-bottom: 10px;
    font-size: 35px;
    height: 35px; }

/**************************
    Template Order
**************************/
.template-order-wrap .templateOrderUtil {
  position: relative; }

.template-order-wrap table {
  background: #fefefe; }

.template-order-wrap .typeahead-search-wrap, .template-order-wrap .typeahead__container {
  position: inherit; }

.template-order-wrap .order-table .btn-update {
  display: block;
  width: 100%;
  padding: 5px 10px; }
  .template-order-wrap .order-table .btn-update span {
    display: none; }

.template-order-wrap .order-table .unblockrow .input-group-btn {
  display: inline-block !important;
  left: -5px;
  z-index: 9; }
  .template-order-wrap .order-table .unblockrow .input-group-btn .btn {
    padding: 4px 8px;
    text-align: center; }

/************************************
    Blog
*************************************/
.blog-item {
  margin-bottom: 15px;
  padding-bottom: 15px; }
  .blog-item a {
    color: #666666; }
  .blog-item a:not(.blog-readmore) {
    text-decoration: none !important; }
    .blog-item a:not(.blog-readmore) h3 {
      margin-top: 0px;
      color: #666666; }

.blog-desc {
  margin-bottom: 15px;
  display: block; }
  .blog-desc span {
    margin-right: 10px; }
    .blog-desc span i {
      margin-right: 5px; }

.blog-img-wrapper {
  float: left;
  margin-right: 15px;
  height: 250px;
  width: 250px; }
  .blog-img-wrapper a {
    height: 100%;
    display: block; }
  @media screen and (max-width: 667px) {
    .blog-img-wrapper {
      float: none !important; } }
  .blog-img-wrapper img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center center; }

/**************************
    Checkout
**************************/
.checkout-form-group .btn-toolbar {
  padding-top: 10px; }

.checkout-form-group .btn-group {
  float: right !important; }
  .checkout-form-group .btn-group .btn-lg {
    padding: 13px 19px; }

.checkout-form-group legend {
  font-size: 16px !important; }

.btn-toolbar .btn {
  margin-bottom: 10px; }

.promoInputs, .voucherInputs {
  margin: 0 15px; }

.order-table-wrap, .quote-table-wrap {
  position: relative; }
  .order-table-wrap.has-blocker::after, .quote-table-wrap.has-blocker::after {
    background: rgba(255, 255, 255, 0.5) none repeat scroll 0 0;
    content: "";
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 9; }
  .order-table-wrap.has-blocker .fa-spinner, .quote-table-wrap.has-blocker .fa-spinner {
    font-size: 50px;
    height: 50px;
    left: 50%;
    margin-left: -25px;
    margin-top: -25px;
    position: absolute;
    top: 50%;
    width: 50px;
    display: block !important;
    z-index: 9; }

.order-btns .btn {
  width: 200px;
  padding: 5px; }

.order-thanks {
  margin-bottom: 0px; }
  .order-thanks h2 {
    margin: 10px 0; }
  .order-thanks h2, .order-thanks p {
    color: #666666 !important; }
  .order-thanks p {
    margin: 0 0 5px 0; }

.checkout-file label[for] {
  max-width: 80%;
  font-size: 1.25rem;
  /* 20px */
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
  display: inline-block;
  clear: both;
  overflow: hidden;
  padding: 0.625rem 1.25rem;
  color: #FFF;
  background-color: #3498DB;
  /* 10px 20px */ }
  .checkout-file label[for] i {
    width: 1em;
    height: 1em;
    vertical-align: middle;
    fill: currentColor;
    margin-top: -0.25em;
    /* 4px */
    margin-right: 0.25em;
    /* 4px */ }

.checkout-file-input {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1; }
  .checkout-file-input + span {
    display: block; }
  .checkout-file-input:focus + label,
  .checkout-file-input .has-focus + label {
    outline: 1px dotted #000;
    outline: -webkit-focus-ring-color auto 5px;
    background-color: #3498DB; }
    .checkout-file-input:focus + label:hover,
    .checkout-file-input .has-focus + label:hover {
      background-color: #258cd1; }

.checkout-file-list {
  list-style: none;
  padding: 5px;
  overflow: hidden; }
  .checkout-file-list li {
    height: 200px;
    margin-bottom: 0px; }
    .checkout-file-list li div {
      height: 150px;
      margin-bottom: 5px; }
    .checkout-file-list li span {
      display: block;
      text-align: center;
      font-size: 14px; }

.orderline-vouch-details {
  font-size: 12px;
  margin-top: 10px; }
  .orderline-vouch-details p {
    font-size: 13px; }

.deliveryaddress-wrapper-toggle {
  display: block;
  margin-bottom: 10px;
  font-size: 13px;
  text-align: right;
  text-decoration: underline; }

.payment-tabs-wrap .payment-tabs {
  margin-bottom: 0px;
  margin-left: 0px !important; }
  .payment-tabs-wrap .payment-tabs li a {
    background: #eeeeee; }
  .payment-tabs-wrap .payment-tabs li.active a {
    background: #ffffff !important;
    position: relative; }
    .payment-tabs-wrap .payment-tabs li.active a:after {
      content: "";
      position: absolute;
      height: 5px;
      width: 100%;
      bottom: -5px;
      left: 0px;
      background: #ffffff; }

.payment-tabs-wrap .tab-content {
  background: #FFFFFF;
  padding: 15px;
  border: 1px solid #ddd;
  font-size: 14px; }

/**************************
    Minicart
**************************/
.minicartwait {
  position: absolute; }

.minicart-loading {
  min-height: 150px;
  position: relative;
  opacity: 0.6; }
  .minicart-loading:after {
    content: "Loading...";
    position: absolute;
    top: 60%;
    left: 50%;
    font-size: 25px;
    width: 113px;
    margin-left: -40px; }
  .minicart-loading i {
    position: absolute;
    left: 50%;
    top: 40%;
    font-size: 50px;
    height: 50px;
    width: 50px;
    margin-top: -25px;
    margin-left: -25px; }

.checkout {
  position: relative;
  z-index: 99 !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  .checkout__summary-body {
    width: 100%;
    max-height: 350px;
    overflow-x: hidden;
    overflow-y: auto; }

.checkout__button {
  position: relative;
  z-index: 10;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden; }

.checkout--active {
  position: absolute !important;
  right: 0; }
  .checkout--active:after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.8);
    width: 100%;
    height: 100%;
    z-index: 1;
    -moz-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out; }
  .checkout--active .checkout__button {
    cursor: default;
    -webkit-transform: translate3d(-390%, 17px, 0);
    -moz-transform: translate3d(-390%, 17px, 0);
    -ms-transform: translate3d(-390%, 17px, 0);
    -o-transform: translate3d(-390%, 17px, 0);
    transform: translate3d(-390%, 17px, 0);
    color: #1a2810;
    font-weight: bold;
    text-shadow: none !important; }
    .checkout--active .checkout__button:hover, .checkout--active .checkout__button:focus {
      background: none; }
  .checkout--active .checkout__order {
    pointer-events: auto; }
  .checkout--active .checkout__order::before {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
    opacity: 1; }
  .checkout--active .checkout__order-inner {
    opacity: 1;
    -webkit-transition: opacity 0.6s cubic-bezier(0.2, 1, 0.3, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.2, 1, 0.3, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.2, 1, 0.3, 1);
    transition: opacity 0.6s cubic-bezier(0.2, 1, 0.3, 1); }
  .checkout--active .checkout__close {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
    .checkout--active .checkout__close i {
      color: #333333; }
  .checkout--active .checkout__summary tr, .checkout--active .checkout__summary h3 {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  .checkout--active .checkout__option {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }

.checkout__button:focus {
  outline: none; }

.checkout__order {
  position: absolute;
  top: 0;
  right: 0;
  overflow: hidden;
  max-width: 100vw;
  width: 600px;
  text-align: right;
  pointer-events: none;
  z-index: 2; }

.checkout__order::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #f5f5f5;
  opacity: 0;
  -moz-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  -webkit-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out; }

.checkout__order-inner {
  position: relative;
  padding: 2em 1.9em;
  opacity: 0; }

.checkout__close {
  position: absolute;
  top: 1.5em;
  right: 1.5em;
  overflow: hidden;
  width: 20px;
  height: 20px;
  border: none;
  background: transparent;
  color: transparent;
  text-indent: 100%;
  opacity: 0;
  -webkit-transform: translate3d(50px, 0, 0);
  -moz-transform: translate3d(50px, 0, 0);
  -ms-transform: translate3d(50px, 0, 0);
  -o-transform: translate3d(50px, 0, 0);
  transform: translate3d(50px, 0, 0);
  -moz-backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.checkout__close:focus {
  outline: none; }

.icon {
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
  text-indent: 0; }

.icon:hover {
  color: #426a98; }

.checkout__summary {
  margin: 5px 0 0.75em;
  width: 100%;
  color: #fff;
  text-align: left;
  text-transform: uppercase;
  letter-spacing: 1px;
  line-height: 1.5; }
  .checkout__summary tr {
    -webkit-transform: translate3d(250px, 0, 0);
    -moz-transform: translate3d(250px, 0, 0);
    -ms-transform: translate3d(250px, 0, 0);
    -o-transform: translate3d(250px, 0, 0);
    transform: translate3d(250px, 0, 0); }
  .checkout__summary tbody tr:first-child td {
    padding-top: 0.5em; }
  .checkout__summary tbody td {
    padding: 0.25em 0;
    font-weight: 700;
    font-size: 0.85em;
    color: #888888; }

.checkout__summary thead th, .checkout__summary tfoot th {
  color: #333333;
  line-height: 2.5; }

.checkout__total {
  color: #000; }

.checkout__summary th:last-child, .checkout__summary td:last-child {
  text-align: right; }

.checkout__option {
  display: inline-block;
  margin-top: 1em;
  padding: 0.5em 2em;
  border: none;
  border-radius: 1px;
  background: #517cad;
  color: #fff;
  font-weight: 700;
  opacity: 0;
  -webkit-transform: translate3d(50px, 0, 0);
  -moz-transform: translate3d(50px, 0, 0);
  -ms-transform: translate3d(50px, 0, 0);
  -o-transform: translate3d(50px, 0, 0);
  transform: translate3d(50px, 0, 0); }

.checkout__option:hover {
  background: #426a98; }

.checkout__option--silent {
  background: none;
  color: #517cad;
  font-weight: 500; }

.checkout__option--silent:hover {
  background: none;
  color: #426a98; }

.checkout__option:focus {
  outline: none; }

.paymentoption {
  margin-bottom: 5px; }

/**************************
    Voucher Checkout
**************************/
#voucher-message > h4 {
  padding-left: 25px; }

#voucher-message > div {
  padding: 5px 42px 20px; }

/**************************
    Sidebar Minicart
**************************/
.hasSideBar header {
  z-index: 1020; }

.hasSideBar #main {
  overflow-x: hidden;
  position: relative; }

.hasSideBar #main-container {
  -moz-transition: width .25s;
  -o-transition: width .25s;
  transition: width .25s;
  -webkit-transition: width .25s; }

.hasSideBar .container-fluid {
  margin-left: 0;
  margin-right: 0; }

.hasSideBar footer {
  z-index: 1020; }

.sidebars > .sidebar {
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.64);
  position: fixed;
  color: white;
  padding: 30px;
  font-size: 2em;
  text-align: center; }

.sidebar.sidebarminicart {
  background: #F5F5F5;
  position: fixed;
  z-index: 1010;
  -webkit-transition: top 0.25s;
  -moz-transition: top 0.25s;
  -o-transition: top 0.25s;
  transition: top 0.25s; }
  .sidebar.sidebarminicart.left, .sidebar.sidebarminicart.right {
    width: 330px; }
  .sidebar.sidebarminicart.top, .sidebar.sidebarminicart.bottom {
    height: 330px; }
  .sidebar.sidebarminicart.left {
    top: 0;
    bottom: 0;
    left: 0; }
  .sidebar.sidebarminicart.right {
    top: 0;
    bottom: 0;
    right: 0; }
  .sidebar.sidebarminicart.bottom {
    left: 0;
    right: 0;
    bottom: 0; }
  .sidebar.sidebarminicart.top {
    left: 0;
    right: 0;
    top: 0; }
  .sidebar.sidebarminicart .sidebar_minicart_usermenu .btn, .sidebar.sidebarminicart .sidebar_minicart_usermenu span {
    padding: 10px 15px;
    border: 0 !important; }
  .sidebar.sidebarminicart .sidebar_minicart_usermenu .toggle {
    width: 95px !important;
    height: 37px !important; }
  .sidebar.sidebarminicart .sidebar_minicart_typeahead {
    margin-top: 2px;
    margin-bottom: 2px; }
  .sidebar.sidebarminicart .sidebar_minicart_cart .minicart-loader {
    text-align: center; }
  .sidebar.sidebarminicart .sidebar_minicart_actions {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding-top: 5px; }
    .sidebar.sidebarminicart .sidebar_minicart_actions a.btn-long {
      padding-top: 18px;
      padding-bottom: 18px;
      font-size: 16px; }
    .sidebar.sidebarminicart .sidebar_minicart_actions a {
      width: 50%;
      float: left;
      margin: 0 !important;
      font-size: 20px;
      padding-top: 15px;
      padding-bottom: 15px; }
  .sidebar.sidebarminicart .typeahead__container .typeahead__list {
    margin-top: 40px; }
  .sidebar.sidebarminicart .typeahead__container .typeahead__resultsContainer {
    height: 450px;
    overflow-y: scroll; }
    .sidebar.sidebarminicart .typeahead__container .typeahead__resultsContainer .typeahead__qty {
      width: 100% !important; }

/**************************
    Slider
**************************/
.carousel-fade .carousel-inner .item {
  -moz-transition-property: opacity;
  -o-transition-property: opacity;
  -webkit-transition-property: opacity;
  transition-property: opacity; }
  .carousel-fade .carousel-inner .item h1 {
    color: #FFF; }

.carousel-fade .carousel-inner .item,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  opacity: 0; }

.carousel-fade .carousel-inner .active,
.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
  opacity: 1; }

.carousel-fade .carousel-inner .next,
.carousel-fade .carousel-inner .prev,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  left: 0;
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.carousel-fade .carousel-control {
  z-index: 2; }
  .carousel-fade .carousel-control span {
    position: absolute;
    top: 45%; }

.slider-button {
  margin-top: 50px; }
  .slider-button a {
    font-size: 18px; }

/**************************
    footer
**************************/
footer {
  margin-top: 25px; }

.footer-1 .footer-call-to-action {
  padding: 25px 0;
  text-align: center; }

.footer-1 .footer-sponsor .sponsor-wrapper {
  margin-top: 4%; }

.footer-1 .footer-sponsor img {
  max-height: 80px;
  width: auto !important;
  margin: 0 auto; }

.footer-1 .footer-signup {
  text-align: center;
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
  border-top: 1px solid #e6e6e6; }
  .footer-1 .footer-signup .form-newsletter {
    padding: 60px 0; }
    .footer-1 .footer-signup .form-newsletter button {
      text-transform: uppercase;
      font-size: 16px;
      padding: 5px 24px; }
    .footer-1 .footer-signup .form-newsletter label {
      text-transform: uppercase;
      font-size: 20px;
      vertical-align: middle;
      margin-bottom: 0px; }
    .footer-1 .footer-signup .form-newsletter input {
      font-size: 16px;
      margin: 0 9px;
      width: 240px; }

.footer-1 .footer-contact {
  border-top: 1px solid #e6e6e6;
  padding: 15px 0; }
  .footer-1 .footer-contact .footers-text {
    font-size: 14px; }
    .footer-1 .footer-contact .footers-text a {
      color: #666666; }

@media screen and (min-width: 1024px) and (orientation: landscape) {
  .footer-2 .footer-content {
    background: -webkit-linear-gradient(180deg, #f5f5f5, #f5f5f5 50%);
    background: -moz-linear-gradient(180deg, #f5f5f5 50%, #f5f5f5 50%); }
    .footer-2 .footer-content.footer-content-split {
      background: -webkit-linear-gradient(180deg, #d8d8d8 50%, #f5f5f5 50%);
      background: -moz-linear-gradient(180deg, #d8d8d8 50%, #f5f5f5 50%); } }

.footer-2 .footer-content.footer-content-split label {
  max-width: 75%; }

.footer-2 .footer-content:not(.footer-content-split) .form-group {
  display: block;
  text-align: center; }
  .footer-2 .footer-content:not(.footer-content-split) .form-group label {
    text-transform: uppercase; }
  .footer-2 .footer-content:not(.footer-content-split) .form-group .input-group {
    width: auto !important; }
    .footer-2 .footer-content:not(.footer-content-split) .form-group .input-group button {
      border-top-right-radius: 4px;
      border-bottom-right-radius: 4px; }
    .footer-2 .footer-content:not(.footer-content-split) .form-group .input-group input {
      border-top-left-radius: 13px;
      border-bottom-left-radius: 13px; }

.footer-2 .footer-content .footer-signup {
  background-color: #f5f5f5;
  padding: 32px 15px; }
  .footer-2 .footer-content .footer-signup label {
    line-height: 30px;
    color: #666666;
    display: block;
    margin-top: 17px;
    margin-bottom: 8.5px;
    font-weight: bold;
    font-size: 23px; }
    @media screen and (max-width: 667px) {
      .footer-2 .footer-content .footer-signup label {
        max-width: 100% !important;
        text-align: center; } }
  .footer-2 .footer-content .footer-signup .input-group {
    margin-top: 15px;
    width: 75%; }
    @media screen and (max-width: 667px) {
      .footer-2 .footer-content .footer-signup .input-group {
        width: 90%;
        margin: 0 auto; } }
    .footer-2 .footer-content .footer-signup .input-group button {
      padding: 6px 16px !important;
      border-top-right-radius: 13px;
      border-bottom-right-radius: 13px;
      background-color: #808080;
      border-color: #808080; }
      .footer-2 .footer-content .footer-signup .input-group button:hover, .footer-2 .footer-content .footer-signup .input-group button:active, .footer-2 .footer-content .footer-signup .input-group button:focus {
        background-color: #8d8d8d;
        border-color: #8d8d8d; }
    .footer-2 .footer-content .footer-signup .input-group input {
      display: block;
      border-top-left-radius: 13px;
      border-bottom-left-radius: 13px;
      padding: 6px 16px !important; }

.footer-2 .footer-content .footer-panel {
  background-color: #d8d8d8;
  padding: 32px 15px; }
  @media screen and (max-width: 667px) {
    .footer-2 .footer-content .footer-panel {
      text-align: center; }
      .footer-2 .footer-content .footer-panel img {
        display: inline; } }
  .footer-2 .footer-content .footer-panel h3 {
    font-weight: bold;
    font-size: 23px;
    line-height: 30px; }
  .footer-2 .footer-content .footer-panel .btn {
    margin-top: 15px;
    background-color: #808080;
    border-color: #808080;
    padding: 6px 16px;
    border-radius: 13px;
    text-transform: capitalize; }
    .footer-2 .footer-content .footer-panel .btn:hover, .footer-2 .footer-content .footer-panel .btn:active, .footer-2 .footer-content .footer-panel .btn:focus {
      background-color: #8d8d8d;
      border-color: #8d8d8d; }

.footer-2 .footer-main {
  background-color: #FFF;
  padding-top: 45px;
  padding-bottom: 30px; }
  .footer-2 .footer-main .footer-menu {
    padding: 0px; }
    .footer-2 .footer-main .footer-menu .navbar {
      background: none;
      border: none; }
      .footer-2 .footer-main .footer-menu .navbar-header {
        border: none !important; }
    .footer-2 .footer-main .footer-menu > ul {
      padding: 0 8px !important; }
    .footer-2 .footer-main .footer-menu a:not(.navbar-brand) {
      padding: 5px 0 !important;
      color: #666666;
      width: 100%;
      display: block;
      -moz-transition: all 0.5s ease-in-out;
      -o-transition: all 0.5s ease-in-out;
      -webkit-transition: all 0.5s ease-in-out;
      transition: all 0.5s ease-in-out; }
      .footer-2 .footer-main .footer-menu a:not(.navbar-brand):hover, .footer-2 .footer-main .footer-menu a:not(.navbar-brand):active, .footer-2 .footer-main .footer-menu a:not(.navbar-brand):focus {
        color: #333333;
        background-color: transparent;
        padding-left: 3px !important; }
    .footer-2 .footer-main .footer-menu .footer-menu-item > a {
      font-size: 16px;
      font-weight: bold;
      border-bottom: solid 1px #666666;
      padding-bottom: 9px !important; }
      .footer-2 .footer-main .footer-menu .footer-menu-item > a:hover, .footer-2 .footer-main .footer-menu .footer-menu-item > a:active, .footer-2 .footer-main .footer-menu .footer-menu-item > a:focus {
        text-decoration: none; }

.footer-2 .footer-contact .footer-global {
  display: block;
  color: #FFF; }

.footer-2 .footer-contact .footer-global-2 {
  font-size: 26px;
  margin-top: 17px; }
  .footer-2 .footer-contact .footer-global-2 a {
    color: #FFF; }
    .footer-2 .footer-contact .footer-global-2 a:hover, .footer-2 .footer-contact .footer-global-2 a:active, .footer-2 .footer-contact .footer-global-2 a:focus {
      text-decoration: none !important; }

@media screen and (max-width: 667px) {
  .footer-2 .footer-contact .footer-logo-wrapper {
    text-align: center;
    margin: 0 auto; }
  .footer-2 .footer-contact .foots-text {
    text-align: center; } }

.footer-2 .footer-bottom {
  background-color: #808080;
  padding-bottom: 30px;
  border-top: none !important; }
  .footer-2 .footer-bottom .footer-copyright {
    float: right !important;
    opacity: 0.6; }
    @media screen and (max-width: 667px) {
      .footer-2 .footer-bottom .footer-copyright {
        width: 100%;
        text-align: center; } }
    .footer-2 .footer-bottom .footer-copyright .footer-copyright-text, .footer-2 .footer-bottom .footer-copyright a {
      color: #cbcbcb; }

.footer-bottom {
  border-top: 1px solid #808080; }

.footer-copyright {
  text-align: center;
  padding: 5px 0; }
  .footer-copyright a {
    font-size: 12px;
    color: #666666; }

.footer-social, .foot-social {
  display: inline; }
  .footer-social .social-links, .foot-social .social-links {
    list-style: none; }
    .footer-social .social-links .footer-social-wrapper, .foot-social .social-links .footer-social-wrapper {
      display: inline;
      padding: 0 15px; }
      .footer-social .social-links .footer-social-wrapper a, .foot-social .social-links .footer-social-wrapper a {
        color: #808080;
        text-decoration: none;
        font-size: 20px; }

/***************************************
    Trade Order Page, sortable table
***************************************/
/***************************************
    Trade Order Page, sortable table
***************************************/
table#productgrid.tablesorter .tablesorter-header-inner {
  position: relative;
  padding-right: 20px; }

table#productgrid.tablesorter .tablesorter-headerAsc .tablesorter-icon {
  position: absolute;
  right: 0;
  top: 0;
  display: inline; }
  table#productgrid.tablesorter .tablesorter-headerAsc .tablesorter-icon:after {
    content: "";
    position: absolute;
    font-family: FontAwesome;
    font-style: normal;
    right: 3px; }

table#productgrid.tablesorter .tablesorter-headerDesc .tablesorter-icon {
  position: absolute;
  right: 0;
  top: 0;
  display: inline; }
  table#productgrid.tablesorter .tablesorter-headerDesc .tablesorter-icon:after {
    content: "";
    position: absolute;
    font-family: FontAwesome;
    font-style: normal;
    right: 3px; }

table#productgrid.tablesorter .tablesorter-icon {
  position: absolute;
  right: 0;
  top: 0;
  display: inline; }
  table#productgrid.tablesorter .tablesorter-icon:after {
    content: "";
    position: absolute;
    font-family: FontAwesome;
    font-style: normal;
    right: 3px; }

/***************************************
    Trade landing
***************************************/
.add-to-cart-btn-wrap {
  position: fixed;
  left: 0;
  bottom: 0px;
  width: 100%;
  z-index: 9; }
  .add-to-cart-btn-wrap .col-xs-12 > div {
    padding: 25px 15px;
    overflow: hidden;
    background: white;
    border-radius: 5px;
    box-shadow: 0 0 2px 0 #8d8d8d; }

.trade-cat-products {
  border: 1px solid #b3b3b3;
  border-radius: 4px;
  padding: 15px; }
  .trade-cat-products .addtocart-group {
    border-bottom: 1px solid #b3b3b3;
    margin-bottom: 15px; }
    .trade-cat-products .addtocart-group:last-child {
      border: none !important;
      margin-bottom: 0px; }
  .trade-cat-products h3 {
    margin-top: 10px;
    font-size: 16px;
    color: #666666; }
    .trade-cat-products h3 a {
      font-size: 16px;
      color: #666666; }

/**************************
    Home Page
***************************/
/*.featured-panel-row, .featured-category-seperator, .featured-product-seperator {
    margin-top: 35px;
}*/
.featured-panel-row {
  margin-top: 25px;
  margin-bottom: 10px; }
  .featured-panel-row a {
    display: block; }
  .featured-panel-row .featured-panel {
    margin-bottom: 15px; }
  .featured-panel-row .panel-icon img, .featured-panel-row .panel-icon span {
    margin: 0 auto;
    padding: 25px 0 0 0;
    width: auto; }
  .featured-panel-row .panel-action {
    margin-top: 15px; }
  .featured-panel-row .panel-desc:empty {
    display: none; }

#featuredSlider .item {
  overflow: hidden; }
  #featuredSlider .item h1, #featuredSlider .item h2 {
    text-transform: none !important; }
  #featuredSlider .item img {
    max-width: 100% !important;
    max-height: 100% !important; }

.slider-arrow-container {
  margin-top: -15px;
  padding: 5px 0;
  position: relative; }
  .slider-arrow-container .slider-arrow-inner {
    text-align: center; }
    .slider-arrow-container .slider-arrow-inner:before {
      z-index: -1;
      content: ' ';
      position: absolute;
      top: 0;
      left: -1500px;
      right: -1500px;
      height: 35px;
      width: auto !important;
      background-color: inherit; }
    .slider-arrow-container .slider-arrow-inner i {
      font-size: 25px; }

.call-to-action {
  margin-top: 25px;
  font-style: italic; }

.featured-category-row {
  margin-top: 15px; }
  .featured-category-row .item .img-wrapper {
    height: 200px;
    text-align: center !important; }
    .featured-category-row .item .img-wrapper img {
      max-height: 200px;
      width: auto !important;
      margin-left: auto;
      margin-right: auto; }
  .featured-category-row .item .feature-category-desc {
    height: 200px;
    position: relative; }
    .featured-category-row .item .feature-category-desc .slider-title {
      font-size: 16px;
      margin: 15px 25px; }
      .featured-category-row .item .feature-category-desc .slider-title.single {
        font-size: 20px; }
    .featured-category-row .item .feature-category-desc .btn-wrapper {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0; }
      .featured-category-row .item .feature-category-desc .btn-wrapper .btn {
        margin: 0 auto; }

.featured-product-row {
  margin-top: 15px; }
  .featured-product-row .featured-product {
    text-align: center; }
    .featured-product-row .featured-product .img-wrapper {
      padding: 20px;
      overflow: hidden; }
      .featured-product-row .featured-product .img-wrapper img {
        max-height: 200px;
        margin: 0 auto; }
    .featured-product-row .featured-product .prod-desc h6 {
      font-size: 12px;
      color: #808080; }
    .featured-product-row .featured-product .prod-desc h3 {
      margin-top: 5px !important; }
      .featured-product-row .featured-product .prod-desc h3 a {
        color: #666666;
        text-decoration: none; }

/**************************
    Comapre Ajax and Page
***************************/
.compare-overlay {
  bottom: 0;
  content: "";
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.8);
  z-index: 999999;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out; }
  .compare-overlay .compare-title {
    margin-top: 0 !important; }
  .compare-overlay .compare-container {
    margin-top: 10px;
    left: 0;
    overflow-x: hidden;
    position: absolute;
    right: 0; }
  .compare-overlay .img-wrapper img {
    max-width: 100% !important;
    width: auto !important;
    height: 250px !important;
    margin-left: auto;
    margin-right: auto; }
  .compare-overlay .compare-wrapper {
    display: block; }
  .compare-overlay .container {
    background-color: #FFF; }
  .compare-overlay .compare-close {
    margin-right: -15px;
    margin-top: 10px; }
    .compare-overlay .compare-close a {
      margin-top: 10px;
      margin-right: 10px; }
  .compare-overlay .compare-desc {
    margin-bottom: 15px; }
    .compare-overlay .compare-desc h2 {
      font-size: 16px; }
  .compare-overlay .compare-addtocart-wrapper {
    width: 100%;
    margin-bottom: 15px;
    float: left; }
    .compare-overlay .compare-addtocart-wrapper .qty {
      width: 30%;
      float: left; }
    .compare-overlay .compare-addtocart-wrapper .btn {
      width: 70%;
      float: left; }
  .compare-overlay .comapre-remove {
    margin-bottom: 15px; }
    .compare-overlay .comapre-remove .btn {
      width: 100%;
      color: #000 !important; }
  .compare-overlay .item {
    position: relative; }
    .compare-overlay .item .compare-info {
      text-align: center; }
  .compare-overlay .compare-table {
    border-top: 2px solid #EFEFEF; }
    .compare-overlay .compare-table .compare-info {
      padding: 12px;
      margin-bottom: 8px; }
      .compare-overlay .compare-table .compare-info:nth-child(2n+1) {
        background-color: #FFF; }
      .compare-overlay .compare-table .compare-info:nth-child(2n+2) {
        background-color: #EFEFEF; }
  .compare-overlay .owl-custom-wrapper {
    display: block; }

/**************************
    login partial styling
**************************/
.login-wrapper {
  max-width: 650px;
  margin: 50px auto; }
  .login-wrapper .login-message {
    font-size: 16px; }

#login-register-form .modal-wrapper {
  text-align: center;
  padding: 15px;
  position: relative; }

#login-register-form .form-control {
  font-size: 16px; }

#login-register-form .help-tip {
  font-size: 16px;
  height: 55px;
  margin: 0;
  margin-bottom: 21px; }

#login-register-form h2 {
  font-size: 22px;
  text-transform: uppercase; }

#login-register-form .modal-icon {
  width: 42px;
  margin: auto; }

#login-register-form .legend {
  font-size: 22px;
  padding-bottom: 15px; }

#login-register-form a {
  color: #686a6d; }
  #login-register-form a:hover {
    color: #afd035; }
  #login-register-form a svg {
    fill: none;
    stroke: #afd035;
    margin-right: 2px;
    vertical-align: middle; }

#login-register-form .login {
  width: 100%; }

#login-register-form .btn {
  padding: 15px; }

/**************************
    Category Page - Get rid of this block over time
**************************/
.mobile-perpage {
  width: 60px;
  margin-left: 10px; }
  .mobile-perpage select {
    padding: 6px 6px; }

.prod-img {
  position: relative;
  vertical-align: middle;
  height: 200px;
  text-align: center;
  overflow: hidden;
  white-space: nowrap; }
  .prod-img .img-helper {
    line-height: 200px;
    display: inline-block; }
  .prod-img img {
    padding: 0px;
    height: 100%;
    width: 100%;
    object-fit: contain;
    object-position: center center; }

.product-grid .prod-grid-item .prod-desc h6 {
  font-size: 12px;
  color: #808080; }

.product-grid .prod-grid-item .prod-desc h3 {
  margin-top: 5px !important; }
  .product-grid .prod-grid-item .prod-desc h3 a {
    color: #666666;
    text-decoration: none; }

.product-grid .prod-grid-item .prod-price {
  font-size: 18px; }

.special-tags {
  position: absolute;
  top: -7px;
  left: -7px;
  z-index: 4; }

.personalize-vouch-link {
  font-size: 13px;
  text-decoration: underline;
  display: block;
  padding: 5px 0;
  text-align: center;
  font-weight: bold; }

.product-links .thumbnail p {
  color: #555555;
  font-size: 12px;
  margin: 0;
  padding: 5px 0; }

.product-links .thumbnail.video {
  position: relative; }
  .product-links .thumbnail.video span {
    display: block;
    position: absolute; }
    .product-links .thumbnail.video span .fa-youtube-play {
      color: #FF0000;
      font-size: 55px; }

.prod-img-wrapper, .cat-product-image {
  position: relative; }
  .prod-img-wrapper .fav-btn-remove, .cat-product-image .fav-btn-remove {
    position: absolute;
    right: 0;
    top: 0; }

.side-cat-menu {
  /*.parent-sub-menu {
        > li:first-child {
            a {
                border-top: 1px solid $color-border;
            }
        }
    }*/ }
  .side-cat-menu .navbar {
    background: none;
    border: none; }
  .side-cat-menu #side-cat-menu-collapse {
    padding: 0px;
    overflow: hidden !important; }
  .side-cat-menu .nav li {
    position: relative;
    margin: 0px; }
    .side-cat-menu .nav li .open {
      position: absolute;
      right: 0px;
      top: 0;
      width: 40px;
      height: 40px;
      line-height: 37px;
      font-size: 25px;
      text-align: center;
      cursor: pointer; }
      .side-cat-menu .nav li .open i {
        -moz-transition: all 0.25s ease-in-out;
        -o-transition: all 0.25s ease-in-out;
        -webkit-transition: all 0.25s ease-in-out;
        transition: all 0.25s ease-in-out; }
    .side-cat-menu .nav li a {
      padding: 8px 15px 8px 5px;
      font-size: 16px;
      border-bottom: 1px solid #808080;
      background: none !important;
      color: #999999;
      /*!important - remove important as this is standard*/
      text-transform: capitalize; }
    .side-cat-menu .nav li.active > a, .side-cat-menu .nav li:hover > a {
      background: white !important;
      color: #4d4d4d !important; }
  .side-cat-menu .sub-menu, .side-cat-menu .sub-menu-2 {
    margin-left: 10px; }
    .side-cat-menu .sub-menu a, .side-cat-menu .sub-menu-2 a {
      font-size: 14px !important; }

.typeahead-cat-block {
  padding: 15px 0; }
  .typeahead-cat-block .typeahead__list {
    margin-left: 0px !important; }
    .typeahead-cat-block .typeahead__list .typeahead__resultsContainer {
      min-height: 200px;
      max-height: 400px;
      overflow: auto; }
  .typeahead-cat-block .typeahead__footer {
    padding-top: 17px; }

.stocklocation-item {
  margin-right: 5px;
  display: inline-block; }
  .stocklocation-item:not(:last-child):after {
    content: ",";
    position: relative; }

/*******************************
    CATEGORY PAGE V2
********************************/
.cat-item-wrap {
  margin-bottom: 15px; }
  .cat-item-wrap a {
    text-decoration: none !important; }
    .cat-item-wrap a:hover h2, .cat-item-wrap a:focus h2, .cat-item-wrap a:active h2 {
      text-decoration: none !important; }

.cat-desc-title h2 {
  text-transform: uppercase;
  font-size: 18px;
  min-height: 40px;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out; }

.cat-product-item.catalogue-only .cat-product-thumb {
  padding-bottom: 0px; }

.cat-product-item {
  margin-bottom: 20px; }

.cat-product-thumb {
  border: 1px solid #ddd;
  position: relative;
  height: calc(100%);
  text-align: left; }
  .cat-product-thumb.no-price {
    padding-bottom: 60px; }
  .cat-product-thumb:not(.no-price):not(.no-addtocart) {
    padding-bottom: 80px; }
    .cat-product-thumb:not(.no-price):not(.no-addtocart) .button-group, .cat-product-thumb:not(.no-price):not(.no-addtocart) .prod-actions {
      position: absolute;
      bottom: 0px;
      width: 100%; }
      .cat-product-thumb:not(.no-price):not(.no-addtocart) .button-group i, .cat-product-thumb:not(.no-price):not(.no-addtocart) .prod-actions i {
        height: 14px;
        width: 14px; }
    .cat-product-thumb:not(.no-price):not(.no-addtocart) .prod-price {
      position: absolute; }
  .cat-product-thumb .prod-price {
    color: #000;
    padding-bottom: 10px;
    font-size: 15px;
    bottom: 40px;
    line-height: 1; }
    .cat-product-thumb .prod-price .price-old {
      font-size: 12px; }

.cat-product-image {
  text-align: center; }

.cat-product-caption {
  padding: 0 15px;
  min-height: 50px; }
  .cat-product-caption h5 strong {
    color: #000; }
  .cat-product-caption a {
    color: #000; }
  .cat-product-caption p {
    font-size: 12px; }

.cat-product-item .button-group input {
  width: 20%;
  border-left: 1px solid #ddd !important;
  display: inline-block;
  float: left;
  height: 38px; }

.cat-product-item .button-group button {
  width: 60%;
  border: none;
  display: inline-block;
  float: left;
  background-color: #eee;
  color: #888;
  line-height: 26px;
  font-weight: bold;
  text-align: center;
  text-transform: uppercase;
  border-left: 1px solid #ddd !important;
  font-size: 14px; }
  .cat-product-item .button-group button i {
    padding-right: 5px; }
  .cat-product-item .button-group button:only-of-type {
    width: 80%; }
  .cat-product-item .button-group button:not(.add-to-cart):last-of-type {
    width: 20%;
    border-left: 1px solid #ddd !important; }
    .cat-product-item .button-group button:not(.add-to-cart):last-of-type i {
      padding-right: 0px; }
  .cat-product-item .button-group button:hover {
    color: #444;
    background-color: #ddd;
    text-decoration: none;
    cursor: pointer; }

.cat-product-item .prod-actions-cons a, .cat-product-item .prod-actions-cons button {
  float: left;
  height: 38px; }

.cat-product-item .prod-actions-cons.has-fav a {
  width: calc(100% - 20%); }

.cat-product-item .prod-actions-cons.has-fav button {
  width: 20%; }

.pricewas, .price-old {
  text-decoration: line-through; }

.prod-actions:hover .list-price-break {
  transform: scale(1);
  opacity: 1; }

.list-price-break {
  transform: scale(0);
  opacity: 0;
  position: absolute;
  width: calc(100% + 50px);
  bottom: 100px;
  left: 15px;
  border: 5px solid #cbcbcb;
  border-radius: 8px;
  background: #FFF;
  z-index: 5;
  box-shadow: 0 5px 10px #cbcbcb;
  transform-origin: bottom;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out; }
  @media screen and (max-width: 667px) {
    .list-price-break {
      width: calc(100% - 15px); } }
  .list-price-break:after, .list-price-break:before {
    content: "";
    position: absolute;
    bottom: -25px;
    left: -5px; }
  .list-price-break:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 30px 0 0;
    border-color: #cbcbcb transparent transparent transparent; }
  .list-price-break:after {
    bottom: -15px;
    left: 0px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 17px 20px 0 0;
    border-color: #cbcbcb transparent transparent transparent; }
  .list-price-break table {
    width: 100%; }
    .list-price-break table thead {
      background: #cbcbcb;
      color: #666666; }
    .list-price-break table td, .list-price-break table th {
      padding: 10px 15px !important; }
    .list-price-break table th {
      position: relative; }
      .list-price-break table th:first-child:after {
        content: "";
        position: absolute;
        background: white;
        height: 20px;
        width: 1px;
        right: 5px; }
    .list-price-break table td:first-child:after {
      left: 15px; }
    .list-price-break table td:last-child:after {
      right: 15px;
      left: unset; }
    .list-price-break table td:after {
      content: "";
      width: 100%;
      height: 2px;
      background: #cbcbcb;
      position: absolute;
      bottom: 0px;
      left: 0; }

/**************************
    Category Filters
**************************/
.product-filters {
  border: 1px solid #ddd;
  margin-bottom: 15px; }
  .product-filters-wrapper {
    padding: 15px; }
  @media screen and (max-width: 667px) {
    .product-filters {
      padding: 2px 15px;
      margin-bottom: 5px; }
      .product-filters .btn-link {
        padding: 2px; }
      .product-filters-wrapper {
        display: none; }
      .product-filters .btn-toolbar {
        margin-top: 15px; } }
  .product-filters h3 {
    margin: 5px 0px; }
    @media screen and (max-width: 667px) {
      .product-filters h3 {
        font-size: 16px; } }
  .product-filters-wrapper {
    padding-top: 15px; }
  .product-filters .filter-group {
    margin-bottom: 15px; }
    .product-filters .filter-group-item {
      width: calc(100% - 35px);
      border: 1px solid #ddd;
      padding: 10px 15px 15px 15px;
      position: relative;
      height: 50px;
      display: flex;
      align-items: center;
      vertical-align: middle;
      float: left; }
      .product-filters .filter-group-item a {
        font-size: 14px;
        color: #666666;
        display: block;
        overflow: hidden;
        text-decoration: none;
        width: 100%; }
        .product-filters .filter-group-item a i {
          padding-top: 5px;
          float: right; }
      .product-filters .filter-group-item .dropdown-menu {
        left: 0;
        width: 100%; }
      .product-filters .filter-group-item ~ .clear-filter {
        width: 35px;
        float: left;
        border: 1px solid #ddd;
        height: 50px;
        padding: 0px;
        text-align: center;
        position: relative;
        left: -1px;
        color: #ddd; }
        .product-filters .filter-group-item ~ .clear-filter:not(.disabled) {
          color: #777; }
    .product-filters .filter-group .filter-count {
      margin: 0 5px; }
    .product-filters .filter-group-items {
      width: 100%; }
      .product-filters .filter-group-items ul {
        padding: 0 15px;
        max-height: 250px;
        overflow: auto; }
        .product-filters .filter-group-items ul span {
          font-size: 14px; }

/**************************
    Product Page
**************************/
.single-product-page {
  margin-top: 15px; }
  .single-product-page .tab-content {
    padding: 15px;
    font-size: 14px; }

.single-prod-info .add-to-cart, .single-prod-info .add-to-fav {
  width: 100%; }

.uom-item select {
  display: inline-block;
  width: 70%; }

.uom-item .qty {
  display: inline-block;
  width: 27.999%; }

.uom-item-grid select, .uom-item-grid .qty {
  font-size: 12px; }

.uom-item-grid .qty {
  text-align: center;
  width: 55px;
  padding: 5px 12px !important; }

#productSlider #product-owl img, #productSlider #product-img img {
  margin: 0 auto;
  max-width: 100%;
  max-height: 350px !important;
  width: auto !important;
  -webkit-transform-style: flat !important;
  transform-style: flat !important;
  height: 100% !important;
  width: 100% !important;
  object-fit: contain;
  object-position: center center; }

#productSlider #product-owl-dot {
  padding-left: 0 !important;
  padding-right: 0 !important; }
  #productSlider #product-owl-dot .owl-dot {
    margin-bottom: 20px; }
    #productSlider #product-owl-dot .owl-dot img {
      max-height: 70px !important;
      margin: 0 auto; }

#productSlider a {
  display: block;
  width: 100%; }

.product-completement h3 {
  margin-bottom: 25px; }

.product-completement .prod-desc {
  margin-top: 10px; }

.product-completement img {
  max-height: 250px;
  height: auto; }

.product-completement .product-info {
  text-align: center; }

#productSlider, .cat-product-image {
  position: relative; }
  #productSlider .Prod-Img-Banner-Wrapper .Banner-Inner, .cat-product-image .Prod-Img-Banner-Wrapper .Banner-Inner {
    z-index: 4;
    position: absolute;
    transform: rotate(-45deg) translateY(50%) translateX(-25%); }
    #productSlider .Prod-Img-Banner-Wrapper .Banner-Inner .Banner-Container, .cat-product-image .Prod-Img-Banner-Wrapper .Banner-Inner .Banner-Container {
      text-align: center;
      position: relative; }
      #productSlider .Prod-Img-Banner-Wrapper .Banner-Inner .Banner-Container:before, .cat-product-image .Prod-Img-Banner-Wrapper .Banner-Inner .Banner-Container:before {
        background-color: inherit;
        content: "";
        width: 500px;
        position: absolute;
        transform: translateY(-6px) translateX(-150px);
        z-index: -1; }

#productSlider .Banner-Container {
  padding: 5px 25px; }
  #productSlider .Banner-Container:before {
    height: 45px; }

#productSlider .Banner-Text {
  font-size: 24px; }

.cat-product-image .Banner-Container {
  padding: 5px 15px; }
  .cat-product-image .Banner-Container:before {
    height: 34px; }

.cat-product-image .Banner-Text {
  font-size: 16px; }

/********************************************
         Favourites Page  
*********************************************/
tr[class*="wishlist-item"] .prod-actions, tr[class*="prod-list-item"] .prod-actions {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center; }
  tr[class*="wishlist-item"] .prod-actions input, tr[class*="wishlist-item"] .prod-actions button, tr[class*="prod-list-item"] .prod-actions input, tr[class*="prod-list-item"] .prod-actions button {
    float: left;
    height: 35px;
    margin: 0 5px; }
  tr[class*="wishlist-item"] .prod-actions input, tr[class*="prod-list-item"] .prod-actions input {
    width: 60px; }
  tr[class*="wishlist-item"] .prod-actions button, tr[class*="prod-list-item"] .prod-actions button {
    border: none; }
    tr[class*="wishlist-item"] .prod-actions button span, tr[class*="prod-list-item"] .prod-actions button span {
      display: none; }

/**************************
    Welcome Page
**************************/
.welcome-content h1.site-title {
  color: #1a2810 !important; }

.welcome-content .alert h2 {
  text-transform: lowercase !important;
  width: 70%;
  margin: 0 auto !important; }
  .welcome-content .alert h2:first-letter {
    text-transform: uppercase !important; }

.welcome-content .cat-img img {
  max-height: 250px !important; }

.alert-success h1, .alert-success h2, .alert-success h3, .alert-success h4, .alert-success h5, .alert-success h6, .alert-success p {
  color: #3c763d; }

.alert-info h1, .alert-info h2, .alert-info h3, .alert-info h4, .alert-info h5, .alert-info h6, .alert-info p {
  color: #31708f; }

.alert-warning h1, .alert-warning h2, .alert-warning h3, .alert-warning h4, .alert-warning h5, .alert-warning h6, .alert-warning p {
  color: #8a6d3b; }

.alert-danger h1, .alert-danger h2, .alert-danger h3, .alert-danger h4, .alert-danger h5, .alert-danger h6, .alert-danger p {
  color: #a94442; }

/**************************
    Content Styling
**************************/
/**************************
   Product customisation
**************************/
.customise-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 998; }
  .customise-modal-inner {
    position: absolute;
    width: 80%;
    top: 5%;
    left: 50%;
    margin-left: -40%;
    background: #ffffff;
    box-shadow: 0 0 5px 1px #808080;
    overflow: hidden; }
  .customise-modal-body {
    padding: 15px;
    overflow: auto; }
  .customise-modal-footer, .customise-modal-header {
    padding: 15px;
    background: #f3f3f3;
    box-shadow: 0 0 0 1px #ebebeb; }
    .customise-modal-footer h3, .customise-modal-header h3 {
      margin-top: 0px;
      margin-bottom: 0px; }
    .customise-modal-footer .btn-default, .customise-modal-header .btn-default {
      color: #333; }
  .customise-modal-footer {
    text-align: right; }
  .customise-modal .customise-loader {
    padding: 30px;
    font-size: 22px; }
    .customise-modal .customise-loader i {
      font-size: 22px; }
  .customise-modal h4 {
    margin-top: 0px;
    font-weight: bold; }
  .customise-modal .help-text {
    font-size: 12px; }
  .customise-modal .team-settings {
    margin-bottom: 0px;
    padding: 10px; }
    .customise-modal .team-settings ul.nav-head {
      text-align: center;
      font-size: 14px;
      font-weight: bold; }
      .customise-modal .team-settings ul.nav-head li {
        line-height: 20px;
        height: 30px; }
    .customise-modal .team-settings ul li {
      float: left;
      display: inline-block;
      vertical-align: middle;
      line-height: 35px;
      width: 33.33333%;
      height: 43px;
      padding: 5px 10px;
      box-shadow: 0 0 0 1px #ebebeb; }
      .customise-modal .team-settings ul li:first-child {
        font-size: 14px;
        text-align: center; }
  .customise-modal-products {
    counter-reset: cmp-lines; }
    .customise-modal-products .cmp-line {
      margin-bottom: 10px;
      box-shadow: 0 0 0 1px #ebebeb;
      overflow: hidden; }
      .customise-modal-products .cmp-line .col-sm-3 {
        position: relative; }
        .customise-modal-products .cmp-line .col-sm-3:after {
          content: "";
          height: 110%;
          width: 1px;
          top: -10px;
          right: 0px;
          background: #ebebeb;
          position: absolute; }
      .customise-modal-products .cmp-line-fields-container {
        padding-top: 10px;
        box-shadow: 0 0 0 1px #ebebeb;
        margin-bottom: 5px;
        padding-left: 25px;
        position: relative; }
        .customise-modal-products .cmp-line-fields-container:before {
          background: #ebebeb;
          position: absolute;
          left: 0;
          top: 0;
          height: 100%;
          display: block;
          padding: 9% 5px;
          font-size: 12px;
          counter-increment: cmp-lines;
          /* Increment the section counter*/
          content: "#" counters(cmp-lines, "", decimal-leading-zero);
          /* Display the counter */ }
    .customise-modal-products .cmp-size {
      font-size: 14px;
      font-weight: bold;
      padding: 10px;
      text-align: center; }

/**************************
    Web Reports
**************************/
.report-title {
  margin-top: 0 !important; }

#reportgroups-navbar a {
  color: #000 !important; }

#reportgroups-navbar .sidebar-img img {
  display: block !important;
  margin: 25px auto 15px auto; }

#reportgroups-navbar .parent-sub-menu > li > a span .fa {
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out; }

#reportgroups-navbar .parent-sub-menu > li > a span.close .fa {
  transform: rotate(90deg); }

#reportgroups-navbar .parent-sub-menu .sub-menu {
  padding-left: 10px; }

/**************************
    Responsive Styling
**************************/
@media only screen and (max-width: 640px) {
  .no-more-tables table, .no-more-tables thead, .no-more-tables tbody, .no-more-tables tfoot, .no-more-tables th, .no-more-tables td, .no-more-tables tr {
    display: block; }
  .no-more-tables thead tr {
    position: absolute;
    top: -9999px;
    left: -9999px; }
  .no-more-tables tr {
    border: 1px solid #ccc;
    margin-bottom: 5px; }
  .no-more-tables td {
    border: none;
    border-bottom: 1px solid #eee;
    position: relative;
    padding-left: 50%;
    white-space: normal;
    text-align: left;
    overflow: hidden; }
    .no-more-tables td .stocklabel {
      float: left !important;
      clear: both !important; }
    .no-more-tables td .addtocart-group {
      float: left !important; }
    .no-more-tables td.hide-td {
      display: none; }
  .no-more-tables td:before {
    float: left;
    width: 45%;
    padding-right: 10px;
    white-space: nowrap;
    text-align: left;
    font-weight: bold;
    content: attr(data-title); } }

.mobile-orderline {
  margin-bottom: 5px;
  padding-bottom: 5px;
  border: 1px solid #eee; }
  .mobile-orderline .mobile-cart-wrap h1 {
    background: #eee;
    font-size: 20px;
    padding: 8px;
    margin: 0; }
    .mobile-orderline .mobile-cart-wrap h1 a {
      color: #666666 !important; }
  .mobile-orderline .mobile-cart-wrap .mobile-cart-info {
    background: #f7f7f7; }
    .mobile-orderline .mobile-cart-wrap .mobile-cart-info span {
      display: block;
      margin: 5px 0;
      padding-bottom: 5px;
      overflow: hidden;
      font-size: 18px;
      text-align: right;
      padding-right: 5px; }
      .mobile-orderline .mobile-cart-wrap .mobile-cart-info span:first-child {
        font-size: 14px; }
      .mobile-orderline .mobile-cart-wrap .mobile-cart-info span small {
        font-size: 10px !important; }
      .mobile-orderline .mobile-cart-wrap .mobile-cart-info span a {
        margin-left: 5% !important; }
      .mobile-orderline .mobile-cart-wrap .mobile-cart-info span input, .mobile-orderline .mobile-cart-wrap .mobile-cart-info span a {
        max-width: 45% !important;
        width: 45% !important;
        padding: 5px 18px;
        text-align: center; }
      .mobile-orderline .mobile-cart-wrap .mobile-cart-info span a {
        background: #efefef;
        padding: 5px 18px; }
    .mobile-orderline .mobile-cart-wrap .mobile-cart-info a.text-danger {
      padding-right: 5px; }
  .mobile-orderline .mobile-gift-wrap {
    padding-left: 5px; }
    .mobile-orderline .mobile-gift-wrap a {
      float: left;
      width: 45%;
      text-align: center;
      padding: 5px 18px;
      font-size: 20px; }
      .mobile-orderline .mobile-gift-wrap a:first-child {
        margin-right: 5%; }

.mobile-cart-footer {
  padding: 10px 0; }
  .mobile-cart-footer .mobile-promo {
    padding: 0 0 10px 0; }
    .mobile-cart-footer .mobile-promo .promo-fields {
      width: 100% !important; }
      .mobile-cart-footer .mobile-promo .promo-fields button {
        margin: 5px 0;
        width: 100%; }
      .mobile-cart-footer .mobile-promo .promo-fields:first-child {
        margin-right: 5%; }
  .mobile-cart-footer .row {
    position: relative;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 15px;
    font-weight: bold; }
    .mobile-cart-footer .row:after {
      content: "";
      height: 1px;
      width: 95.5%;
      left: 15px;
      bottom: 0;
      background: #808080;
      position: absolute; }
    .mobile-cart-footer .row.mobile-total-row .col-xs-12 {
      padding: 10px; }
      .mobile-cart-footer .row.mobile-total-row .col-xs-12 > div {
        background: white;
        text-align: center;
        font-size: 20px;
        font-weight: bold;
        padding: 5px; }
        .mobile-cart-footer .row.mobile-total-row .col-xs-12 > div .muted {
          font-size: 14px;
          color: #272727; }

/* Mobile Screens Portrait and Landscape */
@media screen and (max-width: 667px) {
  input[type="text"], input[type="password"], input[type="date"],
  input[type="datetime"], input[type="datetime-local"], input[type="month"],
  input[type="week"], input[type="email"], input[type="number"],
  input[type="search"], input[type="tel"], input[type="time"],
  input[type="url"], textarea, select {
    font-size: 16px !important; }
  /*.navbar-nav {
        padding-bottom: 80px;
    }*/
  .caret {
    top: 17px !important;
    -moz-transform: scale(1.2) !important;
    -ms-transform: scale(1.2) !important;
    -o-transform: scale(1.2) !important;
    -webkit-transform: scale(1.2) !important;
    transform: scale(1.2) !important; }
  .sub-menu {
    border: none !important;
    box-shadow: none !important;
    padding-top: 0px !important;
    position: relative;
    left: 0px;
    /*!important - remove important as this is standard*/
    top: 0px;
    /*!important - remove important as this is standard*/
    width: 280px;
    /*!important - remove important as this is standard*/
    padding: 10px;
    /*!important - remove important as this is standard*/
    top: 47px;
    column-count: 0 !important;
    position: relative !important; } }
  @media screen and (max-width: 667px) and (min-width: 641px) and (max-width: 1023px) and (orientation: landscape) {
    .sub-menu {
      position: absolute !important; } }

@media screen and (max-width: 667px) {
    .sub-menu div {
      margin: 0px;
      /*!important - remove important as this is standard*/
      padding: 0px; }
    .sub-menu:before, .sub-menu:after {
      display: none !important; }
  .dropdown.open a:before, .dropdown.open a:after {
    display: none !important; }
  .head-m-icon {
    margin-right: 70px;
    padding-top: 10px; }
    .head-m-icon .m-icon {
      display: inline;
      font-size: 40px;
      line-height: 40px;
      padding: 8px; }
      .head-m-icon .m-icon a, .head-m-icon .m-icon a:hover, .head-m-icon .m-icon a:focus, .head-m-icon .m-icon a:active {
        color: #000;
        text-decoration: none; }
  .nav-main-toggle {
    height: 30px;
    width: 40px;
    position: absolute;
    right: 15px;
    top: 15px;
    /*&:after {
            content: "MENU";
            position: absolute;
            width: 100%;
            padding: 3px 0;
            text-align: center;
            color: $color-black;
            bottom: -20px;
            left: 0;
            font-size: 10px;
            letter-spacing: 0.3em;
            transition:none !important;
        }*/ }
    .nav-main-toggle span {
      background: #000;
      border-radius: 0 !important;
      -moz-transition: all 0.25s ease-in-out 0s;
      -o-transition: all 0.25s ease-in-out 0s;
      -webkit-transition: all 0.25s ease-in-out 0s;
      transition: all 0.25s ease-in-out 0s;
      width: auto !important;
      display: block;
      height: 4px;
      left: 0;
      margin: auto;
      pointer-events: none;
      position: absolute;
      right: 0;
      -moz-transition: all 0.25s ease-in-out;
      -o-transition: all 0.25s ease-in-out;
      -webkit-transition: all 0.25s ease-in-out;
      transition: all 0.25s ease-in-out; }
      .nav-main-toggle span:nth-child(2) {
        top: 50%;
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%); }
      .nav-main-toggle span:nth-child(3) {
        bottom: 0; }
  .speal .v-aligned {
    font-size: 18px; }
  header {
    margin: 0 !important;
    position: fixed;
    /*top: 37px;*/
    left: 0;
    right: 0;
    background: fade(#767c85, 50%) !important;
    padding: 0px !important;
    /*  &.isStuck {
            #main-menu {
                top: 79px; !important - remove important as this is standard
            }
        }*/ }
    header .head-inner-wrap {
      padding: 10px 15px; }
  .nav-main-toggle {
    -moz-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out; }
    .nav-main-toggle.nav-open {
      -moz-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
      -o-transform: rotate(90deg);
      -webkit-transform: rotate(90deg);
      transform: rotate(90deg);
      /*&:after{
                transform:rotate(-90deg) translatey(23px) translatex(26px);
            }*/ }
      .nav-main-toggle.nav-open span:nth-child(1) {
        -moz-transform: rotate(45deg) translatey(10px) translatex(10px);
        -ms-transform: rotate(45deg) translatey(10px) translatex(10px);
        -o-transform: rotate(45deg) translatey(10px) translatex(10px);
        -webkit-transform: rotate(45deg) translatey(10px) translatex(10px);
        transform: rotate(45deg) translatey(10px) translatex(10px); }
      .nav-main-toggle.nav-open span:nth-child(2) {
        opacity: 0 !important; }
      .nav-main-toggle.nav-open span:nth-child(3) {
        -moz-transform: rotate(-45deg) translateY(-10px) translateX(10px);
        -ms-transform: rotate(-45deg) translateY(-10px) translateX(10px);
        -o-transform: rotate(-45deg) translateY(-10px) translateX(10px);
        -webkit-transform: rotate(-45deg) translateY(-10px) translateX(10px);
        transform: rotate(-45deg) translateY(-10px) translateX(10px); }
  #main-menu {
    position: fixed !important;
    width: 250px;
    right: 0;
    top: 116px;
    background: #FFF;
    height: 100%;
    overflow: auto;
    margin-right: -250px;
    -moz-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out; }
    #main-menu.nav-open {
      box-shadow: 0 10px 25px #808080;
      margin-right: 0px;
      opacity: 1 !important; }
    #main-menu ul {
      margin: 0 !important; }
      #main-menu ul li {
        width: 100%; }
  .mobile-icon {
    position: absolute;
    top: 10px;
    display: block;
    text-align: center; }
    .mobile-icon.mobile-call {
      right: 204px; }
      .mobile-icon.mobile-call i {
        padding-top: 5px; }
    .mobile-icon.mobile-cart {
      right: 80px; }
    .mobile-icon.mobile-search {
      right: 145px; }
      .mobile-icon.mobile-search i {
        font-size: 35px !important;
        padding-top: 4px; }
    .mobile-icon i {
      font-size: 40px;
      color: #FFF; }
  .nav-main-toggle span {
    background: #000;
    /*!important - remove important as this is standard*/ }
  header.slideDown #main-menu.navbar {
    top: 91px; }
  #main-menu.navbar {
    top: 116px;
    height: 100% !important; }
    #main-menu.navbar .navbar-nav {
      width: 100%; }
      #main-menu.navbar .navbar-nav li {
        position: relative;
        /*&.active a {
                        border-bottom: 0px; /*!important - remove important as this is standard
                    }*/ }
        #main-menu.navbar .navbar-nav li a {
          color: #000;
          border-bottom: 1px solid #e6e6e6;
          margin-top: 0;
          /*!important - remove important as this is standard*/
          margin-bottom: 5px;
          /*!important - remove important as this is standard*/
          padding-bottom: 12px;
          /*!important - remove important as this is standard*/
          padding-top: 12px;
          /*!important - remove important as this is standard*/ }
          #main-menu.navbar .navbar-nav li a:hover {
            background: #e6e6e6;
            /*!important - remove important as this is standard*/ }
        #main-menu.navbar .navbar-nav li .caret {
          position: absolute;
          right: 5px; }
    #main-menu.navbar .sub-menu, #main-menu.navbar .sub-menu-2, #main-menu.navbar .sub-menu-3 {
      padding: 0 0 0 15px;
      /*!important - remove important as this is standard*/
      list-style: none; }
      #main-menu.navbar .sub-menu a, #main-menu.navbar .sub-menu-2 a, #main-menu.navbar .sub-menu-3 a {
        display: block;
        padding: 10px 0 10px 15px;
        /*!important - remove important as this is standard*/ }
  .carousel-inner .carousel-caption {
    top: 100%;
    bottom: -100%; }
    .carousel-inner .carousel-caption h1 {
      font-size: 15px;
      color: #666666 !important; }
    .carousel-inner .carousel-caption .slider-button {
      position: absolute;
      left: 0;
      right: 0;
      bottom: -40px; }
  #productSlider #product-owl .product-owl-img {
    margin: 0 auto;
    max-width: 100%;
    max-height: 250px !important;
    width: auto !important; }
  #productSlider #product-owl-dot {
    padding-left: 0 !important;
    padding-right: 0 !important; }
    #productSlider #product-owl-dot .owl-dot {
      margin-bottom: 10px; }
  .prod-grid {
    -ms-word-wrap: break-word;
    word-wrap: break-word; }
  .compare-container {
    height: 100%; }
  .footer-signup .form-newsletter {
    padding: 40px 0; }
    .footer-signup .form-newsletter input, .footer-signup .form-newsletter .btn {
      margin: 15px auto; }
  .footer-contact {
    text-align: center !important; }
    .footer-contact a {
      margin-bottom: 10px; }
  .footer-bottom {
    padding-bottom: 35px; }
    .footer-bottom .footer-copyright-text {
      position: relative !important; }
    .footer-bottom .footer-social {
      float: none !important;
      text-align: center; }
      .footer-bottom .footer-social .social-links {
        margin-top: 15px; }
  .sidebar.sidebarminicart .typeahead__container .typeahead__resultsContainer {
    height: 300px; }
  .order-btns .btn-group {
    width: 100%; }
    .order-btns .btn-group .btn {
      display: block !important;
      width: 100%; }
  .order-thanks h2 {
    font-size: 18px; } }

@media (max-width: 1024px) {
  .navbar-header {
    float: none; }
  .navbar-left, .navbar-right {
    float: none !important; }
  .navbar-toggle {
    display: block; }
  .navbar-collapse {
    border-top: 1px solid transparent;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); }
    .navbar-collapse.collapse {
      display: none !important; }
      .navbar-collapse.collapse.in {
        display: block !important; }
      .navbar-collapse.collapse .sub-menu {
        width: auto !important; }
  .navbar-fixed-top {
    top: 0;
    border-width: 0 0 1px; }
  .navbar-collapse .navbar-nav {
    float: none !important;
    margin-top: 7.5px; }
    .navbar-collapse .navbar-nav > li {
      float: none; }
    .navbar-collapse .navbar-nav > a {
      padding-top: 10px;
      padding-bottom: 10px; }
  /*.navbar-nav {
        padding-bottom: 80px;
    }*/
  .caret {
    top: 17px !important;
    -moz-transform: scale(1.2) !important;
    -ms-transform: scale(1.2) !important;
    -o-transform: scale(1.2) !important;
    -webkit-transform: scale(1.2) !important;
    transform: scale(1.2) !important; }
  .sub-menu {
    border: none !important;
    box-shadow: none !important;
    padding-top: 0px !important;
    position: relative;
    left: 0px;
    /*!important - remove important as this is standard*/
    top: 0px;
    /*!important - remove important as this is standard*/
    width: 280px;
    /*!important - remove important as this is standard*/
    padding: 10px;
    /*!important - remove important as this is standard*/
    top: 47px;
    column-count: 0 !important;
    position: relative !important; } }
  @media screen and (max-width: 1024px) and (min-width: 641px) and (max-width: 1023px) and (orientation: landscape) {
    .sub-menu {
      position: absolute !important; } }

@media (max-width: 1024px) {
    .sub-menu div {
      margin: 0px;
      /*!important - remove important as this is standard*/
      padding: 0px; }
    .sub-menu:before, .sub-menu:after {
      display: none !important; }
  .dropdown.open a:before, .dropdown.open a:after {
    display: none !important; } }

@media screen and (min-width: 641px) and (max-width: 1023px) and (orientation: portrait) {
  /*.navbar-nav {
        padding-bottom: 80px;
    }*/
  .caret {
    top: 17px !important;
    -moz-transform: scale(1.2) !important;
    -ms-transform: scale(1.2) !important;
    -o-transform: scale(1.2) !important;
    -webkit-transform: scale(1.2) !important;
    transform: scale(1.2) !important; }
  .sub-menu {
    border: none !important;
    box-shadow: none !important;
    padding-top: 0px !important;
    position: relative;
    left: 0px;
    /*!important - remove important as this is standard*/
    top: 0px;
    /*!important - remove important as this is standard*/
    width: 280px;
    /*!important - remove important as this is standard*/
    padding: 10px;
    /*!important - remove important as this is standard*/
    top: 47px;
    column-count: 0 !important;
    position: relative !important; } }
  @media screen and (min-width: 641px) and (max-width: 1023px) and (orientation: portrait) and (min-width: 641px) and (max-width: 1023px) and (orientation: landscape) {
    .sub-menu {
      position: absolute !important; } }

@media screen and (min-width: 641px) and (max-width: 1023px) and (orientation: portrait) {
    .sub-menu div {
      margin: 0px;
      /*!important - remove important as this is standard*/
      padding: 0px; }
    .sub-menu:before, .sub-menu:after {
      display: none !important; }
  .dropdown.open a:before, .dropdown.open a:after {
    display: none !important; }
  .head-m-icon {
    margin-right: 70px;
    padding-top: 10px; }
    .head-m-icon .m-icon {
      display: inline;
      font-size: 40px;
      line-height: 40px;
      padding: 8px; }
      .head-m-icon .m-icon a, .head-m-icon .m-icon a:hover, .head-m-icon .m-icon a:focus, .head-m-icon .m-icon a:active {
        color: #000;
        text-decoration: none; }
  .nav-main-toggle {
    height: 30px;
    width: 40px;
    position: absolute;
    right: 15px;
    top: 15px;
    /*&:after {
            content: "MENU";
            position: absolute;
            width: 100%;
            padding: 3px 0;
            text-align: center;
            color: $color-black;
            bottom: -20px;
            left: 0;
            font-size: 10px;
            letter-spacing: 0.3em;
            transition:none !important;
        }*/ }
    .nav-main-toggle span {
      background: #000;
      border-radius: 0 !important;
      -moz-transition: all 0.25s ease-in-out 0s;
      -o-transition: all 0.25s ease-in-out 0s;
      -webkit-transition: all 0.25s ease-in-out 0s;
      transition: all 0.25s ease-in-out 0s;
      width: auto !important;
      display: block;
      height: 4px;
      left: 0;
      margin: auto;
      pointer-events: none;
      position: absolute;
      right: 0;
      -moz-transition: all 0.25s ease-in-out;
      -o-transition: all 0.25s ease-in-out;
      -webkit-transition: all 0.25s ease-in-out;
      transition: all 0.25s ease-in-out; }
      .nav-main-toggle span:nth-child(2) {
        top: 50%;
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%); }
      .nav-main-toggle span:nth-child(3) {
        bottom: 0; }
  .speal .v-aligned {
    font-size: 18px; }
  header {
    margin: 0 !important;
    position: fixed;
    /*top: 37px;*/
    left: 0;
    right: 0;
    background: fade(#767c85, 50%) !important;
    padding: 0px !important;
    /*  &.isStuck {
            #main-menu {
                top: 79px; !important - remove important as this is standard
            }
        }*/ }
    header .head-inner-wrap {
      padding: 10px 15px; }
  .nav-main-toggle {
    -moz-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out; }
    .nav-main-toggle.nav-open {
      -moz-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
      -o-transform: rotate(90deg);
      -webkit-transform: rotate(90deg);
      transform: rotate(90deg);
      /*&:after{
                transform:rotate(-90deg) translatey(23px) translatex(26px);
            }*/ }
      .nav-main-toggle.nav-open span:nth-child(1) {
        -moz-transform: rotate(45deg) translatey(10px) translatex(10px);
        -ms-transform: rotate(45deg) translatey(10px) translatex(10px);
        -o-transform: rotate(45deg) translatey(10px) translatex(10px);
        -webkit-transform: rotate(45deg) translatey(10px) translatex(10px);
        transform: rotate(45deg) translatey(10px) translatex(10px); }
      .nav-main-toggle.nav-open span:nth-child(2) {
        opacity: 0 !important; }
      .nav-main-toggle.nav-open span:nth-child(3) {
        -moz-transform: rotate(-45deg) translateY(-10px) translateX(10px);
        -ms-transform: rotate(-45deg) translateY(-10px) translateX(10px);
        -o-transform: rotate(-45deg) translateY(-10px) translateX(10px);
        -webkit-transform: rotate(-45deg) translateY(-10px) translateX(10px);
        transform: rotate(-45deg) translateY(-10px) translateX(10px); }
  #main-menu {
    position: fixed !important;
    width: 250px;
    right: 0;
    top: 116px;
    background: #FFF;
    height: 100%;
    overflow: auto;
    margin-right: -250px;
    -moz-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    -webkit-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out; }
    #main-menu.nav-open {
      box-shadow: 0 10px 25px #808080;
      margin-right: 0px;
      opacity: 1 !important; }
    #main-menu ul {
      margin: 0 !important; }
      #main-menu ul li {
        width: 100%; }
  .mobile-icon {
    position: absolute;
    top: 10px;
    display: block;
    text-align: center; }
    .mobile-icon.mobile-call {
      right: 204px; }
      .mobile-icon.mobile-call i {
        padding-top: 5px; }
    .mobile-icon.mobile-cart {
      right: 80px; }
    .mobile-icon.mobile-search {
      right: 145px; }
      .mobile-icon.mobile-search i {
        font-size: 35px !important;
        padding-top: 4px; }
    .mobile-icon i {
      font-size: 40px;
      color: #FFF; } }

/*Desktop*/
@media screen and (min-width: 1024px) and (orientation: landscape) {
  li.dropdown {
    position: inherit; }
    li.dropdown:not(.category-dropdown) .sub-menu {
      width: auto !important;
      left: auto; }
  .sub-menu {
    width: 100%; }
    .sub-menu .menu-more a {
      text-decoration: underline;
      color: #000; }
    .sub-menu .sub-menu-item {
      padding: 0 0 15px 0; }
      .sub-menu .sub-menu-item a {
        color: #000;
        display: block; }
        .sub-menu .sub-menu-item a:hover, .sub-menu .sub-menu-item a:active, .sub-menu .sub-menu-item a:focus {
          background: none;
          border: none;
          color: #337ab7; }
      .sub-menu .sub-menu-item > a {
        font-size: 16px;
        text-transform: capitalize;
        color: #000;
        margin-bottom: 5px; }
        .sub-menu .sub-menu-item > a:hover, .sub-menu .sub-menu-item > a:active, .sub-menu .sub-menu-item > a:focus {
          color: #337ab7; }
      .sub-menu .sub-menu-item ul {
        list-style: none; }
        .sub-menu .sub-menu-item ul li {
          list-style: none; }
        .sub-menu .sub-menu-item ul a {
          padding: 2px 0px;
          text-transform: capitalize;
          color: #000;
          -moz-transition: all 0.25s ease-in-out;
          -o-transition: all 0.25s ease-in-out;
          -webkit-transition: all 0.25s ease-in-out;
          transition: all 0.25s ease-in-out; }
          .sub-menu .sub-menu-item ul a:hover, .sub-menu .sub-menu-item ul a:active, .sub-menu .sub-menu-item ul a:focus {
            padding-left: 2px;
            color: #337ab7; } }

/**************************
    Headroom.js
**************************/
header.headroom {
  will-change: transform;
  -moz-transition: transform 200ms linear;
  -o-transition: transform 200ms linear;
  -webkit-transition: transform 200ms linear;
  transition: transform 200ms linear;
  left: 0;
  right: 0;
  top: 0;
  z-index: 999; }
  header.headroom--pinned {
    display: block;
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    -webkit-transform: translateY(0%);
    transform: translateY(0%); }
  header.headroom--unpinned {
    display: none;
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); }

header.slideDown.headroom--top {
  top: 37px; }

@-webkit-keyframes slideDown {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0); } }

@-moz-keyframes slideDown {
  0% {
    -moz-transform: translateY(-100%);
    transform: translateY(-100%); }
  100% {
    -moz-transform: translateY(0);
    transform: translateY(0); } }

@-o-keyframes slideDown {
  0% {
    -o-transform: translateY(-100%);
    transform: translateY(-100%); }
  100% {
    -o-transform: translateY(0);
    transform: translateY(0); } }

@keyframes slideDown {
  0% {
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); }
  100% {
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0); } }

.animated.slideDown {
  -webkit-animation-name: slideDown;
  -moz-animation-name: slideDown;
  -o-animation-name: slideDown;
  animation-name: slideDown;
  -moz-animation-duration: .25s;
  -o-animation-duration: .25s;
  -webkit-animation-duration: .25s;
  animation-duration: .25s;
  top: 0;
  position: fixed; }

@-webkit-keyframes slideUp {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  100% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); } }

@-moz-keyframes slideUp {
  0% {
    -moz-transform: translateY(0);
    transform: translateY(0); }
  100% {
    -moz-transform: translateY(-100%);
    transform: translateY(-100%); } }

@-o-keyframes slideUp {
  0% {
    -o-transform: translateY(0);
    transform: translateY(0); }
  100% {
    -o-transform: translateY(-100%);
    transform: translateY(-100%); } }

@keyframes slideUp {
  0% {
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  100% {
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); } }

.animated.slideUp {
  -webkit-animation-name: slideUp;
  -moz-animation-name: slideUp;
  -o-animation-name: slideUp;
  animation-name: slideUp;
  -moz-animation-duration: .25s;
  -o-animation-duration: .25s;
  -webkit-animation-duration: .25s;
  animation-duration: .25s;
  top: 0;
  position: fixed; }

i.fa-file-o, i.fa-file-pdf-o {
  color: #666666; }

/********************************************
        Catalogues
*********************************************/
.pdf-item {
  margin-bottom: 15px; }
  .pdf-item h4 {
    padding: 8px 0; }
  .pdf-item .pdf-thumb {
    height: 300px;
    margin: auto; }
    @media screen and (max-width: 667px) {
      .pdf-item .pdf-thumb {
        height: 200px; } }
    .pdf-item .pdf-thumb img {
      height: 100%;
      width: 100%;
      object-fit: contain;
      object-position: center center; }

.gdpr-banner {
  position: fixed;
  top: 0px;
  width: 100%;
  z-index: 99;
  border-bottom: 0.5px solid #ccc;
  -moz-transition: max-height linear 0.3s;
  -o-transition: max-height linear 0.3s;
  -webkit-transition: max-height linear 0.3s;
  transition: max-height linear 0.3s;
  overflow: hidden; }
  .gdpr-banner .gdpr-policy-header {
    font-size: 40px;
    font-weight: bold;
    margin-top: 5px;
    margin-bottom: 5px; }
  .gdpr-banner .gdpr-policy-text {
    font-size: 20px; }
  .gdpr-banner .gdpr-policy-link {
    font-size: 18px;
    margin-top: 8px;
    margin-bottom: 8px; }
  .gdpr-banner .gdpr-btn {
    font-size: 25px; }

.form-loader {
  width: 100%;
  position: fixed;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  z-index: 99999; }
  .form-loader div {
    width: 400px;
    max-width: 100%;
    font-size: 20px;
    background-color: white;
    padding: 2% 1%;
    border-radius: 5px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    user-select: none; }

@media (min-width: 641px) {
  .orderlist-table {
    min-width: 888px; } }

.orderlist-table .view-order-td {
  text-align: right; }
  @media (min-width: 1440px) {
    .orderlist-table .view-order-td {
      padding-right: 10%; } }

/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiQ29udGVudC9SUzIvY3NzL3N0YW5kYXJkLmNzcyIsCgkic291cmNlcyI6IFsKCQkiQ29udGVudC9SUzIvY3NzL3N0YW5kYXJkLnNjc3MiCgldLAoJIm5hbWVzIjogW10sCgkibWFwcGluZ3MiOiAiO0FBQUE7OzJCQUUyQjtBQTBCM0I7OzJCQUUyQjtBQTBFM0I7OzJCQUUyQjtBQUMzQixPQUFPLENBQUMsNkRBQUk7QUFFWixBQUFBLEVBQUUsRUFBRSxBQUFBLEVBQUUsRUFBRSxBQUFBLEVBQUUsRUFBRSxBQUFBLEVBQUUsRUFBRSxBQUFBLEVBQUUsRUFBRSxBQUFBLEVBQUUsQ0FBQztFQUVuQixLQUFLLEVBM0ZPLE9BQU8sR0E0RnRCOztBQUVELEFBQUEsQ0FBQyxDQUFDO0VBQ0UsU0FBUyxFQUFFLElBQUk7RUFDZixLQUFLLEVBbEdJLE9BQU87RUFtR2hCLFdBQVcsRUFBRSxHQUFHLEdBQ25COztBQUdEOzs4Q0FFOEM7QUEyQjlDOzsyQkFFMkI7QUFDM0IsQUFBQSxDQUFDLENBQUM7RUFDRSxNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0VBQ1YsT0FBTyxFQUFFLGVBQWUsR0FDM0I7O0FBRUQsQUFBQSxJQUFJLEVBQUUsQUFBQSxJQUFJLENBQUM7RUFDUCxTQUFTLEVBQUUsTUFBTTtFQUNqQixNQUFNLEVBQUUsSUFBSTtFQUNaLFdBQVcsRUFBRSxvQkFBb0I7RUFDakMsY0FBYyxFQUFFLE9BQU87RUFDdkIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyxXQUFXLEVBQUUsSUFBSTtFQUNqQixjQUFjLEVBQUUsV0FBVztFQUMzQiwwQkFBMEIsRUFBRSxnQkFBZ0IsR0FDL0M7O0FBRUQsQUFBQSxJQUFJLENBQUM7RUFDRCxVQUFVLEVBQUUsbUJBQW1CLEdBQ2xDOztBQUVELEFBQVcsVUFBRCxDQUFDLFVBQVUsQ0FBQztFQUNsQixPQUFPLEVBQUUsR0FBRyxHQUNmOztBQUVELEFBQUEsQ0FBQyxDQUFDO0VBbEpFLGVBQWUsRUFBRSxHQUFHLENB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 */