/* ========= LAYOUT DETAILS COMPONENT ========= */
@import "framework.css";
@font-face {
  font-family: "OpenSans";
  src: url(opensans-light-webfont.woff) format("woff"), url(opensans-light-webfont.woff2) format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap; /* Crucial for perceived performance */
}
@font-face {
  font-family: "OpenSans";
  src: url(opensans-regular-webfont.woff) format("woff"), url(opensans-regular-webfont.woff2) format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap; /* Crucial for perceived performance */
}
@font-face {
  font-family: "Montserrat";
  src: url(montserrat-regular-webfont.woff) format("woff"), url(montserrat-regular-webfont.woff2) format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap; /* Crucial for perceived performance */
}
@font-face {
  font-family: "Montserrat";
  src: url(montserrat-regular-webfont.woff) format("woff"), url(montserrat-regular-webfont.woff2) format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap; /* Crucial for perceived performance */
}
@font-face {
  font-family: "Montserrat";
  src: url(montserrat-light-webfont.woff) format("woff"), url(montserrat-light-webfont.woff2) format("woff2");
  font-weight: lighter;
  font-style: normal;
  font-display: swap; /* Crucial for perceived performance */
}
@font-face {
  font-family: "Montserrat";
  src: url(montserrat-bold-webfont.woff) format("woff"), url(montserrat-bold-webfont.woff2) format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap; /* Crucial for perceived performance */
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary, div, ul, ol, li, p, dl, dd, dt, tr, th, td, h1, h2, h3, h4, h5, a, span {
  border: 0 solid #e5e5e5;
  border-radius: 0;
}

figure {
  position: relative;
}

/**
 * Fix fonts that render as bold in Firefox
 *
 * Put this near the top of your style.css
 * Before any overriding styles
 */
body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

/*** Content Managed Sections ***/
.content a {
  text-decoration: underline;
}

/***** PRICING *****/
.price {
  color: var(--bs-black);
  margin-bottom: 0.5rem;
}

.price.was {
  text-decoration: line-through;
  padding-right: 0.5rem;
  color: var(--bs-gray-600);
  margin-bottom: 0;
}

.price.now {
  color: var(--bs-black);
}

.price.was, .price.now {
  display: inline-block;
}

.price.save {
  color: var(--bs-danger);
  display: none;
}

.price.tax {
  display: none;
}

.price.special .price-display:before {
  content: " ";
}

.next-previous {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  flex-direction: column;
  gap: 1rem;
}

.remove {
  position: absolute;
  right: 0;
  top: 10px;
}

.icon {
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
}

.actions .remove a, .wishlist-products .cartbutton .remove, .subscriptions-table .actions a, a.remove {
  display: block;
  color: #000;
  padding: 0.5rem;
  width: 30px;
  height: 30px;
  border: 1px solid #9b9d9d;
  border-radius: 50%;
}
.actions .remove a .icon-close::before, .wishlist-products .cartbutton .remove .icon-close::before, .subscriptions-table .actions a .icon-close::before, a.remove .icon-close::before {
  content: "×";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.25rem;
  color: #9b9d9d;
  text-align: center;
}
.actions .remove a:hover, .wishlist-products .cartbutton .remove:hover, .subscriptions-table .actions a:hover, a.remove:hover {
  opacity: 0.5;
}

.message.incentive {
  padding: 0;
}

.error ul, .success ul, .warning ul {
  margin: 0;
}

.main .cross-sell, .main .featured {
  clear: both;
}
.main .cross-sell .products, .main .featured .products {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.main .cross-sell .products .item, .main .featured .products .item {
  width: 100%;
}
.main .cross-sell .slide-item, .main .featured .slide-item {
  margin: 0 1%;
}
.main .cross-sell .slick-prev:before, .main .featured .slick-prev:before {
  content: "";
  border-radius: 0 4px 4px 0;
  background-position: 0 -883px;
}
.main .cross-sell .slick-next:before, .main .featured .slick-next:before {
  content: "";
  border-radius: 4px 0 0 4px;
  background-position: 0 -947px;
}
.main .cross-sell {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.main .cross-sell h2 {
  text-align: center;
}

@media (min-width: 768px) {
  .main .cross-sell .nav-tabs .nav-link {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
  }
  .main .cross-sell .cross-sell-wrapper {
    border-width: 1px;
  }
  .main .cross-sell .cross-sell-wrapper > .tab-pane {
    padding: 1rem;
  }
}
.modal .cross-sell {
  display: none;
}

.popup-data:not(.collapse):not(.collapsing) {
  display: none;
}

#back-top {
  right: 10px;
  opacity: 0;
  display: block !important;
  transition: 1s;
}

.scrolled-down #back-top {
  position: fixed;
  bottom: 0;
  background: #000;
  opacity: 0.9;
  z-index: 999;
  border-radius: 0.25rem 0.25rem 0 0;
}
.scrolled-down #back-top a {
  display: block;
  padding: 0.5rem 1rem 1rem;
  color: #fff;
}

.main-container {
  position: relative;
  z-index: 1;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.main-container:before, .main-container:after {
  content: "";
  display: table;
}
.main-container:after {
  clear: both;
}

/*** HOMEPAGE ***/
.homepage #page-content {
  width: 100%;
}
.homepage #left-nav {
  display: none;
}
.homepage .main-container {
  padding: 0;
  max-width: none;
}

/*** PAGE NUMBERS ***/
.page-numbers {
  display: inline-block;
  text-align: center;
  text-transform: uppercase;
  color: #f6f5f4;
  position: relative;
  margin-top: 1rem;
  margin-bottom: 1rem;
  font-size: 0.875rem;
}
.page-numbers:before, .page-numbers:after {
  content: "";
  display: table;
}
.page-numbers:after {
  clear: both;
}
.page-numbers ul + .view-all {
  float: right;
  margin: 0;
  text-transform: capitalize;
}
.page-numbers .view-all {
  margin: 0;
  padding: 0.5rem;
  float: left;
  display: block;
  text-decoration: underline;
}
.page-numbers a {
  font-weight: normal;
  text-decoration: none;
  padding: 0.25rem;
  display: inline-block;
}
.page-numbers p {
  display: none;
}
.page-numbers p, .page-numbers ul {
  float: left;
}
.page-numbers ul {
  display: flex;
  align-items: center;
  padding: 0;
  margin-right: 0.25rem;
  margin-bottom: 0;
}
.page-numbers li {
  float: left;
  display: flex;
  margin-right: 0.25rem;
  text-align: center;
  padding: 0.25rem;
}
.page-numbers .on {
  color: #000;
  background: #f6f5f4;
  padding: 0.25rem 0.75rem;
}
.page-numbers .next-prev {
  padding: 0;
}
.page-numbers .next-prev a {
  text-indent: -9999px;
  height: 24px;
  width: 24px;
  background: url(sprite.png) transparent;
  background-size: 23px;
  display: inline-block;
}
.page-numbers .next-prev.prev a {
  background-position: 0 -506px;
}
.page-numbers .next-prev.next a {
  background-position: 0 -542px;
}

/*** INFOPAGES/ General page structure ***/
.infopage #main, .career #main, .storelocator #main, .cartpage #main, .onlinebooks #main, .searchpage #main {
  padding: 1rem 0;
}

.infopage main h1 {
  margin-bottom: 1.5rem;
  margin-top: 0;
}
.infopage main .content p {
  margin-bottom: 1rem;
}
.infopage main .content table td, .infopage main .content table th {
  padding: 0.25rem;
}
.infopage main .content table tr:nth-of-type(2n) td {
  background-color: var(--bs-gray-300);
}

.ESO_number_wrapper {
  position: relative;
  display: flex;
  text-align: center;
}
.ESO_number_wrapper input {
  height: 35px;
  width: 70px;
  text-align: center;
  margin: 0;
}
.ESO_number_wrapper a {
  height: 35px;
  width: 35px;
  line-height: 30px;
  text-align: center;
  border-radius: 0;
  border-width: 1px;
  top: 0;
  color: #000;
  transition: background-color 200ms;
  text-decoration: none;
}
.ESO_number_wrapper a:hover {
  background-color: #ced4da;
}

/*** review stars ***/
.stars-container {
  margin-bottom: 0.25rem;
}
.stars-container span {
  vertical-align: middle;
  display: inline-block;
}
.stars-container span.full, .stars-container span.half, .stars-container span.empty {
  width: 15px;
  height: 15px;
  margin-right: 5px;
  background: url(sprite.png) center -1021px no-repeat;
  background-size: 40px;
}
.stars-container span.half {
  background-position: center -1084px;
}
.stars-container span.empty {
  background-position: center -1146px;
}
.stars-container .review-count {
  display: none;
}

.eso-accordion-indicator {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  padding: 0;
}

.eso-accordion-trigger {
  position: relative;
}

.eso-accordion-indicator::after {
  content: "";
  display: block;
  padding: 1.25rem;
  background-image: url(sprite.png);
  background-size: 27px;
  background-repeat: no-repeat;
  background-position: 50% -504px;
}
.eso-accordion-indicator:not(.collapsed)::after {
  background-image: url(sprite.png);
  background-position: 50% -504px;
  transform: rotate(180deg);
}

.eso-accordion-indicator + .eso-accordion-indicator {
  display: none;
}

.errorpage .redirect-message {
  font-weight: 600;
}

@media (min-width: 768px) {
  .main-container {
    padding-bottom: 1.5rem;
  }
  .left-nav + .page-content {
    width: 66%;
    float: left;
    margin-left: 0;
    margin-right: 0;
  }
  .infopage main #left-nav .menu.dynamic ul li span {
    border: none;
    padding: 0.5rem 0;
  }
  .page-numbers {
    float: right;
    margin: 0;
  }
  .page-numbers ul {
    padding: 0 0 0 1rem;
  }
  .errorpage .page-header {
    height: 160px;
  }
  .next-previous {
    clear: both;
    min-height: initial;
    flex-direction: row;
    justify-content: end;
  }
  .next-previous .next, .next-previous .prev {
    max-width: 300px;
  }
}
.recaptcha-validation {
  opacity: 0;
  position: fixed;
  top: -99999px;
  left: -99999px;
}

.captcha-input {
  transform: scale(0.9);
  transform-origin: 0 0;
}

.hide {
  display: none !important;
}

.pac-container {
  z-index: 1061 !important;
}

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *, *:before, *:after {
    background: transparent !important;
    color: #000 !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a, a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a[href^="#"]:after, a[href^="javascript:"]:after {
    content: "";
  }
  pre, blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr, img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p, h2, h3 {
    orphans: 3;
    widows: 3;
  }
  h2, h3 {
    page-break-after: avoid;
  }
  .navbar {
    display: none;
  }
  .btn > .caret, .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .label {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td, .table th {
    background-color: #fff !important;
  }
  .table-bordered th, .table-bordered td {
    border: 1px solid #ddd !important;
  }
}
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
  margin-bottom: 1.5rem;
}

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

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

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

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

.slick-arrow.slick-hidden {
  display: none;
}

.slick-loading .slick-list {
  background: #fff url("ajax-loader.gif") center center no-repeat;
}

.slick-prev, .slick-next {
  position: absolute;
  display: block;
  height: 40px;
  width: 40px;
  line-height: 0;
  font-size: 0;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  padding: 0;
  border: none;
  outline: none;
  z-index: 2;
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before, .slick-next:before {
  line-height: 1;
  color: #fff;
  opacity: 0.75;
  background-image: url(sprite.png);
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: 40px;
  padding: 1.5rem;
}

.slick-prev {
  left: 0;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: 0;
}
.slick-prev:before {
  content: "";
  border-radius: 0 4px 4px 0;
  background-position: 0 -442px;
}
[dir=rtl] .slick-prev:before {
  content: "";
  border-radius: 0 4px 4px 0;
  background-position: 0 -442px;
}

.slick-next {
  right: 0;
}
[dir=rtl] .slick-next {
  left: 0;
  right: auto;
}
.slick-next:before {
  content: "";
  border-radius: 4px 0 0 4px;
  background-position: 0 -380px;
}
[dir=rtl] .slick-next:before {
  border-radius: 4px 0 0 4px;
  background-position: 0 -380px;
}

.slick-dots {
  position: absolute;
  bottom: 0;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  width: 100%;
  margin-bottom: 0.5rem;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 13px;
  width: 13px;
  margin: 0 0.25rem;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 2px solid var(--bs-white);
  border-radius: 50%;
  background: transparent;
  display: block;
  height: 5px;
  width: 5px;
  outline: none;
  line-height: 0;
  font-size: 0;
  color: transparent;
  padding: 0.25rem;
  cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "·";
  width: 20px;
  height: 20px;
  line-height: 20px;
  text-align: center;
  color: #000;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button {
  background-color: var(--bs-white);
}
.slick-dots li.slick-active button:before {
  color: #000;
  opacity: 0.75;
}

.homeslider {
  margin-bottom: 0.5rem;
}
.homeslider span.glyphicon:hover:before {
  background: var(--bs-white);
}

.overlay {
  position: absolute;
  display: flex;
  flex-wrap: wrap;
}
.overlay > span img {
  width: 100%;
  height: auto;
}

.item figure .overlay img {
  width: 100%;
  display: inline-block;
}

.left-vertical,
.right-vertical {
  width: 33%;
  height: 100%;
  flex-direction: column;
}
.left-vertical > span,
.right-vertical > span {
  width: 100%;
  display: inline-block;
  margin-right: 0.25rem;
  margin-bottom: 0.25rem;
}

.left-vertical {
  left: 0;
  top: 0;
}
.left-vertical > span img {
  float: left;
}

.right-vertical {
  right: 0;
  top: 0;
}
.right-vertical > span img {
  float: right;
}

.top-horizontal {
  top: 0;
}

.bottom-horizontal {
  bottom: 0;
}

.top-horizontal,
.bottom-horizontal {
  width: 30%;
  left: 0;
}
.top-horizontal > span,
.bottom-horizontal > span {
  display: inline-block;
  margin-bottom: 0.25rem;
  margin-right: 0.25rem;
  flex: 1 0 10%;
}
.top-horizontal > span:last-child,
.bottom-horizontal > span:last-child {
  margin-right: 0;
}

.bottom-horizontal.right-vertical {
  height: auto;
  top: inherit;
  left: auto;
  flex-direction: row-reverse;
}
.bottom-horizontal.right-vertical > span {
  float: right;
}
.bottom-horizontal.right-vertical > span:first-child {
  margin-right: 0;
}
.bottom-horizontal.right-vertical > span:last-child {
  margin-right: 0.25rem;
}

.bottom-horizontal.small-overlay, .top-horizontal.small-overlay {
  width: 23%;
}

.product-detail .left-vertical, .product-detail .right-vertical {
  width: 20%;
}
.product-detail figure .overlay.top-horizontal img, .product-detail figure .overlay.bottom-horizontal img {
  width: 100%;
}
.product-detail figure .overlay.overlay.left-vertical img, .product-detail figure .overlay.right-vertical img {
  width: 100%;
}

.main .bottom-horizontal {
  left: auto;
  right: 0;
  bottom: 3%;
}

@media (min-width: 768px) {
  .main .overlay {
    height: auto;
  }
  .main .overlay.bottom-horizontal {
    bottom: 3%;
  }
  .main .overlay img {
    width: 100%;
  }
}
.fake-select {
  position: relative;
  width: 100%;
  text-align: left;
}
.fake-select .selected {
  border: 1px solid #000;
  border-radius: 0;
  background-color: #fff;
  display: flex;
  align-items: center;
  width: 100%;
  z-index: 2;
  position: relative;
  cursor: pointer;
  font-weight: 700;
  padding: 0.5rem 2.5rem 0.5rem 0.5rem;
}
.fake-select .selected span:first-child {
  margin-right: 0.5rem;
}
.fake-select .selected span:first-child:empty {
  display: none;
}
.fake-select .selected::after {
  content: "";
  display: block;
  flex-shrink: 0;
  margin-left: auto;
  position: absolute;
  top: auto;
  right: 0;
  background: url(sprite.png) no-repeat 50% -507px var(--bs-white);
  background-size: 27px;
  padding: 1rem;
}
.fake-select .dummy {
  margin-top: 0.5rem;
}
.fake-select .dummy-label {
  font-size: 0;
  padding: 0;
}
.fake-select ul {
  position: absolute;
  z-index: 4;
  margin: 0;
  margin-top: -2px;
  height: 0;
  width: 100%;
  background: #fff;
  overflow: hidden;
  left: 0;
  display: block !important;
  list-style: none;
  padding: 0;
}
.fake-select li {
  width: 100%;
  background-color: #fff;
  margin: 0;
}
.fake-select li > a::before {
  content: "";
  display: none !important;
}
.fake-select li:last-child {
  padding-bottom: 0.25rem;
}
.fake-select li.on {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  border: 0 !important;
}
.fake-select label {
  font-weight: 400;
}
.fake-select label:hover,
.fake-select li > a:hover {
  background-color: #fff;
  text-decoration: none;
}
.fake-select label,
.fake-select li > a,
.fake-select li > span {
  cursor: pointer;
  padding: 0.25rem 0.5rem;
  background-color: #fff;
  position: relative;
  z-index: 2;
  margin: 0;
  width: 100%;
}
.fake-select label,
.fake-select li > a {
  display: block;
}
.fake-select a {
  text-decoration: none;
}
.fake-select span,
.fake-select a {
  vertical-align: middle;
}
.fake-select input {
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 0;
}
.fake-select.open {
  z-index: 10;
}
.fake-select.open .selected::after {
  transform: rotate(180deg);
}
.fake-select.open ul {
  height: auto;
  border-width: 1px;
  border-radius: 0 0 4px 4px;
  padding: 0.25rem 0;
}
.fake-select.single .selected {
  cursor: default;
  border-width: 0;
  padding: 0.5rem;
}
.fake-select.single .selected::after {
  display: none;
}
.fake-select.single ul {
  border: 0;
}

@media (min-width: 768px) {
  .fake-select .selected {
    font-weight: 400;
  }
  .fake-select .selected span + span {
    padding-right: 0.5rem;
    margin-right: 0.25rem;
    vertical-align: middle;
  }
}
/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.noUi-target,
.noUi-target * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.noUi-target {
  position: relative;
}

.noUi-base,
.noUi-connects {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}

/* Wrapper for all connect elements.
 */
.noUi-connects {
  overflow: hidden;
  z-index: 0;
}

.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  -ms-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -webkit-transform-style: preserve-3d;
  transform-origin: 0 0;
  transform-style: flat;
}

/* Offset direction
 */
.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
  left: 0;
  right: auto;
}

/* Give origins 0 height/width so they don't interfere with clicking the
 * connect elements.
 */
.noUi-vertical .noUi-origin {
  top: -100%;
  width: 0;
}

.noUi-horizontal .noUi-origin {
  height: 0;
}

.noUi-handle {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  position: absolute;
}

.noUi-touch-area {
  height: 100%;
  width: 100%;
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  -webkit-transition: transform 0.3s;
  transition: transform 0.3s;
}

.noUi-state-drag * {
  cursor: inherit !important;
}

/* Slider size and handle placement;
 */
.noUi-horizontal {
  height: 18px;
}

.noUi-horizontal .noUi-handle {
  width: 34px;
  height: 28px;
  right: -17px;
  top: -6px;
}

.noUi-vertical {
  width: 18px;
}

.noUi-vertical .noUi-handle {
  width: 28px;
  height: 34px;
  right: -6px;
  bottom: -17px;
}

.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {
  left: -17px;
  right: auto;
}

/* Styling;
 * Giving the connect element a border radius causes issues with using transform: scale
 */
.noUi-target {
  background: #FAFAFA;
  border-radius: 4px;
  border: 1px solid #D3D3D3;
  box-shadow: inset 0 1px 1px #F0F0F0, 0 3px 6px -5px #BBB;
}

.noUi-connects {
  border-radius: 3px;
}

.noUi-connect {
  background: #3FB8AF;
}

/* Handles and cursors;
 */
.noUi-draggable {
  cursor: ew-resize;
}

.noUi-vertical .noUi-draggable {
  cursor: ns-resize;
}

.noUi-handle {
  border: 1px solid #D9D9D9;
  border-radius: 3px;
  background: #FFF;
  cursor: default;
  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #EBEBEB, 0 3px 6px -3px #BBB;
}

.noUi-active {
  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #DDD, 0 3px 6px -3px #BBB;
}

/* Handle stripes;
 */
.noUi-handle:before,
.noUi-handle:after {
  content: "";
  display: block;
  position: absolute;
  height: 14px;
  width: 1px;
  background: #E8E7E6;
  left: 14px;
  top: 6px;
}

.noUi-handle:after {
  left: 17px;
}

.noUi-vertical .noUi-handle:before,
.noUi-vertical .noUi-handle:after {
  width: 14px;
  height: 1px;
  left: 6px;
  top: 14px;
}

.noUi-vertical .noUi-handle:after {
  top: 17px;
}

/* Disabled state;
 */
[disabled] .noUi-connect {
  background: #B8B8B8;
}

[disabled].noUi-target,
[disabled].noUi-handle,
[disabled] .noUi-handle {
  cursor: not-allowed;
}

/* Base;
 *
 */
.noUi-pips,
.noUi-pips * {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.noUi-pips {
  position: absolute;
  color: #999;
}

/* Values;
 *
 */
.noUi-value {
  position: absolute;
  white-space: nowrap;
  text-align: center;
}

.noUi-value-sub {
  color: #ccc;
  font-size: 10px;
}

/* Markings;
 *
 */
.noUi-marker {
  position: absolute;
  background: #CCC;
}

.noUi-marker-sub {
  background: #AAA;
}

.noUi-marker-large {
  background: #AAA;
}

/* Horizontal layout;
 *
 */
.noUi-pips-horizontal {
  padding: 10px 0;
  height: 80px;
  top: 100%;
  left: 0;
  width: 100%;
}

.noUi-value-horizontal {
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
}

.noUi-rtl .noUi-value-horizontal {
  -webkit-transform: translate(50%, 50%);
  transform: translate(50%, 50%);
}

.noUi-marker-horizontal.noUi-marker {
  margin-left: -1px;
  width: 2px;
  height: 5px;
}

.noUi-marker-horizontal.noUi-marker-sub {
  height: 10px;
}

.noUi-marker-horizontal.noUi-marker-large {
  height: 15px;
}

/* Vertical layout;
 *
 */
.noUi-pips-vertical {
  padding: 0 10px;
  height: 100%;
  top: 0;
  left: 100%;
}

.noUi-value-vertical {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding-left: 25px;
}

.noUi-rtl .noUi-value-vertical {
  -webkit-transform: translate(0, 50%);
  transform: translate(0, 50%);
}

.noUi-marker-vertical.noUi-marker {
  width: 5px;
  height: 2px;
  margin-top: -1px;
}

.noUi-marker-vertical.noUi-marker-sub {
  width: 10px;
}

.noUi-marker-vertical.noUi-marker-large {
  width: 15px;
}

.noUi-tooltip {
  display: block;
  position: absolute;
  border: 1px solid #D9D9D9;
  border-radius: 3px;
  background: #fff;
  color: #000;
  padding: 5px;
  text-align: center;
  white-space: nowrap;
}

.noUi-horizontal .noUi-tooltip {
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  left: 50%;
  bottom: 120%;
}

.noUi-vertical .noUi-tooltip {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  top: 50%;
  right: 120%;
}

.noUi-horizontal .noUi-origin > .noUi-tooltip {
  -webkit-transform: translate(50%, 0);
  transform: translate(50%, 0);
  left: auto;
  bottom: 10px;
}

.noUi-vertical .noUi-origin > .noUi-tooltip {
  -webkit-transform: translate(0, -18px);
  transform: translate(0, -18px);
  top: auto;
  right: 28px;
}

/* ========= LAYOUT DETAILS COMPONENT END ========= */
/* ========= HEADER COMPONENT ========= */
.header-account ul {
  display: none;
  padding-left: 0;
  list-style: none;
  margin-bottom: 0;
}
.header-account ul li.logout {
  margin-left: 0;
}
.header-account ul li a {
  font-weight: 600;
  font-size: 0.75rem;
  text-decoration: none;
}

@media (min-width: 768px) {
  .header-account {
    position: relative;
    float: none;
    display: inline-block;
  }
  .header-account li {
    display: inline-block;
  }
  .header-account ul#account-menu {
    display: flex;
    align-items: center;
    padding: 0;
    margin: 0;
  }
  .header-account ul#account-menu li > a {
    padding: 0;
    display: inline-block;
  }
  .header-account ul#account-menu .password label,
  .header-account ul#account-menu .email label {
    width: 100%;
  }
  .wishlist-count {
    vertical-align: top;
  }
}
.login #sign-in {
  display: none;
  font-size: 1rem;
  background: #fff;
  width: 320px;
  position: absolute;
  z-index: 10;
  top: 30px;
  border-top: 0;
  left: 0;
  padding: 1rem;
  box-shadow: 0px 5px 16px 0px rgba(50, 50, 51, 0.31);
}
.login #sign-in fieldset li {
  display: block;
  width: 100%;
}
.login #sign-in button, .login #sign-in .btn {
  width: 100%;
}
.login #sign-in #header-retrieve-password, .login #sign-in .note {
  display: none;
}
.login #sign-in .signup {
  border-top-width: 1px;
  padding-top: 0.5rem;
  margin-top: 0.5rem;
}
.login.on #sign-in {
  display: block;
}

#sign-in .autologin #header-autologin, #page-content .autologin input[type=checkbox] {
  display: inline-block;
  width: auto;
  vertical-align: top;
}

.currency-menu ul {
  display: none;
  border: 0;
  margin-bottom: 0;
}
.currency-menu li {
  position: relative;
}
.currency-menu img {
  height: 15px;
}
.currency-menu .selected {
  background-color: #495057;
}
.currency-menu .selected::after {
  background-color: #495057;
  background-position-y: -722px;
}
.currency-menu .selected span {
  color: #fff;
}
.currency-menu .selected span:first-child {
  margin: 0;
}
.currency-menu form > label {
  display: none;
}
.currency-menu .open ul {
  width: 100%;
  box-shadow: 0 5px 16px 0 rgba(163, 163, 163, 0.31);
}

@media (min-width: 992px) {
  .currency-menu .selected {
    border-width: 0;
    height: auto;
  }
  .currency-menu .open ul {
    width: 90px;
    box-shadow: 0 5px 16px 0 rgba(163, 163, 163, 0.31);
  }
  .currency-estimator {
    float: left;
  }
}
.page-header {
  z-index: 2;
  position: relative;
  border-bottom: 1px solid #e5e5e5;
}
.page-header .content.header-top {
  display: none;
}
.page-header .content.header-bottom {
  padding-left: 0;
  padding-right: 0;
}
.page-header .content.header-bottom:before, .page-header .content.header-bottom:after {
  content: "";
  display: table;
}
.page-header .content.header-bottom:after {
  clear: both;
}

.page-header-container {
  height: 57px;
  position: relative;
  padding: 0;
  border-bottom: 3px solid #000;
}
.page-header-container:before, .page-header-container:after {
  content: "";
  display: table;
}
.page-header-container:after {
  clear: both;
}

.header-account,
.header-compare,
.header-cart,
.currency-estimator,
.search {
  position: relative;
}

.search {
  float: left;
}

.header-compare,
.header-account .icon-link,
.header-cart .icon-link,
.currency-estimator .icon-link,
.header-search .icon-link,
.header-cart-summary,
.header-compare.empty,
.header-cart-summary .ajax-content {
  display: none;
}

.nav-trigger {
  display: inline-block;
  height: 10px;
  width: 10px;
  background-color: #ced4da;
}

.wishlist-count {
  display: none;
}

@media (max-width: 767.98px) {
  .page-header-checkout .btn-continue-shopping .icon + span {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    border: 0 !important;
  }
  .page-header-container {
    max-width: none;
  }
}
@media (max-width: 991.98px) {
  .page-header .page-header-container .content.header-top {
    width: 50%;
  }
  .page-header .page-header-container .content.header-top .about-header-link {
    display: none;
  }
  .page-header .page-header-container .content.header-top .findus-links {
    text-align: right;
  }
  .page-header .page-header-container .content.header-top ul li.logout {
    margin-left: 0;
  }
  .page-header .page-header-container .content.header-top ul li a {
    font-size: 0.75rem;
  }
}
@media (min-width: 768px) {
  .page-header .content.header-top {
    display: block;
    float: right;
  }
  .page-header .content.header-top ul li {
    display: inline-block;
    padding: 0 0.5rem;
    border-right: 1px solid #000;
  }
  .page-header .content.header-top ul li:last-of-type {
    border: none;
    padding-right: 0;
  }
  .page-header .content.header-top ul li a {
    text-decoration: none;
    font-weight: 600;
  }
  .page-header .content.header-middle {
    clear: both;
  }
  .page-header .mobile-triggers,
  .page-header .mobile-trigger {
    display: none;
  }
  .page-header-checkout::before {
    content: "";
    display: none;
  }
  .page-header-checkout .currency-estimator {
    float: none;
  }
  .page-header-checkout .currency-estimator .selected {
    border-width: 1px;
  }
  .page-header-container {
    height: auto;
    padding: 0 1rem;
    position: relative;
    border-bottom: none;
  }
  .wishlist .badge {
    margin-left: 0.25rem;
  }
  .header-account {
    position: relative;
    float: none;
    display: inline-block;
  }
  .header-account ul,
  .header-nav ul:not(.m-nav-links),
  #currency-menu,
  #search-menu {
    display: block;
    visibility: visible;
  }
  .header-account, .header-top {
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
  }
  .header-account > ul > li,
  .header-options > ul > li,
  #header-nav .container > ul > li {
    float: left;
  }
  .header-options {
    float: left;
  }
  .header-account ul {
    padding-top: 0.5rem;
  }
  .header-account ul#account-menu {
    padding-top: 0;
  }
  .header-account ul#account-menu .password label,
  .header-account ul#account-menu .email label {
    width: 100%;
  }
  .header-account > ul > li,
  .header-options > ul > li {
    margin-right: 0.5rem;
    border-right: 1px solid #000;
    padding-right: 0.5rem;
  }
  .header-account > ul > li:last-of-type,
  .header-options > ul > li:last-of-type {
    border: none;
    margin-right: 0;
  }
  .nav-trigger,
  .m-nav-links {
    display: none;
  }
}
.print-header {
  display: none;
}

@media print {
  .print-header {
    display: block;
    width: 135px;
    height: 45px;
  }
  .print-header img {
    width: 100%;
  }
  #breadcrumbs {
    display: none !important;
  }
  a[href]:after {
    visibility: hidden;
  }
  #back-top a {
    display: none !important;
  }
  .page-header {
    display: none;
  }
}
body.print .print-header {
  display: block;
  width: 135px;
  height: 45px;
}
body.print .print-header img {
  width: 100%;
}

.logo {
  display: block;
  width: 40%;
  padding: 0.5rem 0;
  float: left;
  margin-left: 0.5rem;
}
.logo a {
  display: block;
}
.logo img {
  display: block;
  max-height: 40px;
  max-width: 100%;
  height: auto;
}

@media (min-width: 768px) {
  .logo {
    position: absolute;
    bottom: 24px;
    padding: 0;
    width: 300px;
    margin-left: 0;
    max-height: 46px;
  }
}
.header-nav {
  padding: 0;
}
.header-nav .header-nav-container ul {
  width: 100%;
  padding: 0;
  text-align: left;
  list-style-type: none;
  padding-left: 0;
  margin-bottom: 0;
}
.header-nav .header-nav-container li {
  position: relative;
}
.header-nav .header-nav-container a {
  text-decoration: none;
}
.header-nav .header-nav-container a, .header-nav .header-nav-container .structural, .header-nav .header-nav-container label {
  display: block;
  padding: 1rem 0;
  font-weight: 600;
}
.header-nav .header-nav-container > ul > li > a, .header-nav .header-nav-container > ul > li > .structural {
  font-size: 1rem;
  padding: 0.5rem;
  text-transform: uppercase;
}
.header-nav > .header-nav-container:first-of-type > ul > li:first-of-type {
  border-top: 0;
}
.header-nav .submenu {
  background-color: #f6f5f4;
}
.header-nav .submenu ul {
  padding-left: 1.5rem;
}
.header-nav .submenu li {
  border-top: 0;
}
.header-nav .submenu a, .header-nav .submenu .structural {
  display: block;
  padding: 0.5rem;
}
.header-nav .submenu.loading .submenu-content {
  display: flex;
  justify-content: center;
}
.header-nav .submenu-content {
  padding-bottom: 0.5rem;
}
.header-nav .nav-flyout {
  display: none;
}
.header-nav .header-nav-container .m-nav-links {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}
.header-nav .header-nav-container .m-nav-links li {
  width: 50%;
  flex-grow: 1;
  border-right: 1px solid #d9d9d9;
  border-bottom: 1px solid #d9d9d9;
}
.header-nav .header-nav-container .m-nav-links li:nth-of-type(even) {
  border-right: none;
}
.header-nav .header-nav-container .m-nav-links a {
  color: #9b9d9d;
  text-align: center;
  font-weight: normal;
  font-size: 0.875rem;
  text-decoration: none;
}
.header-nav .header-nav-container .m-nav-links .badge.wishlist-count {
  display: none;
}

@media (max-width: 767.98px) {
  .header-nav .header-nav-container {
    display: flex;
    flex-direction: column;
    align-items: normal;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }
  .header-nav .submenu-content {
    padding: 0 0 0.5rem 0;
    max-width: none;
  }
}
@media (min-width: 768px) {
  .header-nav {
    display: block !important;
    background-color: #000;
    width: 100%;
  }
  .header-nav .header-nav-container .m-nav-links {
    display: none !important;
  }
  .offcanvas-body {
    flex-wrap: wrap;
  }
  .header-nav .container ul ul {
    display: none;
  }
  .header-nav .header-nav-container {
    padding-top: 0.25rem;
  }
  .header-nav .header-nav-container > ul > li {
    position: static;
    border: 0;
    display: inline-block;
    text-align: center;
    float: none;
    padding: 0;
    margin: 0 1rem;
  }
  .header-nav .header-nav-container > ul > li > a, .header-nav .header-nav-container > ul > li > .structural {
    padding: 0.5rem 0 0 0;
    font-size: 0.875rem;
    color: #fff;
  }
  .header-nav .header-nav-container > ul > li > a:after, .header-nav .header-nav-container > ul > li > .structural:after {
    content: "";
    display: block;
    height: 3px;
    margin-top: 10px;
    background-color: black;
  }
  .header-nav .header-nav-container > ul > li.on > a:after, .header-nav .header-nav-container > ul > li.on > span:after, .header-nav .header-nav-container > ul > li.active > a:after, .header-nav .header-nav-container > ul > li.active > span:after, .header-nav .header-nav-container > ul > li:hover > a:after, .header-nav .header-nav-container > ul > li:hover > span:after {
    content: "";
    display: block;
    height: 3px;
    margin-top: 10px;
    background-image: url(../../Images/assetimages/main-colour.jpg);
  }
  .header-nav .header-nav-container > ul > li.on > a:hover, .header-nav .header-nav-container > ul > li.on > span:hover, .header-nav .header-nav-container > ul > li.active > a:hover, .header-nav .header-nav-container > ul > li.active > span:hover, .header-nav .header-nav-container > ul > li:hover > a:hover, .header-nav .header-nav-container > ul > li:hover > span:hover {
    border-bottom: none;
  }
  .header-nav .header-nav-container li:not(.active) .submenu {
    display: none;
  }
  .header-nav .submenu {
    box-shadow: 0 5px 16px 0 rgba(50, 50, 51, 0.31);
    display: block;
    position: absolute;
    left: 0;
    background: #fff;
    width: 100%;
    text-align: left;
    z-index: 10;
    padding: 2rem 0;
  }
  .header-nav .submenu ul {
    padding-left: 0;
    display: inherit;
    padding-bottom: 0;
  }
  .header-nav .submenu li {
    display: inherit;
    position: relative;
    padding: 0;
  }
  .header-nav .submenu .with-children ul li a {
    font-size: 0.875rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
  }
  .header-nav .submenu a, .header-nav .submenu .structural {
    color: #000;
    padding: 0.5rem;
    border: 0;
    font-size: 1rem;
  }
  .header-nav .submenu-content {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 1rem;
    width: 100%;
    padding-bottom: 0;
  }
  .header-nav .submenu-content > ul {
    display: block;
    width: 75%;
    -webkit-columns: 2 200px;
    -moz-columns: 2 200px;
    columns: 3 200px;
  }
  .header-nav .submenu-content > ul > li {
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
  }
  .header-nav .submenu-content > ul > li > a {
    text-transform: uppercase;
    font-weight: 700;
  }
}
@media (min-width: 992px) {
  .header-nav .submenu-content > ul {
    width: 75%;
  }
  .header-nav .submenu-content .nav-flyout {
    display: block;
  }
  .header-nav .submenu-content .nav-flyout .header-content-section {
    position: relative;
  }
  .header-nav .submenu-content .nav-flyout .header-content-section .header-content-text {
    position: absolute;
    z-index: 2;
    color: white;
    text-transform: uppercase;
    text-align: center;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
  }
  .header-nav .submenu-content .nav-flyout .header-content-section .header-content-text a {
    color: white;
  }
  .header-nav .submenu-content .nav-flyout .header-content-section .header-content-text h2 {
    font-size: 1.25rem;
    margin-bottom: 1.5rem;
  }
  .header-nav .submenu-content .nav-flyout .header-content-section .image-overlay {
    z-index: 1;
  }
  .header-nav .submenu-content .nav-flyout .header-content-section img {
    width: 100%;
    height: auto;
  }
}
.header-cart {
  clear: both;
}

.header-cart-summary .ajax-content {
  position: absolute;
  right: 0;
  z-index: 10;
  font-size: 1rem;
  background: #fff;
  clear: both;
  padding: 0.5rem;
  box-shadow: 0 5px 16px 0 rgba(50, 50, 51, 0.31);
}
.header-cart-summary .ajax-content h3 {
  margin-top: 0;
  font-size: 1.25rem;
  font-weight: 600;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #e5e5e5;
}
.header-cart-summary .summary-table {
  width: 100%;
  display: block;
  margin-bottom: 0.5rem;
}
.header-cart-summary .summary-table .click-and-collect {
  display: none;
}
.header-cart-summary .summary-table td {
  margin: 0 0 0.25rem;
}
.header-cart-summary .summary-table p {
  margin-bottom: 0.25rem;
}
.header-cart-summary .summary-table td.pricing {
  margin-top: 0;
}
.header-cart-summary .summary-table .total::before {
  content: "Item Sub Total: ";
}
.header-cart-summary .summary-table .item {
  width: 100%;
  display: block;
}
.header-cart-summary .summary-table .item h2 {
  font-size: 0.875rem;
  font-weight: 700;
}
.header-cart-summary .summary-table .item h2 a {
  display: block;
  font-size: inherit;
  text-decoration: none;
}
.header-cart-summary .summary-table .item figure {
  margin-bottom: 0;
  margin-top: 0.5rem;
  margin-left: 0;
  margin-right: 0.5rem;
  width: 60px;
  display: block;
  float: left;
}
.header-cart-summary .summary-table .item figure a {
  display: block;
}
.header-cart-summary .summary-table .item .item-detail {
  margin-bottom: 0.5rem;
}
.header-cart-summary .summary-table .item .item-detail, .header-cart-summary .summary-table .qty, .header-cart-summary .summary-table .pricing, .header-cart-summary .summary-table .total {
  display: block;
  float: right;
  clear: right;
  padding: 0;
  width: 70%;
  text-align: left;
  font-size: 0.875rem;
  border: none;
}
.header-cart-summary .summary-table p.price {
  font-weight: 600;
  display: inline-block;
}
.header-cart-summary .summary-table p.price.save, .header-cart-summary .summary-table p.price.tax {
  display: none;
}
.header-cart-summary .summary-table p.style-number {
  display: none;
}
.header-cart-summary .summary-table td.actions {
  display: block;
  margin: 0;
}
.header-cart-summary > h3 {
  border-bottom-width: 1px;
  padding-bottom: 0.5rem;
  margin-top: 0.5rem;
}
.header-cart-summary h4 {
  margin-top: 0;
}
.header-cart-summary h4 a {
  color: #000;
  font-weight: 600;
  font-size: 1.25rem;
  display: inline-block;
}
.header-cart-summary h4 a:hover {
  color: #495057;
}
.header-cart-summary thead {
  display: none;
}
.header-cart-summary tbody {
  display: block;
}
.header-cart-summary tr {
  border-bottom-width: 1px;
  padding-right: 2.5rem;
  display: block;
  position: relative;
  padding-bottom: 0.5rem;
  margin-bottom: 0.5rem;
}
.header-cart-summary tr:before, .header-cart-summary tr:after {
  content: "";
  display: table;
}
.header-cart-summary tr:after {
  clear: both;
}
.header-cart-summary tr:last-of-type {
  border-bottom-width: 0;
}
.header-cart-summary td {
  display: block;
  border: 0;
  padding: 0;
}
.header-cart-summary .next-previous {
  gap: 0.5rem;
}
.header-cart-summary .next-previous a {
  width: 100%;
  max-width: none;
}
.header-cart-summary td.actions {
  position: static;
}
.header-cart-summary td.actions ul {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
}
.header-cart-summary td.actions .remove {
  position: absolute;
  top: 0;
  right: 0;
}
.header-cart-summary td.actions .remove a {
  display: block;
}
.header-cart-summary .cart-total {
  margin-bottom: 0.5rem;
}
.header-cart-summary .cart-total ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.header-cart-summary .loading,
.login #sign-in.loading {
  min-height: 40px;
  background: #fff url(ajax-loader.gif) center no-repeat;
  display: block;
  position: absolute;
}

.header-cart-summary.on .ajax-content {
  display: block;
}

@media (min-width: 768px) {
  .header-cart {
    float: right;
    margin-left: 0.75rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  .header-cart-summary {
    display: block;
    float: right;
    margin-left: 0.5rem;
    opacity: 1;
  }
  .header-cart-summary .bag {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.25rem;
    position: relative;
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 600;
  }
  .header-cart-summary .ajax-content {
    width: 330px;
    top: 30px;
  }
  .header-cart-summary .cart-icon {
    background: url(sprite.png) 0 -34px no-repeat;
    background-size: 20px;
    height: 20px;
    width: 20px;
    display: inline-block;
  }
  .header-cart-summary .badge {
    color: inherit;
    font-weight: 600;
    font-size: 0.875rem;
    padding: 0;
  }
  .header-cart-summary.on {
    margin-top: 0;
  }
  .header-cart-summary.on .loading .ajax-content {
    display: none;
  }
}
.header-search {
  position: relative;
  float: right;
  width: 100%;
}

.search-menu {
  border: 1px solid #e5e5e5;
}
.search-menu .autocomplete {
  position: absolute;
  width: 100%;
  left: 0;
  background: #fff;
  z-index: 2;
  border-top-width: 1px;
  box-shadow: 0 5px 16px 0 rgba(50, 50, 51, 0.31);
}
.search-menu .autocomplete .description {
  width: 250px;
}
.search-menu .autocomplete .item {
  width: 100%;
}
.search-menu .autocomplete .offer,
.search-menu .autocomplete .buy-now,
.search-menu .autocomplete .colours,
.search-menu .autocomplete .reviews,
.search-menu .autocomplete .options,
.search-menu .autocomplete .laybuy-widget,
.search-menu .autocomplete .quickview {
  display: none;
}
.search-menu .autocomplete .item figure,
.search-menu .autocomplete h4,
.search-menu .autocomplete .reviews,
.search-menu .autocomplete .pricing {
  display: block;
  font-size: 1rem;
}
.search-menu .autocomplete .item {
  margin-top: 0;
}
.search-menu .autocomplete .item figure {
  position: relative;
  margin: 0 0.5rem 0 0;
  width: 50px;
  float: left;
}
.search-menu .autocomplete .item figure a {
  display: block;
}
.search-menu .autocomplete .item figure img {
  height: auto;
  display: block;
  max-width: 100%;
}
.search-menu .autocomplete .item-detail {
  display: flex;
  flex-direction: row;
  float: right;
  width: 78%;
  border: none;
  margin: 0;
  text-align: left;
}
.search-menu .autocomplete h4 {
  width: 64%;
  text-align: left;
  margin-top: 0;
  font-weight: 600;
}
.search-menu .autocomplete h4 a {
  margin: 0;
  color: #000;
  font-size: 0.875rem;
}
.search-menu .autocomplete .pricing {
  width: 36%;
  text-align: right;
}
.search-menu .autocomplete .search-suggestions-wrapper {
  margin-bottom: 0;
  border-width: 0 1px;
}
.search-menu .autocomplete .search-suggestions-wrapper:before, .search-menu .autocomplete .search-suggestions-wrapper:after {
  content: "";
  display: table;
}
.search-menu .autocomplete .search-suggestions-wrapper:after {
  clear: both;
}
.search-menu .autocomplete .search-suggestions-wrapper h3 {
  padding: 0 0.5rem;
}
.search-menu .autocomplete .search-suggestions-wrapper h3, .search-menu .autocomplete .search-suggestions-wrapper p {
  margin: 0;
}
.search-menu .autocomplete .search-suggestions-wrapper ul {
  display: flex;
  flex-wrap: wrap;
}
.search-menu .autocomplete .search-suggestions-wrapper li {
  width: 100%;
  margin-bottom: 0;
  padding: 0.5rem;
  border-bottom-width: 1px;
}
.search-menu .autocomplete .search-suggestions-wrapper li:last-of-type {
  margin-bottom: 0;
}
.search-menu .autocomplete .search-suggestions-wrapper li:hover {
  background: #f6f5f4;
}
.search-menu .autocomplete .search-suggestions-wrapper li[tabindex].active {
  outline: 1px solid #000;
  outline-offset: -1px;
}
.search-menu .autocomplete .thumbnail {
  float: left;
  margin: 0 0.5rem 0 0;
}
.search-menu .autocomplete .thumbnail img {
  width: 30px;
}
.search-menu .autocomplete .view-all li {
  padding: 0.5rem;
}
.search-menu .autocomplete .view-all li:hover {
  background: #fff;
}
.search-menu .autocomplete .view-all a {
  text-align: center;
  display: block;
}
.search-menu .autocomplete .articles h4 {
  width: auto;
  float: none;
  font-size: 1.25rem;
  color: #000;
}
.search-menu .autocomplete .products {
  padding-bottom: 0;
}
.search-menu .autocomplete .products h3 {
  display: none;
}
.search-menu .autocomplete .suggestions {
  display: none;
}
.search-menu .autocomplete .suggestions li {
  cursor: pointer;
}
.search-menu form.fetching-data .searchterm {
  background: #fff url("ajax-loader.gif") no-repeat;
  background-position-y: center;
  background-position-x: 97%;
}
.search-menu ol {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  width: 100%;
  padding: 0;
  margin: 0;
}
.search-menu ol > li {
  margin-bottom: 0;
  width: auto;
}
.search-menu .form-item-searchterm {
  flex-grow: 1;
  position: relative;
}
.search-menu .form-item-searchsubmit {
  margin-left: auto;
}
.search-menu .searchterm {
  color: #adb5bd;
  border-color: transparent;
  background-color: transparent !important;
}
.search-menu .eso-typeahead {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-color: #fff;
  border-color: transparent;
}
.search-menu .eso-typeahead[readonly] {
  background-color: inherit;
}
.search-menu .icon-search {
  display: block;
  background: url(sprite.png) -2px -148px no-repeat;
  background-size: 30px;
  width: 24px;
  height: 24px;
}
.search-menu input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}
.search-menu.in {
  margin-bottom: 1rem;
}

@media (max-width: 767.98px) {
  .header-search .btn-search {
    --bs-btn-border-color: transparent;
    --bs-btn-bg: $white;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-hover-bg: $white;
    --bs-btn-active-border-color: transparent;
    --bs-btn-active-bg: $white;
  }
}
@media (min-width: 768px) {
  .header-search {
    position: relative;
    float: right;
    width: 300px;
    margin: 0 0 1.5rem;
  }
}
@media (min-width: 992px) {
  .header-search {
    width: 400px;
  }
}
@media (max-width: 991.98px) {
  .mobile-triggers {
    float: right;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.25rem;
    margin-left: auto;
  }
  .mobile-triggers a, .mobile-triggers button {
    padding: 0;
    line-height: 1;
    float: left;
    height: 57px;
    background: url(sprite.png) 0 -4px no-repeat;
    background-size: 40px;
    width: 57px;
    margin: 0;
    display: block;
    position: relative;
  }
  .mobile-triggers .icon-menu {
    background-color: #000;
    background-position: 15px 11px;
    background-size: 26px;
  }
  .mobile-triggers .icon-search {
    width: 40px;
    background-position: 12px -132px;
    background-size: 30px;
  }
  .mobile-triggers .icon-currency {
    background-position: 0 -317px;
    display: none;
  }
  .mobile-triggers .icon-cart {
    width: 50px;
    background-position: 14px -28px;
    background-size: 26px;
  }
  .mobile-triggers .badge {
    position: absolute;
    right: -4px;
    top: 4px;
    color: #000;
  }
  .mobile-trigger {
    position: absolute;
    right: 0;
    width: 40px;
    top: 0;
    height: 40px;
    color: #fff;
    cursor: pointer;
    z-index: 5;
    background: url(sprite.png);
    background-size: 28px;
    background-position: 52% -523px;
    background-repeat: no-repeat;
  }
  li.active > a + .mobile-trigger {
    background-position: 52% -395px;
  }
}
@media (min-width: 992px) {
  #page-header .mobile-triggers,
  #page-header .mobile-trigger {
    display: none;
  }
}
/* ========= HEADER COMPONENT END ========= */

/* ========= LEFT NAV COMPONENT ========= */
.cataloguepage .left-nav .menu.dynamic li, .searchpage .left-nav .menu.dynamic li, .infopage .left-nav .menu.dynamic li {
  display: none;
}
.cataloguepage .left-nav .left-nav-container .menu > ul > li.on > a, .cataloguepage .left-nav .left-nav-container .menu li.on > span, .searchpage .left-nav .left-nav-container .menu > ul > li.on > a, .searchpage .left-nav .left-nav-container .menu li.on > span, .infopage .left-nav .left-nav-container .menu > ul > li.on > a, .infopage .left-nav .left-nav-container .menu li.on > span {
  font-weight: 700;
  border-bottom-width: 1px;
  padding-bottom: 0.5rem;
  display: block;
  text-transform: uppercase;
  color: #000;
}
.cataloguepage .left-nav .menu li.on, .cataloguepage .left-nav .menu li.on li, .searchpage .left-nav .menu li.on, .searchpage .left-nav .menu li.on li, .infopage .left-nav .menu li.on, .infopage .left-nav .menu li.on li {
  display: block;
}

#left-nav {
  padding: 0;
  font-size: 0.875rem;
}
#left-nav .content {
  margin-bottom: 0.5rem;
}
#left-nav .left-nav-container {
  display: none;
}
#left-nav h3 {
  cursor: pointer;
  margin: 0;
  padding-bottom: 1rem;
}
#left-nav h3, #left-nav h4 {
  text-transform: uppercase;
  font-weight: 600;
  font-size: 0.875rem;
}
#left-nav .menu {
  display: none;
  margin-bottom: 1rem;
  padding: 0 1rem 0 0;
  background-color: #f6f5f4;
}
#left-nav .menu ul {
  padding: 0;
}
#left-nav .menu li {
  padding: 0.25rem 0 0;
}
#left-nav .menu > ul {
  padding: 0;
}
#left-nav .menu > ul > li {
  padding: 0;
}
#left-nav .menu > ul > li > a {
  border: none;
  font-size: 0.875rem;
  text-transform: capitalize;
  margin-bottom: 0.5rem;
  display: block;
  text-decoration: none;
}
#left-nav .menu > ul > li > ul {
  margin-left: 1rem;
}
#left-nav .menu > ul > li > ul > li {
  padding: 0;
  margin-bottom: 0.5rem;
}
#left-nav .menu > ul > li > ul > li > ul {
  display: none;
}
#left-nav .menu > ul li.on > a {
  font-weight: 700;
}
#left-nav .menu ul ul li > ul {
  margin-left: 1rem;
}
#left-nav .menu ul li li.on > a {
  font-weight: 700;
  color: #000;
}
#left-nav .filter-by {
  font-family: "OpenSans", sans-serif;
  font-weight: normal;
}

@media (min-width: 768px) {
  .cataloguepage #left-nav {
    margin-top: 1rem;
  }
  .accountpage #left-nav .menu.dynamic {
    padding: 1rem;
  }
  .infopage #left-nav .menu.dynamic {
    padding: 0.5rem 1rem;
  }
  #left-nav {
    width: 28%;
    float: left;
    margin-left: 0;
    margin-right: 6%;
    font-size: 0.875rem;
    font-weight: normal;
  }
  #left-nav h3 {
    font-size: 0.875rem;
    border-bottom: none;
  }
  #left-nav .menu {
    padding: 1rem 1rem 0.5rem 1rem;
    display: block;
  }
  #left-nav .menu > ul > li.on > a {
    font-size: 0.875rem;
  }
  #left-nav .filter-by .filter:last-child {
    border-bottom-width: 0;
  }
  #left-nav .filters {
    display: block;
    border-top: none;
    border-bottom: none;
    margin-bottom: 1rem;
    padding: 1rem;
    background-color: #f6f5f4;
  }
  #left-nav .filters > .collapse {
    display: block;
    visibility: visible;
    height: auto !important;
  }
  #left-nav .filters .sort-by {
    display: none;
  }
  #left-nav .filters .filter-wrapper {
    padding: 0;
    border: 0;
    margin: 0;
  }
  #left-nav .filters .info-container .sort-by > h2,
  #left-nav .filters .info-container .filter-by > h2 {
    display: block;
  }
  #left-nav .filters .show-more-trigger {
    text-decoration: underline;
    cursor: pointer;
  }
  #left-nav .filters .show-more-trigger:hover {
    color: #9b9d9d;
  }
  #left-nav .left-nav-container {
    padding: 0;
    display: flex;
    flex-direction: column;
  }
}
@media (min-width: 992px) {
  #left-nav {
    width: 22%;
  }
}
@media (min-width: 768px) and (max-width: 1199.98px) {
  #left-nav .content.nav-middle {
    display: none;
  }
}
/* ========= LEFT NAV COMPONENT END ========= */

/* ========= FOOTER COMPONENT ========= */
#page-footer {
  background-color: #000;
}
#page-footer .page-footer-container:before, #page-footer .page-footer-container:after {
  content: "";
  display: table;
}
#page-footer .page-footer-container:after {
  clear: both;
}

#footer-nav {
  padding-top: 20px;
}

.footer-nav-container ul {
  list-style: none;
  padding-left: 0;
}
.footer-nav-container > ul {
  border-top-width: 1px;
}
.footer-nav-container > ul > li {
  padding: 5px 0;
  position: relative;
}
.footer-nav-container > ul > li:last-of-type {
  border-bottom-width: 1px;
}
.footer-nav-container > ul > li > a, .footer-nav-container > ul > li > span {
  text-transform: uppercase;
}
.footer-nav-container li a, .footer-nav-container li span {
  display: inline-block;
  padding: 5px 0;
  color: #fff;
}
.footer-nav-container li span {
  cursor: pointer;
}
.footer-nav-container .eso-accordion-indicator {
  left: auto;
  top: -3px;
}
.footer-nav-container .eso-accordion-indicator::after {
  background-size: 31px;
  background-position: 50% -484px;
}
.footer-nav-container .eso-accordion > li > span, .footer-nav-container .eso-accordion > li > a {
  font-weight: 600;
  width: 100%;
  font-size: 15px;
  letter-spacing: 1px;
}
.footer-nav-container .eso-accordion li ul li a {
  color: #fff;
  font-size: 15px;
  padding-bottom: 14px;
  letter-spacing: 1px;
  text-decoration: none;
  font-family: "OpenSans", sans-serif;
  font-weight: normal;
}
.footer-nav-container .eso-accordion-contents {
  margin-left: 19px;
  padding-top: 10px;
}

#page-footer .estar {
  background-color: #f6f5f4;
  border-bottom: 1px solid #000;
}
#page-footer .estar .container {
  display: flex;
  flex-direction: column;
  text-align: center;
  margin-top: 20px;
  padding: 20px 0;
  border-top-width: 1px;
  font-size: 0.875rem;
}
#page-footer .estar .container a {
  color: #9b9d9d;
}
#page-footer .estar .container:before, #page-footer .estar .container:after {
  content: "";
  display: table;
}
#page-footer .estar .container:after {
  clear: both;
}
#page-footer .estar .container .estar-info {
  order: 2;
}
#page-footer .estar .container .estar-info li {
  display: block;
}
#page-footer .estar .container .estar-info li:last-of-type {
  font-weight: normal;
}
#page-footer .estar .container .footer-nav-container {
  margin-bottom: 13px;
  order: 1;
}
#page-footer .estar .container .footer-nav-container .eso-accordion li:last-of-type {
  margin-right: 0px;
}
#page-footer .estar .container .footer-nav-container .eso-accordion li a {
  font-size: 12px;
}
#page-footer .estar .container .footer-nav-container li:first-of-type {
  border-right: 1px solid;
  border-bottom: none;
}
#page-footer .estar .container ul {
  margin-bottom: 0;
  border: none;
}
#page-footer .estar .container ul:before, #page-footer .estar .container ul:after {
  content: "";
  display: table;
}
#page-footer .estar .container ul:after {
  clear: both;
}
#page-footer .estar .container ul li {
  width: auto;
  margin-right: 10px;
  padding-right: 10px;
  padding-top: 0px;
  padding-bottom: 0px;
  color: #9b9d9d;
  font-weight: 600;
  display: inline-block;
}
#page-footer .estar .container ul li:last-of-type {
  border: none;
}
#page-footer .estar .container ul li a {
  padding: 0px;
  color: #9b9d9d;
  text-decoration: none;
}

@media (min-width: 768px) {
  #page-footer #footer-nav {
    padding: 30px 0;
    float: left;
    width: 66.6%;
  }
  #page-footer .footer-nav-container {
    width: 100%;
  }
  #page-footer .footer-nav-container > ul {
    border-top-width: 0;
    margin: 0;
  }
  #page-footer .footer-nav-container .eso-accordion li ul li a {
    color: #fff;
    font-size: 12px;
    padding: 5px 0px;
    text-decoration: none;
  }
  #page-footer .footer-nav-container .eso-accordion li ul li a:hover {
    color: #9b9d9d;
  }
  #page-footer .footer-nav-container .collapse.eso-accordion {
    display: block;
    visibility: visible;
    height: auto !important;
  }
  #page-footer .footer-nav-container .collapsing.eso-accordion {
    height: auto !important;
  }
  #page-footer .footer-nav-container > ul > li {
    width: 25%;
    float: left;
    border: 0;
    margin-right: 58px;
    padding-top: 0;
  }
  #page-footer .footer-nav-container > ul > li span {
    cursor: default;
    padding-top: 0;
    font-size: 14px;
    font-weight: bold;
  }
  #page-footer .footer-nav-container > ul > li .eso-accordion-indicator {
    display: none;
  }
  #page-footer .footer-nav-container .eso-accordion-contents {
    margin-left: 0;
    padding-top: 0;
  }
  #page-footer .estar .container {
    display: block;
    text-align: right;
  }
  #page-footer .estar .container .estar-info {
    float: left;
  }
  #page-footer .estar .container ul li a:hover {
    text-decoration: underline;
    color: #9b9d9d;
  }
  #page-footer .estar .container .footer-nav-container {
    float: right;
    width: auto;
    margin-bottom: 0;
  }
  #page-footer .estar .container .footer-nav-container .eso-accordion li a {
    font-size: 12px;
  }
  #page-footer .estar .container ul li {
    float: left;
    border-right: 1px solid #9b9d9d;
  }
}
@media (min-width: 1200px) {
  .footer-nav-container, #page-footer .content {
    padding: 0;
  }
}
/* ========= FOOTER COMPONENT END ========= */
/* ========= CATALOGUE LISTING COMPONENT ========= */
.cataloguepage .page-numbers:before, .cataloguepage .page-numbers:after {
  content: "";
  display: table;
}
.cataloguepage .page-numbers:after {
  clear: both;
}
.cataloguepage .page-numbers p {
  display: none;
}
.cataloguepage .page-numbers p, .cataloguepage .page-numbers ul {
  float: left;
}
.cataloguepage .products .item .style-number,
.cataloguepage .products .item .quickview,
.cataloguepage .products .item .options {
  display: none;
}

.featured {
  clear: both;
  margin-top: 15px;
  padding-top: 15px;
  border-bottom-width: 1px;
  border-top-width: 1px;
}
.featured .item {
  margin-top: 0;
}
.featured h2 {
  font-size: 1.25rem;
}

.item figure img {
  display: block;
  height: auto;
  max-width: 100%;
}
.item h2 {
  font-size: 0.875rem;
}
.item h4 {
  margin: 0.5rem 0;
  font-size: 0.875rem;
}
.item h4 a {
  font-size: inherit;
  text-decoration: none;
}
.item h2, .item h4 {
  color: #000;
  font-weight: normal;
}
.item .item-brand {
  position: absolute;
  right: 0;
  top: -45px;
  height: 30px;
  text-indent: -9999px;
}
.item .item-brand img {
  height: 100%;
  display: block;
}
.item .options {
  clear: both;
}
.item .options .add-wishlist {
  display: none;
}
.item .options a + a {
  margin-left: 10px;
}
.item .item-asset {
  clear: both;
}
.item .quickview, .item .buy-now {
  display: none;
}
.item .buy-now button, .item .quickview .btn, .item .options a {
  width: 100%;
}
.item .colours {
  display: none;
}
.item .price {
  font-size: 0.875rem;
  font-weight: 700;
  margin-bottom: 1px;
}
.item .price.was {
  padding-right: 6px;
}
.item .reviews {
  margin-top: 5px;
}
.item .reviews:empty {
  display: none;
}
.item .style-number {
  display: none;
}
.item .compare {
  margin-top: 0px;
}
.item .compare .compare-link-view {
  display: none;
  text-transform: inherit;
}
.item .compare .compare-link-add {
  text-decoration: underline;
  font-family: "OpenSans", sans-serif;
  font-size: 12px;
  text-transform: inherit;
}
.item .item-detail {
  text-align: center;
  border-top: 1px solid #e5e5e5;
  margin-top: 0.5rem;
  display: flex;
  flex-direction: column;
}
.item .item-detail .item-brand {
  order: 1;
}
.item .item-detail h2 {
  order: 5;
}
.item .item-detail .style-number {
  order: 10;
}
.item .item-detail .offer {
  order: 9;
}
.item .item-detail .pricing {
  order: 15;
}
.item .item-detail .reviews {
  order: 20;
}
.item .item-detail .colours {
  order: 25;
}
.item .item-detail .buy-now {
  order: 30;
}
.item .item-detail .quickview {
  order: 35;
}
.item .item-detail .options {
  order: 40;
}
.item .item-detail .more-options {
  order: 43;
}
.item .item-detail .compare {
  order: 45;
}
.item .item-detail .item-asset {
  order: 50;
}

.main .products {
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
.main .products:before, .main .products:after {
  content: "";
  display: table;
}
.main .products:after {
  clear: both;
}
.main .products .item {
  width: 45%;
  float: left;
  margin-left: 10%;
  margin-bottom: 0.5rem;
}
.main .products .item .overlay.bottom-horizontal {
  width: 59%;
}
.main .products .item .overlay.top-horizontal {
  width: 67%;
}
.main .products .item .top-horizontal, .main .products .item .bottom-horizontal {
  width: 36%;
}
.main .products .item .bottom-horizontal.small-overlay {
  width: 30%;
}
.main .products .item .more-options {
  margin: 0.25rem 0;
}
.main .products .item .more-options a {
  font-size: 12px;
  text-decoration: underline;
  font-family: "OpenSans", sans-serif;
}
.main .products .item .offer {
  font-size: 12px;
}
.main .products .item .offer a {
  text-decoration: none;
}
.main .products .item:nth-of-type(2n+1) {
  clear: both;
  margin-left: 0%;
}
.main .products .next_link {
  clear: both;
}

.loading-message {
  text-align: center;
  width: 100%;
  clear: both;
  display: none;
}
.loading-message span {
  display: inline-block;
  padding-left: 30px;
  background: url("ajax-loader.gif") 0 0 no-repeat;
}

.next_link + .loading_message {
  display: block;
}

.autoscroll .page_numbers {
  display: none;
}

@media (min-width: 768px) {
  .cataloguepage main .content {
    margin-bottom: 1rem;
  }
  .cataloguepage main .content:before, .cataloguepage main .content:after {
    content: "";
    display: table;
  }
  .cataloguepage main .content:after {
    clear: both;
  }
  .cataloguepage #page-content {
    padding-top: 1rem;
  }
}
@media (min-width: 1200px) {
  .main .products .item {
    padding: 1rem;
    margin-left: 5%;
    border: 1px solid #fff;
    border-radius: 0;
    width: 30%;
  }
  .main .products .item:nth-of-type(2n+1) {
    clear: none;
    margin-left: 5%;
  }
  .main .products .item:nth-of-type(3n+1) {
    clear: both;
    margin-left: 0%;
  }
}
/* ========= FILTERS  ========= */
.filters {
  position: relative;
  font-size: 0.875rem;
}
.filters ul {
  list-style: none;
  padding-left: 0;
}
.filters li {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  position: relative;
}
.filters a {
  color: #000;
  text-decoration: none;
}
.filters a:hover {
  color: #9b9d9d;
}
.filters a + ul {
  padding-left: 0.5rem;
}
.filters a .title {
  vertical-align: middle;
}
.filters .count {
  display: none;
}
.filters .applied .count {
  display: inline-block;
}
.filters .count a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  font-size: 0;
  text-align: right;
  text-indent: -9999px;
}
.filters .count a::after {
  content: "\00D7";
  text-indent: 0;
  display: inline-block;
  font-size: 1.5rem;
  width: 1em;
  height: 1em;
  line-height: 1;
  vertical-align: middle;
  text-align: center;
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
.filters .filter li > *:first-child:where(:is(a, span))::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 1em;
  vertical-align: middle;
  border: 1px solid var(--bs-gray-700);
}
.filters .filter li.on > *::before,
.filters .filter li > *:hover::before {
  border-color: var(--bs-black);
  background-color: var(--bs-black);
  vertical-align: -2px;
}
.filters .single-selection .filter-aspect > *::before {
  border-radius: 50%;
}
.filters *[data-bs-toggle]:not(.btn-show-more) {
  position: relative;
  padding-right: 40px;
}
.filters *[data-bs-toggle]:not(.btn-show-more)::after {
  content: "";
  position: absolute;
  display: block;
  width: 40px;
  height: 40px;
  top: 0;
  right: 0;
  background-image: url(sprite.png);
  background-size: 27px;
  background-repeat: no-repeat;
  background-position: 50% -504px;
  transform: rotate(180deg);
}
.filters *[data-bs-toggle]:not(.btn-show-more).collapsed::after {
  transform: rotate(0);
}
.filters [data-bs-toggle] {
  cursor: pointer;
}
.filters h4 {
  display: block;
  text-align: left;
  text-transform: uppercase;
  font-size: 1rem;
  font-weight: 600;
  margin: 0;
  padding: 0.75rem 0;
}
.left-nav .filters h4 {
  padding-top: 0.75rem;
}
.filters li.grouped.on:not(.applied) {
  color: #9b9d9d;
}
.filters li.grouped.on:not(.applied) a {
  color: #9b9d9d;
  pointer-events: none;
}
.filters li.grouped.on:not(.applied) > * ::before {
  border-color: #ced4da;
  background-color: #ced4da;
}
.filters li.limited-list-overflow, .filters li.limited-list-overflow > ul {
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}
.filters .limited-list-toggle {
  width: 100%;
}
.filters .btn-show-more {
  text-align: left;
}
.filters .btn-show-more:not(.collapsed) .show-more-text {
  display: none;
}
.filters .btn-show-more.collapsed .show-less-text {
  display: none;
}
.filters .filter-by .filter ul.scroll-list {
  overflow-y: auto;
  max-height: 200px;
  margin-bottom: 1rem;
}
.filters .filter {
  border-bottom: 1px solid #e5e5e5;
}
.filters .filter.range .filter-aspect {
  font-size: 0.75rem;
}
.filters .aspect-value-image {
  display: inline-block;
}
.filters .aspect-value-image img {
  display: block;
  height: 30px;
  width: auto;
}
.filters .aspect-value-image:has(img) + span {
  margin-left: 0.4em;
}
.filters .filter.tile ul, .filters .filter.image:has([data-aspect-name=Colour]) ul {
  display: flex;
  flex-wrap: wrap;
  padding: 0 !important;
}
.filters .filter.tile .filter-aspect, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect {
  padding: 0 !important;
}
.filters .filter.tile .filter-aspect > *:is(a, span), .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect > *:is(a, span) {
  margin: 0.25rem;
  padding: 0.25rem;
  border: 1px solid #e5e5e5;
}
.filters .filter.tile .filter-aspect > *:is(a, span)::before, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect > *:is(a, span)::before {
  display: none;
}
.filters .filter.tile .filter-aspect.on > *:is(a, span), .filters .filter.tile .filter-aspect:hover > *:is(a, span), .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect.on > *:is(a, span), .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect:hover > *:is(a, span) {
  border-color: #000;
}
.filters .filter.tile .filter-aspect a + ul, .filters .filter.tile .filter-aspect span.active + ul, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect a + ul, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect span.active + ul {
  padding-left: 0;
}
.filters .filter.tile .filter-aspect a, .filters .filter.tile .filter-aspect .active, .filters .filter.tile .filter-aspect .title, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect a, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect .active, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect .title {
  display: block;
}
.filters .filter.tile .filter-aspect .count, .filters .filter.tile .filter-aspect .count::after, .filters .filter.tile .filter-aspect .count::before, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect .count, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect .count::after, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect .count::before {
  display: none;
}
.filters .filter.tile .filter-aspect.grouped:has(ul), .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect.grouped:has(ul) {
  width: 100%;
}
.filters .filter.tile .filter-aspect.on .active, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect.on .active {
  position: relative;
  border-color: #000;
}
.filters .filter.tile .filter-aspect.on .active .count, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect.on .active .count {
  display: block;
}
.filters .filter.tile .filter-aspect.on .active .count a, .filters .filter.image:has([data-aspect-name=Colour]) .filter-aspect.on .active .count a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  padding: 0;
  margin: 0;
  background: none;
}
.filters .filter:has([data-aspect-name=Colour]) .aspect-value-image img {
  width: 30px;
}
.filters .filter:has([data-aspect-name=Colour]).image .filter-aspect > *:is(a, span) {
  padding: 1px;
}
.filters .filter:has([data-aspect-name=Colour]).image .aspect-value-image {
  display: block;
}
.filters .filter.image:not(:has([data-aspect-name=Colour])) li > *:first-child:where(:is(a, span)), .filters .filter.image:not(:has([data-aspect-name=Colour])) .active, .filters .filter.image:not(:has([data-aspect-name=Colour])) .title, .filters .filter.image:not(:has([data-aspect-name=Colour])) .count, .filters .filter.imagetext li > *:first-child:where(:is(a, span)), .filters .filter.imagetext .active, .filters .filter.imagetext .title, .filters .filter.imagetext .count {
  display: flex;
  align-items: center;
}
.filters .filter.image:not(:has([data-aspect-name=Colour])) li > *:first-child:where(:is(a, span))::before, .filters .filter.image:not(:has([data-aspect-name=Colour])) .active::before, .filters .filter.image:not(:has([data-aspect-name=Colour])) .title::before, .filters .filter.image:not(:has([data-aspect-name=Colour])) .count::before, .filters .filter.imagetext li > *:first-child:where(:is(a, span))::before, .filters .filter.imagetext .active::before, .filters .filter.imagetext .title::before, .filters .filter.imagetext .count::before {
  flex-shrink: 0;
}
.filters .filter.image:not(:has([data-aspect-name=Colour])) .title, .filters .filter.image:not(:has([data-aspect-name=Colour])) .count, .filters .filter.imagetext .title, .filters .filter.imagetext .count {
  display: inline-block;
}
.filters .filter.image:not(:has([data-aspect-name=Colour])) .title, .filters .filter.imagetext .title {
  flex-grow: 1;
}
.filters .filter.image:not(:has([data-aspect-name=Colour])) .filter-aspect.on .active .title, .filters .filter.image:not(:has([data-aspect-name=Colour])) .filter-aspect.on .active .count, .filters .filter.imagetext .filter-aspect.on .active .title, .filters .filter.imagetext .filter-aspect.on .active .count {
  display: flex;
  align-items: center;
}
.filters .price-fields li {
  margin-bottom: 0;
}
.filters .filter-aspect.slider {
  width: 100%;
  padding: 0.5rem;
}
.filters .filter-aspect.slider ul {
  display: flex;
  justify-content: space-between;
  margin: 0 -0.5rem 1rem;
}
.filters .filter-aspect.slider .slider-container {
  margin: 1rem 0;
}
.filters .filter-aspect.slider .noUi-target {
  box-shadow: none;
  border: none;
  border-radius: 0;
}
.filters .filter-aspect.slider .noUi-horizontal {
  height: 2px;
}
.filters .filter-aspect.slider .noUi-connect {
  background: #000;
}
.filters .filter-aspect.slider .noUi-connects {
  border-radius: 0;
}
.filters .filter-aspect.slider .noUi-handle {
  border-radius: 50%;
  background: #000;
  box-shadow: none;
  border: none;
  width: 20px;
  height: 20px;
  top: -9px;
  right: -10px;
}
.filters .filter-aspect.slider .noUi-handle::before, .filters .filter-aspect.slider .noUi-handle::after {
  content: "";
  display: none;
}
.invalid-filter-combination .filters {
  width: 100% !important;
}
.invalid-filter-combination .filters .filter-by {
  width: 100%;
}
.invalid-filter-combination .filters .filter-wrapper {
  width: 100% !important;
}

.toolbar .filters {
  display: block;
}
.toolbar .result-summary {
  display: none;
}
.toolbar .filter-by, .toolbar .sort-by {
  display: inline-block;
  position: relative;
  width: 48%;
}
.toolbar .filter-by {
  margin-left: 4%;
  position: static;
  border: 1px solid #000;
}
.toolbar h3 {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 0;
  padding: 0.5rem 2.5rem 0.5rem 0.5rem;
}
.toolbar [data-bs-toggle]::after {
  top: -3px;
}
.toolbar .filter-by .filter-wrapper {
  position: absolute;
  width: calc(100% + 2px);
  left: -1px;
  background-color: #fff;
  z-index: 4;
  border-width: 1px;
  padding: 0 0.5rem;
  margin-top: 1rem;
}
.toolbar .filters {
  margin: 1rem 0;
}
.toolbar .filters li {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.toolbar .sort-by .sort-label {
  display: none;
}
.toolbar .sort-by .filter {
  border-bottom: none;
}
.toolbar .sort-by .filter li {
  padding-top: 0;
  padding-bottom: 0;
}

.left-nav:has(.customised-filters) .menu.dynamic {
  display: none !important;
}
.left-nav .menu.dynamic > ul > li.on.no-children {
  display: none;
}
.left-nav .filters {
  border-width: 0;
  margin-bottom: 1rem;
  padding: 0 1rem;
  position: relative;
  width: 100%;
}
.left-nav .filters h3 {
  margin: 1rem 0;
  pointer-events: none;
}
.left-nav .filters h3::after {
  display: none !important;
}
.left-nav .filters h3 + .collapse {
  display: block;
  visibility: visible;
  height: auto !important;
}
.left-nav .filters .sort-by {
  display: none;
}
.left-nav .filters .filter {
  margin-bottom: 0;
  position: relative;
  border-bottom: 1px solid #ced4da;
}
.left-nav .filters .filter:first-of-type {
  border-top: 1px solid #ced4da;
}
.left-nav .filters .filter ul li:last-child {
  padding-bottom: 0.5rem;
}
.left-nav .filters .filter:last-child {
  border-bottom-width: 1px;
}

.active-filters {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.5rem;
  clear: both;
}
.active-filters .filter-title {
  align-self: center;
}
.active-filters .filter-title h4 {
  font-weight: 700;
  font-size: 0.875rem;
  margin-bottom: 0;
}
.active-filters ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
}
.active-filters li {
  margin: 0.25rem;
}
.active-filters a {
  display: flex;
  align-items: center;
  font-size: 12px;
  color: #000;
  background-color: #f6f5f4;
  padding: 0.25rem 0.25rem 0.25rem 0.5rem;
  text-decoration: none;
  border-width: 0;
}
.active-filters a::after {
  content: "\00D7";
  display: inline-block;
  font-size: 1.25rem;
  line-height: 1;
  width: 1em;
  height: 1em;
  vertical-align: middle;
  text-align: center;
  margin-left: 0.25rem;
}
.active-filters a:hover:after {
  color: #9b9d9d;
}
.active-filters .clear-all a {
  text-decoration: underline;
  background: none;
}
.active-filters .clear-all a::after {
  content: none;
}
.active-filters .clear-all a:hover {
  color: #9b9d9d;
}
.active-filters .filter-type {
  display: none;
  font-size: smaller;
  font-weight: bold;
}
.active-filters .filter-type::after {
  content: ":";
  display: inline-block;
  margin-left: -0.2em;
  margin-right: 0.4em;
}

@media (min-width: 768px) {
  .toolbar {
    margin-bottom: 1rem;
  }
  .toolbar:before, .toolbar:after {
    content: "";
    display: table;
  }
  .toolbar:after {
    clear: both;
  }
  .toolbar .filters {
    float: left;
    margin: 0 0 1rem;
    justify-content: flex-end;
  }
  .toolbar .sort-by {
    display: flex;
    align-items: center;
    width: auto;
  }
  .toolbar .sort-by .sort-label {
    display: block;
    padding: 0 0.5rem 0 0;
  }
  .toolbar .sort-by .filter {
    width: 180px;
  }
  .toolbar .filter-by {
    display: none;
  }
}
/* ========= FILTERS END ========= */
/* ========= CATALOGUE LISTING COMPONENT END ========= */

/* ========= SEARCH COMPONENT ========= */
.searchpage .did-you-mean {
  font-weight: 700;
}
.searchpage .zero-results ul a {
  display: inline-block;
}
.searchpage .search-info {
  margin-bottom: 1rem;
}
.searchpage .popular {
  margin-bottom: 1rem;
}
.searchpage .alphabet-links {
  border-bottom-width: 1px;
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.searchpage .alphabet-links a {
  display: inline-block;
  padding: 6px;
}
.searchpage main .products > h3 {
  display: none;
}
.searchpage .articles .item a {
  width: 100%;
  display: block;
  padding: 10px;
  margin: 5px auto;
  font-weight: bold;
  border-width: 1px;
  text-align: center;
}
.searchpage .nav-tabs {
  clear: both;
}
.searchpage .nav-tabs .nav-link {
  text-transform: uppercase;
  --bs-nav-link-color: var(--bs-gray-600);
  --bs-nav-link-font-weight: 700;
}
.searchpage .tab-content {
  border-top: 1px solid var(--bs-gray-600);
}
.searchpage .related a {
  text-decoration: underline;
}

@media (min-width: 768px) {
  .searchpage #left-nav {
    display: none;
  }
  .searchpage .tab-content #left-nav {
    padding-bottom: 0;
    display: block;
  }
  .searchpage .tab-content #left-nav p:empty {
    display: none;
  }
  .searchpage #page-content {
    padding-bottom: 34px;
  }
  .searchpage .toolbar.top {
    margin-bottom: 0;
  }
  .searchpage .toolbar.top .active-filters {
    margin-bottom: 1rem;
  }
  .searchpage .toolbar .page-numbers {
    position: absolute;
    right: 0;
  }
  .searchpage .toolbar.top .page-numbers {
    top: 30px;
  }
  .searchpage .toolbar.bottom .page-numbers {
    bottom: 8px;
  }
  .searchpage .articles {
    padding: 20px 0;
  }
  .searchpage .articles .item {
    width: 24%;
    margin: 0.5%;
    vertical-align: top;
    display: inline-block;
  }
  .searchpage .articles .item:nth-child(4n) {
    clear: left;
  }
  .searchpage #page-content {
    width: 100%;
  }
  .searchpage main .products, .searchpage .toolbar.top {
    width: 66%;
    float: right;
  }
  .searchpage .related {
    margin-bottom: 25px;
  }
}
@media (min-width: 1200px) {
  .searchpage main .products, .searchpage .toolbar.top {
    width: 72%;
  }
}
/* ========= SEARCH COMPONENT END ========= */

/* ========= PRODUCT DETAIL COMPONENT ========= */
.product:before, .product:after, .alternate-images:before, .alternate-images:after, .reviews:before, .reviews:after, .product-detail .review:before, .product-detail .review:after, .review-group:before, .review-group:after, .cart-options:before, .cart-options:after, .additional-info-links:before, .additional-info-links:after {
  content: "";
  display: table;
}
.product:after, .alternate-images:after, .reviews:after, .product-detail .review:after, .review-group:after, .cart-options:after, .additional-info-links:after {
  clear: both;
}

.productpage {
  /* Hide elements moved by jquery and show them once they have loaded */
  /* product on site, not for sale */
}
.productpage h1, .productpage .product-availability-section, .productpage .additional-info, .productpage #freight-estimator, .productpage .delivery-options-section, .productpage .additional-info-links, .productpage .cart-options {
  opacity: 0;
  transition: opacity 1s ease;
}
.productpage.jqueryloaded h1, .productpage.jqueryloaded .product-availability-section, .productpage.jqueryloaded .additional-info, .productpage.jqueryloaded #freight-estimator, .productpage.jqueryloaded .delivery-options-section, .productpage.jqueryloaded .additional-info-links, .productpage.jqueryloaded .cart-options {
  opacity: 1;
}
.productpage h1 {
  text-align: center;
  margin-top: 1rem;
}
.productpage #page-content {
  width: 100%;
}
.productpage #left-nav {
  display: none;
}
.productpage .additional-info-links a {
  text-decoration: underline;
  font-size: 0.875rem;
}
.productpage .product.product-top .childproducts {
  clear: both;
}
.productpage .product.product-top .childproducts .form-item.quantity {
  float: none;
}
.productpage .product.product-top .childproducts #freight-estimator, .productpage .product.product-top .childproducts .delivery-options-section {
  display: none;
}
.productpage .product.product-top .childproducts .product-img {
  width: 100%;
  margin-right: 10%;
}
.productpage .product.product-top .childproducts .product-img:empty {
  display: none;
}
.productpage .product.product-top .childproducts .product-img .slick-prev:before {
  background-position: 0 -883px;
}
.productpage .product.product-top .childproducts .product-img .slick-next:before {
  background-position: 0 -947px;
}
.productpage .product.product-top .childproducts .offer {
  display: none;
}
.productpage .product.product-top .childproducts h2, .productpage .product.product-top .childproducts .availability {
  text-align: center;
}
.productpage .product.product-top .childproducts h2 a {
  text-decoration: none;
}
.productpage .product.product-top .childproducts .product-content {
  width: 100%;
  float: left;
  padding: 0px;
}
.productpage .product.product-top .childproducts .product-content .additional-options .add-wishlist {
  width: 100%;
}
.productpage .product.product-top .childproducts .product-content h2 {
  margin-bottom: 9px;
}
.productpage .product.product-top .childproducts .product-content h2 a, .productpage .product.product-top .childproducts .product-content h2 {
  color: #000;
  font-size: 16px;
  font-weight: 600;
}
.productpage .product.product-top .childproducts .product-img:empty + .product-content {
  width: 100%;
}
.productpage .product.product-top .childproducts .product-content .pricing .prices .price {
  font-size: 16px;
}
.productpage .product.product-top .childproducts .product {
  border: 1px solid #e5e5e5;
  margin: 5px 0 20px 0;
  padding: 20px;
}
.productpage .product.product-top .childproducts header {
  font-size: 18px;
  font-weight: bold;
  text-transform: uppercase;
}
.productpage .product.product-top .childproducts .reviews {
  display: none;
}
.productpage .product.product-top .childproducts .reviews .links {
  clear: both;
}
.productpage .product.product-top .childproducts .reviews .links a {
  margin: 0 10px 0 0;
}
.productpage .product.product-top .childproducts .reviews p {
  width: 100%;
}
.productpage .product.product-top .childproducts .delivery-options-section {
  display: none;
}
.productpage .product.product-top .childproducts #freight-estimator {
  display: none;
}
.productpage .product.product-top .childproducts .slick-prev, .productpage .product.product-top .childproducts .slick-next {
  top: 50%;
}
.productpage .product.product-top .childproducts .product-selector label {
  display: inline-block;
}
.productpage .product.product-top .childproducts .product-selector input {
  float: left;
}
.productpage .product-group .product-img {
  width: 100%;
}
.productpage .product-group .product-content {
  width: 100%;
}
.productpage .product-group .product-content .style-number {
  color: #9b9d9d;
  margin-bottom: 0;
  text-align: center;
}
.productpage .product-group .product-content > .style-number {
  display: none;
}
.productpage .product-group .product-availability-section {
  display: none;
}
.productpage .product-group #freight-estimator {
  display: none;
}
.productpage .product-group .delivery-options-section {
  border-bottom: none;
}
.productpage .product-group .add-to-cart .cart-options {
  padding-top: 0;
}
.productpage .product-group .childproducts .product-img {
  width: 100%;
  margin-right: 10%;
}
.productpage .product-group .childproducts .product-img:empty {
  display: none;
}
.productpage .product-group .childproducts .product-img .slick-prev:before {
  background-position: 0 -883px;
}
.productpage .product-group .childproducts .product-img .slick-next:before {
  background-position: 0 -947px;
}
.productpage .product-group .childproducts .offer {
  display: none;
}
.productpage .product-group .childproducts h2, .productpage .product-group .childproducts .availability {
  text-align: center;
}
.productpage .product-group .childproducts h2 a {
  text-decoration: none;
}
.productpage .product-group .childproducts .product-content {
  width: 100%;
  float: left;
  padding: 0px;
}
.productpage .product-group .childproducts .product-content .additional-options .add-wishlist {
  width: 100%;
}
.productpage .product-group .childproducts .product-content h2 {
  margin-bottom: 9px;
}
.productpage .product-group .childproducts .product-content h2 a, .productpage .product-group .childproducts .product-content h2 {
  color: #000;
  font-size: 18px;
  font-weight: 600;
}
.productpage .product-group .childproducts .product-img:empty + .product-content {
  width: 100%;
}
.productpage .product-group .childproducts .product-content .pricing .prices .price {
  font-size: 18px;
}
.productpage .product-group .childproducts .product {
  border: 1px solid #e5e5e5;
  margin: 5px 0 20px 0;
  padding: 20px;
}
.productpage .product-group .childproducts header {
  font-size: 18px;
  font-weight: bold;
  text-transform: uppercase;
}
.productpage .product-group .childproducts .reviews {
  display: none;
}
.productpage .product-group .childproducts .reviews .links {
  clear: both;
}
.productpage .product-group .childproducts .reviews .links a {
  margin: 0 10px 0 0;
}
.productpage .product-group .childproducts .reviews p {
  width: 100%;
}
.productpage .product-group .childproducts .delivery-options-section {
  display: none;
}
.productpage .product-group .childproducts #freight-estimator {
  display: none;
}
.productpage .product-group .childproducts .slick-prev, .productpage .product-group .childproducts .slick-next {
  top: 50%;
}
.productpage .product-group .childproducts .product-selector label {
  display: inline-block;
}
.productpage .product-group .childproducts .product-selector input {
  float: left;
}
.productpage.jqueryloaded .product.product-no-sale .delivery-options-section, .productpage.jqueryloaded .product.product-no-sale #freight-estimator {
  display: none;
}

.product-content {
  clear: both;
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding: 1.5rem;
  background-color: #f6f5f4;
  display: flex;
  flex-direction: column;
}
.product-content a {
  font-family: "OpenSans", sans-serif;
  font-weight: normal;
}
.product-content .style-number {
  color: #9b9d9d;
  text-align: center;
}
.product-content .form-item.size ul, .product-content .form-item.colour ul {
  margin-bottom: 0;
}
.product-content .form-item.size li.item-unselectable, .product-content .form-item.colour li.item-unselectable {
  background-color: #9b9d9d;
}
.product-content .form-item.size li.item-unselectable label, .product-content .form-item.colour li.item-unselectable label {
  cursor: not-allowed;
  background-color: #d9d9d9;
}
.product-content .form-item.size .selected span + span {
  display: none;
}
.product-content .form-item.colour .swatch-image {
  width: 20px;
  height: 20px;
  display: inline-block;
  vertical-align: bottom;
  margin-right: 0.5rem;
}
.product-content .form-item.colour .fake-select .selected span:first-child:empty {
  display: inline-block;
}
.product-content .form-item:not(.empty) {
  margin-bottom: 1rem;
}
.product-content .form-item:before, .product-content .form-item:after {
  content: "";
  display: table;
}
.product-content .form-item:after {
  clear: both;
}
.product-content .form-item ul {
  display: none;
}
.product-content .form-item .open ul {
  display: block;
}
.product-content .form-item .control-label {
  font-weight: normal;
}
.product-content .form-item.quantity {
  width: 34%;
  float: left;
  margin-right: 6%;
}
.product-content .form-item.quantity input {
  text-align: center;
}
.product-content .form-item.quantity label {
  display: none;
}
.product-content .form-item.cartbutton {
  width: 60%;
  margin-top: 1.5rem;
  float: left;
}
.product-content .form-item.cartbutton button.loading {
  background-image: url(button-ajax-loader.gif);
  background-repeat: no-repeat;
  background-position: 90% center;
}
.product-content .form-item.cartbutton, .product-content .additional-options {
  display: inline-block;
  margin: 0;
}
.product-content .form-item.cartbutton .add-wishlist, .product-content .form-item.cartbutton .added-to-wishlist, .product-content .additional-options .add-wishlist, .product-content .additional-options .added-to-wishlist {
  background: none;
  color: #000;
  width: auto;
  padding: 0px;
  border: none;
  height: auto;
  text-transform: capitalize;
  font-family: "OpenSans", sans-serif;
  font-weight: normal;
}
.product-content .form-item.cartbutton .add-wishlist:hover, .product-content .form-item.cartbutton .added-to-wishlist:hover, .product-content .additional-options .add-wishlist:hover, .product-content .additional-options .added-to-wishlist:hover {
  color: #9b9d9d;
}
.product-content .order-in-store {
  width: 100%;
  margin-bottom: 0.5rem;
}
.product-content .brand {
  float: right;
}
.product-content .brand span {
  display: none;
}
.product-content .pricing {
  text-align: center;
  order: -1;
}
.product-content .pricing .prices {
  display: inline-block;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.product-content .pricing .prices .price {
  font-size: 1.25rem;
  font-weight: 600;
}
.product-content .pricing .prices .price.save {
  font-size: 16px;
  margin-bottom: 0.5rem;
  color: #000;
  display: block;
}
.product-content .afterpay-widget {
  margin-bottom: 1rem;
  display: none;
}
.product-content .afterpay-widget p {
  display: inline-block;
  margin: 0;
  padding: 0;
}
.product-content .afterpay-widget .afterpay-range {
  display: none;
}
.product-content .afterpay-widget .afterpay-price {
  display: none;
}
.product-content .afterpay-widget .afterpay-moreinfo {
  display: block;
}
.product-content .afterpay-widget.afterpay-show-range, .product-content .afterpay-widget.afterpay-show-price {
  display: block;
}
.product-content .afterpay-widget.afterpay-show-range .afterpay-moreinfo, .product-content .afterpay-widget.afterpay-show-price .afterpay-moreinfo {
  display: block;
}
.product-content .afterpay-widget.afterpay-show-range .afterpay-range {
  display: inline-block;
}
.product-content .afterpay-widget.afterpay-show-price .afterpay-price {
  display: inline-block;
}
.product-content .afterpay-widget.afterpay-out-of-range {
  display: none;
}
.product-content .ESO_number_wrapper {
  position: relative;
  display: inline-block;
  text-align: center;
  width: 100%;
}
.product-content .ESO_number_wrapper input {
  height: 40px;
  width: 62%;
}
.product-content .ESO_number_wrapper a {
  position: absolute;
  height: 50%;
  width: 39%;
  line-height: 11px;
  text-align: center;
  font-size: 1.25rem;
  border-width: 1px;
  color: transparent;
  transition: background-color 200ms;
  right: 0;
  background: url(/Assets/sprite.png) no-repeat;
  background-size: 20px;
}
.product-content .ESO_number_wrapper a:hover {
  text-decoration: none;
  background-color: #9b9d9d;
}
.product-content .ESO_number_wrapper a.minus {
  top: 50%;
  background-position: 50% -379px;
}
.product-content .ESO_number_wrapper a.plus {
  top: 0;
  background-position: 50% -288px;
}

.product-availability-section,
.delivery-options-section,
.additional-info,
#freight-estimator {
  margin-bottom: 1rem;
  width: 100%;
}

#freight-estimator #freight-estimator-results {
  margin-top: 0.5rem;
}
#freight-estimator .check-delivery-timing {
  text-align: right;
}
#freight-estimator .check-delivery-timing a {
  font-family: "OpenSans", sans-serif;
  font-weight: normal;
}
#freight-estimator #freight-estimator-list {
  padding-left: 1rem;
}
#freight-estimator #freight-estimator-list .freight-estimator-row:not(.freight-estimate) {
  display: none;
}
#freight-estimator #freight-estimator-list .freight-estimator-row.freight-estimate {
  list-style: disc;
}
#freight-estimator #freight-estimator-list li {
  margin-bottom: 0.5rem;
}
#freight-estimator #freight-estimator-list li span + span {
  margin-left: 0.25rem;
}
#freight-estimator #freight-estimator-list li:last-child {
  font-style: italic;
  font-size: 0.875rem;
}

#freight-estimator #freight-estimator-inputs li:first-of-type {
  display: none;
}
#freight-estimator #freight-estimator-inputs li.postcode {
  width: 59%;
  float: left;
}
#freight-estimator #freight-estimator-inputs li.postcode + li {
  width: 38%;
  float: right;
  margin-left: 3%;
}
#freight-estimator #freight-estimator-inputs li.postcode + li button {
  width: 100%;
}

.product-availability-section {
  background-color: #f6f5f4;
  padding: 1.5rem;
  text-align: center;
}
.product-availability-section .find-in-store {
  width: 100%;
  margin-bottom: 0.5rem;
}

.delivery-options-section {
  border-bottom: 1px solid #d9d9d9;
  padding-bottom: 1rem;
}

.product-detail .review .date {
  color: #9b9d9d;
}
.product-detail .reviewer strong {
  margin-left: 0.25rem;
}
.product-detail .review {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top-width: 1px;
  text-align: left;
}
.product-detail .additional-options {
  float: right;
}
.product-detail .additional-options .add-registry, .product-detail .additional-options .find-in-store {
  margin-top: 1rem;
}
.product-detail .compare {
  margin: 0;
  float: right;
  font-size: 14px;
}
.product-detail .compare .compare-link-view {
  display: none;
  border-right: 1px solid #000;
  font-weight: normal;
  text-transform: capitalize;
}
.product-detail .compare .compare-link-add {
  color: #000;
  border-right: 1px solid #000;
  font-weight: normal;
  text-transform: capitalize;
}
.product-detail .compare .compare-link-trigger {
  display: none;
}
.product-detail .compare.added .compare-link-add {
  display: none;
}
.product-detail .compare.added .compare-link-view {
  display: block;
}
.product-detail .compare a,
.product-detail .additional-options .add-wishlist,
.product-detail .additional-options .added-to-wishlist {
  display: inline-block;
  padding: 0 0.5rem;
  text-decoration: underline;
  font-size: 0.875rem;
}
.product-detail h2 {
  font-size: 1.25rem;
  text-transform: uppercase;
}
.product-detail .stars-container span.full, .product-detail .stars-container span.half, .product-detail .stars-container span.empty {
  width: 24px;
  height: 24px;
  margin-right: 5px;
  background: url(sprite.png) center -1249px no-repeat;
  background-size: 49px;
}
.product-detail .stars-container span.half {
  background-position: center -1326px;
}
.product-detail .stars-container span.empty {
  background-position: center -1402px;
}
.product-detail .stars-container .review-count {
  display: none;
}
.product-detail .additional-info-content .reviews .stars-container {
  float: none;
}
.product-detail .additional-info-content .reviews .avg + .btn {
  float: right;
}
.product-detail .additional-info-content .info-item.active {
  display: block;
}
.product-detail .product-title h2 {
  text-transform: uppercase;
  font-size: 1.75rem;
}
.product-detail .form-item.cartbutton:before, .product-detail .form-item.cartbutton:after {
  content: "";
  display: table;
}
.product-detail .form-item.cartbutton:after {
  clear: both;
}
.product-detail .social-media {
  display: none;
}
.product-detail .social-media:before, .product-detail .social-media:after {
  content: "";
  display: table;
}
.product-detail .social-media:after {
  clear: both;
}
.product-detail .social-media > div {
  float: left;
  margin-right: 0.5rem;
}
.product-detail .reviews {
  text-align: center;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid #d9d9d9;
}
.product-detail .reviews .read-review:before {
  content: "";
  display: block;
  position: absolute;
  height: 12px;
  width: 100%;
  border-right: 1px solid black;
  top: 27%;
  margin-top: 0;
  left: 12px;
}
.product-detail .reviews .links {
  clear: both;
}
.product-detail .reviews .links a {
  text-decoration: underline;
  position: relative;
}
.product-detail .reviews .links a:hover {
  color: #9b9d9d;
}
.product-detail .reviews .stars-container {
  clear: both;
}
.product-detail .reviews .review-count {
  display: none;
}
.product-detail .reviews > h3 {
  display: none;
}
.product-detail .reviews .avg {
  float: left;
}
.product-detail .reviews .reviewer {
  float: left;
  margin-right: 0.25rem;
}
.product-detail .reviews .comment {
  clear: both;
}
.product-detail .reviews .links, .product-detail .reviews .no-reviews {
  text-align: center;
}
.product-detail .reviews .no-reviews {
  margin-right: 0.25rem;
}
.product-detail .reviews .no-reviews + .links a {
  margin-left: 0;
}
.product-detail .reviews .review-group {
  clear: both;
}

#body-wrapper .product-detail .links a {
  margin-right: 1.5rem;
}

.childproducts a#write-a-review-9 {
  margin-left: 0 !important;
}

.click-and-collect a[data-toggle=popover] {
  color: #000;
  font-size: 0.875rem;
  vertical-align: super;
  text-decoration: none;
  cursor: pointer;
}
.click-and-collect h4 {
  display: inline-block;
  position: relative;
  text-transform: uppercase;
  margin: 0;
  padding: 0;
}
.click-and-collect .popover {
  min-width: 270px;
}

.additional-info-links {
  margin: 0.5rem 0;
  text-align: right;
}
.additional-info-links li {
  margin-right: 0.25rem;
}

.additional-info {
  clear: both;
}
.additional-info:before, .additional-info:after {
  content: "";
  display: table;
}
.additional-info:after {
  clear: both;
}
.additional-info .info-item {
  display: block;
  visibility: visible;
  margin: 0;
}
.additional-info .info-item h2 {
  position: relative;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  margin: 0;
  padding: 0.5rem 0;
  border-top-width: 1px;
  cursor: pointer;
}
.additional-info .info-item ul {
  padding-left: 1rem;
}
.additional-info .info-item ul li {
  list-style-type: disc;
}
.additional-info .info-item .info-content {
  padding-bottom: 1rem;
}
.additional-info .info-item .animated-content {
  margin: 1rem 0;
}
.additional-info .info-item.open .animated-content {
  display: block !important;
}
.additional-info .info-item.open h2 {
  background: url(sprite.png) 102% -994px no-repeat;
  background-size: 40px;
}
.additional-info .additional-info-content > div {
  padding: 0;
}

.add-to-cart {
  position: relative;
}
.add-to-cart .availability {
  color: #000;
  font-size: 14px;
  font-family: "OpenSans", sans-serif;
  font-weight: normal;
  display: none;
}
.add-to-cart .cart-options {
  position: relative;
}
.add-to-cart .cart-options .form-item > label {
  text-transform: uppercase;
}
.add-to-cart .cart-options .form-item.cartbutton button {
  margin-bottom: 1rem;
}
.add-to-cart form legend {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  border: 0 !important;
}

.cross-sell .tab-pane h2 {
  margin-top: 1rem;
  font-size: 1.25rem;
  text-transform: uppercase;
  text-align: center;
}

.product-image figure {
  position: relative;
}

.product-img .alternate-images .slick-dots {
  display: none !important;
}

.alternate-images {
  margin: 0;
  padding: 0;
  width: 100%;
}
.alternate-images img {
  width: 80px;
}
.alternate-images li {
  float: left;
}
.alternate-images .slick-prev:before {
  background-position: 0 -883px;
}
.alternate-images .slick-next:before {
  background-position: 0 -946px;
}
.alternate-images .video .indicator {
  background: url(video_play.png) no-repeat center center;
  position: absolute;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
}
.alternate-images a {
  background-size: cover;
  display: block;
  margin: 0 auto;
}
.alternate-images a img {
  visibility: hidden;
  margin: 0 auto;
}

.product-img {
  position: relative;
}
.product-img .overlay {
  z-index: 2;
}
.product-img .medium-image {
  display: block;
  position: relative;
  border-bottom: 1px solid #d9d9d9;
}
.product-img .medium-image > img {
  display: none;
}
.product-img a > img {
  position: relative;
  width: 100%;
  max-width: 100%;
  height: auto;
}

.modal .email-a-friend .image, .modal .rating-form .image {
  margin-bottom: 1rem;
  text-align: center;
}
.modal .email-a-friend .image img, .modal .rating-form .image img {
  display: block;
  max-width: 100%;
  height: auto;
}
.modal .email-a-friend form, .modal .rating-form form {
  clear: both;
  padding-top: 1rem;
}

.availability {
  text-align: left;
  padding-bottom: 0.25rem;
}

/*Search aspects*/
.aspects {
  margin: 30px 0;
  display: none;
}
.aspects dl {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0;
  border-bottom-width: 1px;
}
.aspects dl:before, .aspects dl:after {
  content: "";
  display: table;
}
.aspects dl:after {
  clear: both;
}
.aspects dt, .aspects dd {
  border-top-width: 1px;
  padding: 10px 0;
}
.aspects dt {
  width: 30%;
}
.aspects dd {
  width: 70%;
}

/*Pricing Matrix*/
.full-pricing {
  margin-bottom: 1rem;
  text-align: center;
}

.modal .price-matrix .matrix th, .modal .price-matrix .matrix td {
  border-bottom-width: 1px;
}
.modal .price-matrix .matrix .available .pricing {
  cursor: pointer;
}
.modal .price-matrix th img, .modal .price-matrix .selection img {
  border: 1px solid #e5e5e5;
  border-radius: 0;
}
.modal .price-matrix h4 {
  float: left;
  clear: left;
  font-size: 14px;
  margin: 0px;
  line-height: 21px;
  text-align: left;
}
.modal .price-matrix .selection span:first-child, .modal .price-matrix .selection img {
  margin-right: 5px;
}
.modal .price-matrix .selection span:first-child {
  display: inline-block;
  width: 50px;
  font-weight: bold;
}
.modal .price-matrix .selection img {
  width: 20px;
}
.modal .price-matrix thead img + span {
  display: none;
}
.modal .price-matrix .row {
  margin: 0;
}
.modal .price-matrix table, .modal .price-matrix tbody, .modal .price-matrix tr, .modal .price-matrix td {
  display: block;
}
.modal .price-matrix td:before, .modal .price-matrix td:after {
  content: "";
  display: table;
}
.modal .price-matrix td:after {
  clear: both;
}
.modal .price-matrix th, .modal .price-matrix td {
  padding: 8px 10px;
}
.modal .price-matrix th, .modal .price-matrix thead {
  display: none;
}
.modal .price-matrix p {
  margin-bottom: 0;
}
.modal .price-matrix .unavailable .pricing, .modal .price-matrix .unavailable .price {
  color: #9b9d9d;
}
.modal .price-matrix .pricing {
  order: -1;
  text-align: right;
}
.modal .price-matrix .pricing h4 {
  font-size: 0.875rem;
}
.modal .price-matrix .pricing h4 span + span {
  margin-left: 5px;
}
.modal .price-matrix .price {
  float: none;
  padding-right: 0px;
}
.modal .price-matrix .price:not(.save) {
  display: block;
}
.modal .price-matrix .availabilitykey {
  margin-top: 20px;
}

/*Quickview Modal Popup*/
.modal-dialog .product-content .form-item, .modal-dialog .product-detail .additional-options {
  width: 100% !important;
}
.modal-dialog .popup-data.collapse, .modal-dialog .popup-data.collapsing {
  border-width: 1px 0;
  border-style: solid;
  border-color: #e5e5e5;
  padding: 0;
}
.modal-dialog .popup-data.collapse > *, .modal-dialog .popup-data.collapsing > * {
  padding: 0.5rem 0;
}
.modal-dialog .popup-data.collapse img, .modal-dialog .popup-data.collapsing img {
  max-width: 100%;
}
.modal-dialog .product-availability-section, .modal-dialog .delivery-options-section, .modal-dialog #freight-estimator, .modal-dialog .additional-info, .modal-dialog .product-detail h1 {
  display: none;
}
.modal-dialog .cart-options, .modal-dialog .additional-info-links {
  opacity: 1;
}

@media (max-width: 767.98px) {
  .additional-info .nav {
    display: none;
  }
  .cross-sell .nav-tabs {
    display: none;
  }
  .cross-sell .cross-sell-wrapper .tab-pane {
    display: block !important;
  }
}
@media (min-width: 768px) {
  .productpage {
    /* Composite tablet*/
    /* product extra */
    /* Composite tablet*/
  }
  .productpage h1 {
    text-align: left;
  }
  .productpage .product-group .product-img {
    width: 44%;
  }
  .productpage .product-group .product-content {
    width: 50%;
  }
  .productpage .product-group .product-availability-section, .productpage .product-group .delivery-options-section, .productpage .product-group #freight-estimator #freight-estimator-inputs {
    margin-bottom: 1rem;
    width: 49%;
  }
  .productpage .product-group .childproducts .product-img {
    width: 30%;
    float: left;
  }
  .productpage .product-group .childproducts .product-content {
    width: 60%;
    float: left;
    margin: 0;
    border: 0;
  }
  .productpage .product-group .childproducts h2, .productpage .product-group .childproducts .availability, .productpage .product-group .childproducts .style-number {
    text-align: left;
  }
  .productpage .product.product-top .childproducts .product-img {
    width: 30%;
    float: left;
  }
  .productpage .product.product-top .childproducts .product-content {
    width: 60%;
    float: left;
    margin: 0;
    border: 0;
  }
  .productpage .product.product-top .childproducts h2, .productpage .product.product-top .childproducts .availability, .productpage .product.product-top .childproducts .style-number {
    text-align: left;
  }
  .productpage .what-is-this {
    text-align: right;
  }
  .productpage .slick-prev, .productpage .slick-next {
    top: 50%;
  }
  .productpage .alternate-images .slick-prev {
    left: -27px;
  }
  .productpage .alternate-images .slick-next {
    right: -27px;
  }
  .main h4 button.btn {
    top: -15px;
    right: 168px;
  }
  .product-detail {
    /*** review stars ***/
  }
  .product-detail .social-media {
    float: left;
    clear: left;
  }
  .product-detail .form-item.cartbutton button {
    width: 100%;
  }
  .product-detail .product-content .cart-options .additional-options .find-in-store {
    margin: 0;
  }
  .product-detail .product-content .cart-options .additional-options .add-registry {
    margin-top: 0;
  }
  .product-detail .stars-container span.full, .product-detail .stars-container span.half, .product-detail .stars-container span.empty {
    width: 15px;
    height: 15px;
    margin-right: 7px;
    background: url(sprite.png) center -1021px no-repeat;
    background-size: 40px;
  }
  .product-detail .stars-container span.half {
    background-position: center -1084px;
  }
  .product-detail .stars-container span.empty {
    background-position: center -1146px;
  }
  .product-detail .medium-image > img {
    display: block;
  }
  .alternate-images li {
    padding: 0 10px;
    text-align: center;
  }
  /*Pricing Matrix*/
  .full-pricing {
    text-align: left;
  }
  #modal-popup .product-detail .additional-options button {
    width: 100%;
  }
  #modal-popup .product-detail #modal-popup .links a {
    margin-right: 5px;
  }
  .product-img {
    float: left;
    width: 57%;
  }
  .magnify-zoomed {
    border-width: 1px;
  }
  .product-content {
    margin-top: 0;
    clear: none;
    float: right;
    width: 38%;
  }
  .product-content h1 {
    margin-bottom: 0;
    padding: 0;
  }
  .product-content .pricing {
    text-align: left;
  }
  .product-content .reviews {
    text-align: left;
    clear: both;
  }
  .product-content .reviews .stars-container {
    float: left;
    margin-right: 10px;
  }
  .product-content .reviews .links, .product-content .reviews .no-reviews {
    float: left;
    margin: 2px 0 0;
    text-align: left;
  }
  .product-content .style-number {
    text-align: left;
  }
  .product-content .form-item.quantity label {
    display: none;
    width: 100%;
  }
  .alternate-images {
    position: relative;
    margin: 0.5rem auto;
    top: auto;
    left: auto;
    width: 96%;
  }
  .alternate-images a {
    background: none !important;
    padding-top: 0;
  }
  .alternate-images a > img {
    display: inline-block;
    visibility: visible;
    border: 1px solid #d9d9d9;
  }
  .alternate-images li {
    padding: 0 0.5rem;
    text-align: center;
  }
  .alternate-images .video .indicator {
    background: url(video_play.png) no-repeat center center;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
  }
  .modal .rating-form .image, .modal .email-a-friend .image {
    float: left;
    width: 40%;
  }
  .modal .rating-form .pricing, .modal .rating-form .long-description, .modal .email-a-friend .pricing, .modal .email-a-friend .long-description {
    width: 55%;
    float: right;
  }
  /*Pricing Matrix*/
  .modal .price-matrix h4 {
    display: none;
  }
  .modal .price-matrix thead {
    display: table-header-group;
  }
  .modal .price-matrix tbody {
    display: table-row-group;
  }
  .modal .price-matrix tr {
    display: table-row;
  }
  .modal .price-matrix th, .modal .price-matrix td {
    display: table-cell;
  }
  .modal .price-matrix .pricing {
    text-align: center;
  }
  .modal .price-matrix .price {
    float: none;
    font-weight: normal;
    font-size: 12px;
    letter-spacing: 1px;
  }
  .modal .price-matrix .price:not(.save) {
    display: initial;
  }
  .modal .price-matrix .price.was {
    padding-right: 6px;
  }
  .modal .price-matrix .matrix th, .modal .price-matrix .matrix td {
    text-align: center;
  }
  .modal .price-matrix .matrix td.available:hover {
    background-color: #f6f5f4;
  }
  .modal .price-matrix table {
    display: table;
  }
  .modal .price-matrix table.matrix {
    display: block;
    overflow-x: auto;
  }
  .modal .price-matrix th img {
    max-width: 30px;
  }
  .additional-info {
    margin-bottom: 3rem;
    padding-top: 3rem;
  }
  .additional-info .nav .nav-link {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: bold;
  }
  .additional-info .additional-info-content {
    border: 1px solid #e5e5e5;
    padding: 1.5rem;
  }
  .additional-info .additional-info-content h2 {
    display: none;
  }
  .additional-info .additional-info-content .info-item.active .info-content {
    display: block;
  }
  .productpage .laybuy-popup-content ul li {
    width: 23%;
  }
  .product-availability-section,
  .delivery-options-section,
  #freight-estimator {
    margin-bottom: 1rem;
    clear: right;
    float: right;
    width: 38%;
  }
  .product-availability-section #freight-estimator-inputs li.postcode,
  .delivery-options-section #freight-estimator-inputs li.postcode,
  #freight-estimator #freight-estimator-inputs li.postcode {
    width: 60%;
  }
  .product-availability-section #freight-estimator-inputs li.postcode + li,
  .delivery-options-section #freight-estimator-inputs li.postcode + li,
  #freight-estimator #freight-estimator-inputs li.postcode + li {
    width: 40%;
    margin-left: 0%;
  }
  .product-availability-section .check-delivery-timing,
  .delivery-options-section .check-delivery-timing,
  #freight-estimator .check-delivery-timing {
    text-align: left;
  }
  .product-availability-section {
    text-align: left;
  }
}
@media (min-width: 992px) {
  #freight-estimator #freight-estimator-inputs li.postcode {
    width: 70%;
  }
  #freight-estimator #freight-estimator-inputs li.postcode + li {
    width: 30%;
  }
}
@media (min-width: 1200px) {
  .alternate-images .video {
    position: relative;
    display: block;
  }
  .alternate-images .video .indicator {
    position: absolute;
    background: url(video_play.png) no-repeat center center;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
  }
  .productpage .product-detail .form-item.colour,
  .productpage .product-detail .form-item.size {
    width: 47.6%;
    display: inline-block;
  }
  .productpage .product-detail .form-item.colour {
    margin-right: 4.5%;
  }
  .productpage .product.product-top .magnify-holder {
    display: block;
  }
  .productpage .childproducts .product-img {
    width: 30%;
  }
  .productpage .childproducts .product-content {
    width: 60%;
  }
}
.availability-email-container:not(.all-unavailable) {
  display: none;
}

.availability-email-prompt {
  font-size: 18px;
  color: #d9534f;
}

.availability-email-form {
  display: none;
}
.availability-email-form legend {
  font-size: 18px;
}
.availability-email-form li:last-child {
  margin-bottom: 0;
}
.availability-email-form li.submit button.loading {
  background-image: url(button-ajax-loader.gif);
  background-position: 90% 50%;
  background-repeat: no-repeat;
}

.availability-email-active .availability-email-container, .availability-email-active .availability-email-form {
  display: block;
}

.availability-email-active .form-item.cartbutton, .availability-email-active button.add-wishlist, .availability-email-active button.add-registry, .availability-email-active .form-item.quantity *, .availability-email-active .childproducts, .availability-email-all-items .form-item.cartbutton, .availability-email-all-items button.add-wishlist, .availability-email-all-items button.add-registry, .availability-email-all-items .form-item.quantity *, .availability-email-all-items .childproducts {
  display: none !important;
}

@media (min-width: 768px) {
  .availability-email-form li.submit {
    text-align: right;
  }
  .availability-email-form li.submit button {
    width: 50%;
  }
}
@media (min-width: 768px) and (max-width: 1199.98px) {
  /* Composite Products */
  .productpage .product-group .product-content .form-item.cartbutton {
    width: 100%;
  }
  .productpage .product-group .product-content .form-item.quantity {
    width: 50%;
  }
  .productpage .product-group .product-content .form-item.quantity > label {
    display: block;
  }
}
.storefinder-modal #fis-map-element {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.storefinder-modal .google-map-holder {
  position: relative;
  margin: 0;
  padding-top: 66%;
  width: 100%;
}
.storefinder-modal .storefinder-container.using-geolocation .not-using-location,
.storefinder-modal .storefinder-container.using-geolocation .geolocation-error ~ * {
  display: none;
}
.storefinder-modal .storefinder-container:not(.using-geolocation) .using-location {
  display: none;
}
.storefinder-modal p {
  margin-bottom: 0.5rem;
}
.storefinder-modal .product-description {
  order: -1;
}
.storefinder-modal .style-number {
  display: none;
}
.storefinder-modal .store-name {
  margin-bottom: 0.5rem;
  font-weight: 700;
}
.storefinder-modal .store-name .distance {
  font-weight: 400;
}
.storefinder-modal .store-directions {
  margin-bottom: 0.5rem;
}
.storefinder-modal .store-address span, .storefinder-modal .store-details span {
  display: inline-block;
}
.storefinder-modal .store-address {
  margin-bottom: 0.5rem;
}
.storefinder-modal .store-details {
  margin-bottom: 0.5rem;
}
.storefinder-modal button.back {
  --bs-btn-hover-color: var(--bs-link-color);
  --bs-btn-hover-bg: transparent;
  --bs-btn-active-bg: transparent;
  --bs-btn-padding-x: 0;
  margin-bottom: 0.5rem;
}
.storefinder-modal form {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.storefinder-modal form > *:not(.image):not(.item-selections) {
  width: 100%;
}
.storefinder-modal form legend {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  border: 0 !important;
}
.storefinder-modal .image {
  width: 43%;
  margin-right: 0.5rem;
  margin-bottom: 1rem;
}
.storefinder-modal .image .product-img {
  width: 100%;
  height: auto;
  border: 1px solid #e5e5e5;
}
.storefinder-modal .image .medium-image {
  display: block;
  pointer-events: none;
  cursor: default;
  border: none;
}
.storefinder-modal .image .alternate-images {
  display: none;
}
.storefinder-modal .image img {
  display: block;
}
.storefinder-modal .image .overlay {
  position: absolute;
}
.storefinder-modal .image .overlay img {
  width: 100%;
}
.storefinder-modal .image .top-horizontal, .storefinder-modal .image .bottom-horizontal {
  width: 30%;
}
.storefinder-modal .image .bottom-horizontal.small-overlay, .storefinder-modal .image .top-horizontal.small-overlay {
  width: 36%;
}
.storefinder-modal .image .top-horizontal {
  left: 0;
  top: 0;
}
.storefinder-modal .image .bottom-horizontal {
  right: 0;
  bottom: 0;
}
.storefinder-modal .social-media {
  display: none;
}
.storefinder-modal .item-selections {
  width: 52%;
}
.storefinder-modal .item-selections .form-item {
  clear: both;
  margin-bottom: 0.5rem;
}
.storefinder-modal .item-selections .form-item:before, .storefinder-modal .item-selections .form-item:after {
  content: "";
  display: table;
}
.storefinder-modal .item-selections .form-item:after {
  clear: both;
}
.storefinder-modal .item-selections .form-item.quantity {
  display: none;
}
.storefinder-modal .item-selections .form-item.colour img {
  border: 1px solid #e5e5e5;
  border-radius: 0;
  width: 20px;
  height: 20px;
  margin-right: 0.25rem;
}
.storefinder-modal .item-selections .fake-select {
  width: 100%;
}
.storefinder-modal .item-selections .fake-select.single .selected {
  border-width: 1px;
}
.storefinder-modal .results-feedback {
  line-height: 1.2em;
}
.storefinder-modal .results-feedback p {
  margin: 0;
}
.storefinder-modal .form-item.search, .storefinder-modal .form-item-search {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.storefinder-modal .form-item.search button, .storefinder-modal .form-item-search button {
  width: 37%;
}
.storefinder-modal .form-item.search input, .storefinder-modal .form-item-search input {
  width: calc(63% - 0.4em);
}
.storefinder-modal .locate-info table {
  width: 100%;
  border-top: 1px solid #ced4da;
  border-bottom: 1px solid #ced4da;
}
.storefinder-modal .locate-info td {
  vertical-align: top;
  padding: 0.25rem 0;
}
.storefinder-modal .locate-info td img {
  height: 28px;
}
.storefinder-modal .locate-info td p {
  margin-bottom: 0;
}
.storefinder-modal .locate-info td:first-of-type {
  padding-right: 0.25rem;
}
.storefinder-modal .locate-info td.store-details {
  text-align: right;
}
.storefinder-modal .locate-info td.store-details a {
  display: block;
  padding: 0.25rem 0;
}
.storefinder-modal .locate-info .availability.available {
  color: #5cb85c;
}
.storefinder-modal .locate-info .availability.unavailable {
  color: #d9534f;
}
.storefinder-modal .stores {
  border-top: 1px solid #ced4da;
  padding-top: 0.5rem;
  margin-top: 1rem;
}
.storefinder-modal .stores .store .store-image {
  display: none;
}
.storefinder-modal .store-links ul {
  list-style: none;
  padding: 0;
  border-top: 1px solid #ced4da;
}
.storefinder-modal .store-links li {
  padding: 0 0.25rem;
  border-bottom: 1px solid #ced4da;
}
@media (min-width: 992px) {
  .storefinder-modal .modal-dialog {
    width: 800px;
    max-width: none;
  }
  .storefinder-modal .storefinder {
    display: flex;
  }
  .storefinder-modal .storefinder > div {
    width: 50%;
  }
  .storefinder-modal .map-wrapper {
    margin-left: 1rem;
  }
  .storefinder-modal .google-map-holder {
    padding-top: 100%;
  }
}

/* ========= PRODUCT DETAIL COMPONENT END ========= */

/*# sourceMappingURL=product-detail.scss.map */

/* ========= ONLINE BOOKS COMPONENT ========= */
.onlinebooks #left-nav {
  display: none;
}
.onlinebooks #page-content {
  width: 100%;
  float: none;
}
.onlinebooks .book-list img {
  max-width: 100%;
  width: 100%;
  height: auto;
  display: block;
}
.onlinebooks .book-list ul {
  list-style: none;
  margin: 0 -1rem;
  padding: 0;
}
.onlinebooks .book-list ul:after {
  content: "";
  height: 0;
  display: block;
  clear: left;
}
.onlinebooks .book-list ul li {
  float: left;
  width: 50%;
  padding: 0 1rem;
  margin-bottom: 1rem;
}
.onlinebooks .book-list ul a {
  display: block;
  text-align: center;
}
.onlinebooks .book-list ul .cover-image + a {
  margin: 0.5rem 0;
}
.onlinebooks .slick-prev, .onlinebooks .slick-next, .onlinebooks .slick-start, .onlinebooks .slick-end {
  height: 40px;
  background-color: #ced4da;
}
.onlinebooks .slick-prev:before, .onlinebooks .slick-next:before, .onlinebooks .slick-start:before, .onlinebooks .slick-end:before {
  display: block;
  background-color: transparent;
}

@media (min-width: 576px) {
  .onlinebooks .book-list ul li {
    width: 33.333333%;
  }
}
@media (min-width: 768px) {
  .onlinebooks .book-list ul li {
    width: 25%;
  }
}
@media (min-width: 992px) {
  .onlinebooks .book-list ul li {
    width: 20%;
  }
}
.onlinebooks #page-content {
  width: 100%;
  float: none;
}
.onlinebooks #main .products {
  display: none;
  margin-top: 2rem;
}
.onlinebooks .print-onlinebook {
  margin-bottom: 0.5rem;
}
.onlinebooks .download-onlinebook {
  display: none;
  margin-bottom: 0.5rem;
}
.onlinebooks .download-onlinebook:disabled {
  background-color: #ced4da;
  cursor: default;
  color: #d9d9d9;
}
.onlinebooks .book-detail {
  position: relative;
}
.onlinebooks .book-detail button {
  min-width: 0;
}
.onlinebooks .book-detail.loading {
  display: block;
  visibility: visible;
  width: 100%;
  min-height: 160px;
  background: url("ajax-loader.gif") no-repeat center #fff;
}
.onlinebooks .slick-slide img {
  max-width: 100%;
  width: 100%;
  height: auto;
}
.onlinebooks .slick-active .slick-loading {
  width: 100%;
  visibility: visible;
  min-height: 160px;
  background: url("ajax-loader.gif") no-repeat center #fff;
}
.onlinebooks .top-navigation {
  border-top: 3px solid #d9d9d9;
}
.onlinebooks .top-navigation ul {
  text-align: center;
  margin: 0.5rem 0;
}
.onlinebooks .top-navigation li {
  display: inline-block;
  vertical-align: middle;
}
.onlinebooks .top-navigation label {
  width: auto;
  margin: 0;
}
.onlinebooks .top-navigation .slick-prev, .onlinebooks .top-navigation .slick-next, .onlinebooks .top-navigation .slick-start, .onlinebooks .top-navigation .slick-end {
  position: relative;
  margin: 0;
  min-width: 0;
  top: 0;
  transform: none;
}
.onlinebooks .top-navigation .slick-prev:before, .onlinebooks .top-navigation .slick-next:before, .onlinebooks .top-navigation .slick-start:before, .onlinebooks .top-navigation .slick-end:before {
  display: block;
}
.onlinebooks .top-navigation .slick-start,
.onlinebooks .top-navigation .slick-end {
  display: block;
  height: 40px;
  width: 40px;
  line-height: 0;
  font-size: 0;
  cursor: pointer;
  color: transparent;
  padding: 0;
  z-index: 2;
  min-width: 0;
  text-indent: -999999px;
  border-radius: 0;
  outline: none;
  top: 0;
  background-image: none;
}
.onlinebooks .top-navigation .slick-start:before,
.onlinebooks .top-navigation .slick-end:before {
  display: block;
  content: "";
  padding: 2rem 1.5rem;
  background-repeat: no-repeat;
  background-size: 40px;
  background-image: url(sprite.png), url(sprite.png);
}
.onlinebooks .top-navigation .slick-start:before {
  background-position: -5px -442px, 5px -442px;
}
.onlinebooks .top-navigation .slick-end:before {
  background-position: -5px -380px, 5px -380px;
}
.onlinebooks .bottom-navigation ul {
  text-align: right;
  margin: 0.5rem 0;
}
.onlinebooks .bottom-navigation li {
  display: inline-block;
  vertical-align: middle;
}
.onlinebooks .slick-slider .slick-prev {
  left: 0;
}
.onlinebooks .slick-slider .slick-next {
  right: 0;
}
.onlinebooks .catalouge-slider {
  border-bottom: 3px solid #e5e5e5;
  border-top: 3px solid #e5e5e5;
}
.onlinebooks .catalouge-slider button {
  border: 1px solid #e5e5e5;
}
.onlinebooks .catalouge-slider-thumbs {
  border-bottom: 3px solid #e5e5e5;
  border-top: 3px solid #e5e5e5;
}
.onlinebooks .catalouge-slider-thumbs button {
  border: 1px solid #e5e5e5;
}
.onlinebooks .slick-slide {
  position: relative;
}
.onlinebooks .catalouge-nav-slider .slick-track {
  margin: 0 auto;
}
.onlinebooks .catalouge-nav-slider .slick-slide > img {
  cursor: pointer;
  border-left: 1px solid #e5e5e5;
  border-right: 1px solid #e5e5e5;
}
.onlinebooks .slick-slide .slider-hotspots a {
  text-indent: -99999px;
  position: absolute;
  cursor: pointer;
}
.onlinebooks .add-slides ul {
  text-align: center;
  margin: 0 0 2rem;
  padding: 0;
  list-style: none;
}
.onlinebooks .tooltip {
  font-size: 0.875rem;
  padding: 0.25rem;
  position: absolute;
  width: 100px;
  min-height: 160px;
  height: auto;
  border: 1px solid #e5e5e5;
  background: #fff;
  z-index: 99;
  opacity: 1;
}
.onlinebooks .tooltip.alignLHS {
  right: 120%;
}
.onlinebooks .tooltip.alignRHS {
  left: 120%;
}
.onlinebooks .tooltip .tooltipHeading {
  text-indent: initial;
}
.onlinebooks .tooltip img {
  border: 0;
  max-width: 100%;
  width: 100%;
  height: auto;
  display: block;
}
.onlinebooks .tooltip.loading {
  display: block;
  visibility: visible;
  width: 100px;
  min-height: 160px;
  background: url("ajax-loader.gif") no-repeat center #fff;
}

@media (min-width: 768px) {
  .onlinebooks .tooltip {
    width: 150px;
    min-height: 210px;
  }
  .onlinebooks .tooltip img {
    max-width: 100%;
    width: 100%;
    height: auto;
  }
  .onlinebooks .onlinebook-buttons {
    text-align: right;
  }
  .onlinebooks .print-onlinebook {
    margin-left: 0.5rem;
    margin-bottom: 0;
  }
}
@media print {
  .onlinebooks #main .products {
    page-break-before: always;
    display: block;
  }
  .onlinebooks img {
    max-width: 100% !important;
  }
  .onlinebooks .book-detail .slick-track {
    width: 100% !important;
    transform: none !important;
  }
  .onlinebooks .book-detail .slick-slide {
    display: none;
  }
  .onlinebooks .book-detail .slick-active {
    width: 50% !important;
    display: block !important;
  }
  .onlinebooks .book-detail .top-navigation, .onlinebooks .book-detail .catalouge-nav-slider, .onlinebooks .book-detail .slider-hotspots, .onlinebooks .book-detail .slick-loading {
    display: none;
  }
  .onlinebooks .onlinebook-buttons {
    display: none;
  }
  .onlinebooks footer, .onlinebooks header, .onlinebooks .back-top {
    display: none;
  }
}
/* ========= ONLINE BOOKS COMPONENT ========= */

/* ========= SITEMAP COMPONENT ========= */
.sitemap #left-nav {
  display: none;
}
.sitemap #page-content {
  width: 100%;
}
.sitemap .sitemap-content a {
  color: #000;
}
.sitemap .sitemap-content ul {
  list-style: none;
  padding: 0;
}
.sitemap .sitemap-content > ul > li {
  border-top-width: 1px;
  padding: 1rem 0 0 0;
  margin: 1rem 0 0;
  font-size: 1.25rem;
}
.sitemap .sitemap-content ul li, .sitemap .sitemap-content > ul > li > ul > li {
  font-weight: 700;
}
.sitemap .sitemap-content ul li li {
  font-weight: 400;
  font-size: 1rem;
  padding-left: 1rem;
}
.sitemap .sitemap-content > ul > li > ul > li {
  margin-bottom: 0.5rem;
}

@media (min-width: 768px) {
  .sitemap.infopage .sitemap-content > ul > li {
    float: left;
    width: 33%;
  }
  .sitemap.infopage .sitemap-content > ul > li:nth-child(3n+1) {
    clear: both;
  }
}
@media (min-width: 1200px) {
  .sitemap.infopage .sitemap-content > ul > li {
    width: 25%;
  }
  .sitemap.infopage .sitemap-content > ul > li:nth-child(3n+1) {
    clear: none;
  }
  .sitemap.infopage .sitemap-content > ul > li:nth-child(4n+1) {
    clear: both;
  }
}
/* ========= SITEMAP COMPONENT END ========= */

.accountpage .main {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.accountpage .main form > .next-previous:first-of-type {
  display: none;
}
.accountpage .main form fieldset {
  margin-bottom: 1rem;
}

.login.accountpage fieldset .note {
  margin-left: 0;
}

.main .customer.existing legend {
  display: none;
}

.login-form fieldset ol, .login-form fieldset ul, .retrieve-password form fieldset ol, .retrieve-password form fieldset ul {
  flex-direction: column;
}
.login-form fieldset li, .retrieve-password form fieldset li {
  width: 100%;
}

.customer.existing li.email > label, .customer.existing li.password > label {
  display: none;
}

.history main .order-summary .total {
  text-align: right;
}
.history .cart-summary h2 {
  font-size: 1.75rem;
}
.history .cart h2 {
  font-size: 0.875rem;
  font-weight: 600;
  margin-bottom: 0.25rem;
}
.history .cart h2 a {
  text-decoration: none;
}
.history .cart .selections {
  margin-bottom: 0.25rem;
}

form .interest-groups .column {
  float: left;
  max-width: 300px;
  width: 45%;
}
form .interest-groups li {
  margin-bottom: 0.5rem;
}
form .interest-groups .column-1 {
  margin-right: 3%;
}
form .interest-groups label + .note {
  margin: 0 0 1rem 0;
}
form .interest-groups select {
  max-width: 50%;
}
form .interest-groups p + ol > li {
  border-bottom-width: 1px;
  margin-bottom: 1rem;
}
form .interest-groups p + ol > li:before, form .interest-groups p + ol > li:after {
  content: "";
  display: table;
}
form .interest-groups p + ol > li:after {
  clear: both;
}
form .interest-groups input + label {
  width: 90%;
}
form .interest-groups .column input + label {
  width: 75%;
}

@media (min-width: 768px) {
  .accountpage .main .customer.existing {
    width: 45%;
    float: left;
    margin-right: 10%;
  }
  .accountpage .main .customer.new {
    float: left;
    padding: 1rem;
    text-align: left;
  }
  .accountpage .main .customer.new .new-cust {
    width: 100%;
    padding: 0.5rem;
  }
  .accountpage .main .next-previous {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 2rem 0 1rem;
  }
  .history .rebuild {
    text-align: right;
  }
  .history .rebuild-options {
    text-align: right;
    padding: 0.5rem 0;
    border-bottom-width: 1px;
  }
  .history .rebuild-options a {
    margin-left: 0.5rem;
  }
  .loggedin.accountpage .left-nav .menu.dynamic li {
    display: block;
  }
}
@media (min-width: 992px) {
  .accountpage:not(.loggedin) .page-content {
    width: 66%;
  }
  .login.accountpage .page-content {
    width: 100%;
    float: none;
  }
  .login.accountpage .left-nav {
    display: none;
  }
}
/* ========= CUSTOMER COMPONENT END ========= */

/* ========= SHOPPING CART COMPONENT ========= */
.cartpage .customer {
  margin-top: 2rem;
}
.cartpage .main-container .customer.new {
  width: 100%;
}
.cartpage .main-container .customer.new .options span {
  display: inline-block;
  padding: 0.25rem 0;
  text-align: center;
  font-size: 0.875rem;
}

.cartpage.login .cart {
  padding-top: 1.5rem;
}
.cartpage.login .error {
  margin-bottom: 1rem;
}
.cartpage.login .main .cart-summary {
  display: none;
}
.cartpage.login .main li.email,
.cartpage.login .main li.password,
.cartpage.login .main .options .btn,
.cartpage.login .options span {
  width: 100%;
}

#retrieve-password,
#header-retrieve-password,
#billing-form {
  display: none;
}

#sign-in li.email > label, #sign-in li.password > label {
  display: none;
}

/*** TABLETS ***/
@media (min-width: 768px) and (max-width: 991.98px) {
  .cartpage .info-container .modify a {
    font-size: 0.875rem;
  }
  .login .email,
  .login .password {
    width: 100%;
  }
}
/*** DESKTOP ***/
@media (min-width: 768px) {
  .cartpage.login .cart {
    width: 100%;
  }
  .cartpage .main-container .customer.new .btn {
    display: inline-block;
    width: auto;
  }
  .cartpage .main-container .customer {
    float: left;
  }
  .cartpage .main-container .customer.existing {
    margin-right: 5%;
  }
  .cartpage .main-container .customer.existing, .cartpage .main-container .customer.new {
    width: 45%;
  }
  .cartpage .main-container .customer.new p.options {
    padding-top: 2rem;
  }
  .cartpage .main-container .customer.new .btn {
    width: 100%;
  }
  .cartpage .main-container .cart-summary {
    width: 25%;
    float: right;
    padding-top: 3rem;
  }
  .cartpage main .cart {
    width: 67%;
    float: left;
  }
  #sign-in .customer.new {
    width: 100%;
  }
}
.cartpage .empty {
  margin: 0.5rem 0;
}

.cart .promo-code {
  padding: 1rem 0;
  border-width: 1px 0;
  margin: 0.5rem 0;
  width: 100%;
}
.cart .promo-code button {
  width: 100%;
}
.cart .promo-code label,
.cart .promo-code .hint {
  display: none;
}
.cart .promo-code input,
.cart .promo-code label {
  width: 100%;
}
.cart .promo-code ul {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
  width: 100%;
  margin-bottom: 0;
}
.cart .promo-code ul li {
  display: inline-block;
}
.cart .promo-code ul li:first-child {
  width: 63%;
  margin-bottom: 0%;
}
.cart .promo-code ul li:last-child {
  width: 33%;
  margin-bottom: 0%;
}

.cart-extras {
  clear: both;
  padding: 1.5rem 0;
  text-align: center;
}
.cart-extras a:first-child {
  margin-right: 1rem;
}

.cartpage .update {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 1rem;
  width: 100%;
  margin: 8px 0px;
}
.cartpage .update .hint {
  width: 63%;
  font-size: 14px;
  margin-bottom: 0px;
}
.cartpage .update button {
  width: 33%;
}

@media (max-width: 767.98px) {
  .cartpage .update {
    text-align: center;
  }
}
@media (min-width: 768px) {
  .review.cartpage .page-content {
    width: 100%;
    float: none;
  }
  .review.cartpage .page-content .cart {
    width: 100%;
  }
  .review.loggedin.cartpage .page-content .summary-block {
    display: none;
  }
  .review .cart-summary {
    display: none;
  }
  .cart .promo-code {
    margin: 0;
    width: 50%;
    float: left;
    border-width: 0;
  }
  .cart .promo-code button {
    min-width: inherit;
    width: 100%;
  }
  .cart .promo-code ul {
    display: flex;
    width: 100%;
  }
  .cart .promo-code ul li {
    margin-bottom: 0;
  }
  .cart .promo-code ul li:first-child {
    flex-grow: 1;
  }
  .cart .promo-code ul li:last-child {
    width: auto;
  }
  .cart-extras {
    float: right;
  }
  .cart-extras:before, .cart-extras:after {
    content: "";
    display: table;
  }
  .cart-extras:after {
    clear: both;
  }
  .cartpage .update {
    border-bottom-width: 1px;
    margin: 1rem 0 0;
    padding-bottom: 1rem;
    text-align: left;
    float: right;
    width: 36%;
  }
  .cartpage .update button {
    float: right;
  }
  .cartpage .update .hint {
    flex-grow: 1;
    font-size: 12px;
  }
}
@media (min-width: 992px) {
  .cart .promo-code {
    width: 40%;
  }
}
.cartpage .card-expiry select {
  width: 48%;
  display: inline-block;
}
.cartpage .card-expiry select + label {
  display: none;
}
.cartpage .card-expiry select + label + select {
  margin-left: 4%;
}
.cartpage .card-expiry select .main-container .customer.existing p.note {
  display: none;
}

.security-logos {
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding: 0 1rem;
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
  align-items: center;
}
.security-logos span {
  max-height: 60px;
  display: inline-block;
}
.security-logos span img {
  width: 100%;
}
.security-logos span.estarsecure {
  margin: 0 0.5rem;
}
.security-logos span.dpsexpress img {
  max-width: 130px;
}
.security-logos > span {
  width: 30%;
}
.security-logos > span img {
  width: 100%;
  max-width: 130px;
  height: auto;
  display: block;
  margin: auto;
}

.cartpage.payment fieldset.payment-options div.storedpayments div.savedpayments .editdisplay:not(.active-edit) .show-fields,
.cartpage.payment fieldset.payment-options div.storedpayments div.savedpayments .editdisplay:not(.active-edit) .card-edit,
.cartpage.payment fieldset.payment-options div.storedpayments div.savedpayments .editdisplay.active-edit .hide-fields {
  display: none;
}

.cartpage.payment #eftpos-bank-select,
.cartpage.payment #eftpos-mobile-select {
  display: none;
}
.cartpage.payment .main-container .eftpos-bank legend {
  padding-bottom: 0;
  font-size: 1rem;
  margin-bottom: 0.5rem;
  border-bottom: none;
}
.cartpage.payment .eftpos-bank {
  margin: 0 0 1rem;
}
.cartpage.payment .eftpos-bank ol {
  margin-bottom: 0;
  height: 38px;
}
.cartpage.payment .eftpos-bank li {
  margin-bottom: 0;
  position: relative;
  width: 25%;
  text-align: center;
  border: 1px solid #ced4da;
  float: left;
}
.cartpage.payment .eftpos-bank li:not(:nth-of-type(1)) {
  margin-left: -1px;
}
.cartpage.payment .eftpos-bank li:hover, .cartpage.payment .eftpos-bank li.on {
  border-color: #66bd9b;
  z-index: 1;
}
.cartpage.payment .eftpos-bank .selection-made li:not(.on):not(:hover) img {
  filter: grayscale(100%);
}
.cartpage.payment .eftpos-bank input {
  position: absolute;
  left: 50%;
  top: 13px;
  margin: 0;
}
.cartpage.payment .eftpos-bank label {
  position: relative;
  cursor: pointer;
  margin-bottom: 0;
  padding: 0.25rem 0 0.25rem;
  width: 100%;
  background: #fff;
}
.cartpage.payment .eftpos-bank img {
  height: 13px;
}
.cartpage.payment .online-eftpos legend img {
  width: 145px;
}
.cartpage.payment .eftpos-mobile {
  margin-bottom: 1rem;
}
.cartpage.payment .eftpos-mobile input {
  background: url("smartphone.svg") no-repeat;
  background-size: 15px;
  background-position-y: center;
  padding-left: 2rem;
  background-position-x: 5px;
}
.cartpage.payment .payment-popup.eftpos span:not(#eftpos-selected-bank) {
  font-weight: 700;
}
@media (min-width: 768px) {
  .cartpage.payment .online-eftpos {
    margin-top: 2.5rem;
  }
  .cartpage.payment .eftpos-bank {
    width: 47%;
    float: left;
    margin-right: 6%;
  }
  .cartpage.payment .eftpos-mobile {
    width: 47%;
    float: left;
  }
}
@media (min-width: 992px) {
  .cartpage.payment .main .eftpos-bank ol {
    display: block;
  }
  .cartpage.payment .main .eftpos-bank li {
    width: 25%;
  }
}

.payment.loggedin .cart .account-details .payment-options .paypal-method {
  margin-right: 1rem;
}
.payment.loggedin .cart .account-details .payment-method ol li:first-of-type ul {
  display: none;
}

@media (min-width: 768px) {
  .security-logos {
    display: block;
  }
  .security-logos > span {
    width: auto;
    display: inline-block;
  }
}
@media (min-width: 992px) {
  .cartpage .payment {
    float: none;
  }
  .cartpage .card-expiry select {
    width: 34%;
  }
  .cartpage .card-expiry select + label + select {
    margin-left: 2%;
  }
}
fieldset.payment-method.payment-selection ul, fieldset.payment-method.payment-selection li {
  display: block;
  width: 100%;
}

.print .main-container .cart-summary {
  width: 100%;
}
.print .cart-summary {
  float: none;
}
.print .cart-summary .summary-block {
  float: left;
  width: 32%;
  margin-left: 2%;
}
.print .cart-summary .summary-block td {
  padding-right: 1rem;
}
.print .cart-summary .summary-block:first-child {
  margin-left: 0;
}
.print .cart-summary p,
.print .cart-summary td {
  margin-bottom: 0;
  padding-bottom: 0.25rem;
}
.print .cart {
  clear: both;
  width: 100%;
  margin: 1rem auto;
  float: none;
}
.print .cart-summary {
  width: 100%;
  margin: 1rem auto;
  float: none;
}

.cartpage .page-content {
  width: 100%;
}
.cartpage .left-nav {
  display: none;
}
.cartpage .page-container .hint {
  font-size: 11px;
  margin-top: 0;
  margin-bottom: 0.25rem;
  display: inline-block;
  font-weight: normal;
}
.cartpage .page-container .hint.popup-link {
  display: inline-block;
  padding-left: 0.25rem;
}
.cartpage .cart-summary-panel .item-summary .total {
  text-align: right;
}
.cartpage .cart .next-previous {
  display: flex;
  flex-direction: column-reverse;
}
.cartpage #breadcrumbs {
  display: block;
}
.cartpage .fake-select li {
  width: 100% !important;
}
.cartpage .repeat-order {
  display: none;
}

.cartpage .main .next-previous:first-of-type, .accountpage .main .next-previous:first-of-type {
  display: none !important;
}

.cartpage.review #page-content .cart-summary {
  display: none;
}

.cartpage.review .summary-table th, .cartpage.complete .summary-table th {
  font-size: 12px;
  text-transform: uppercase;
  font-weight: normal;
  padding-bottom: 8px;
}
.cartpage.review .summary-table th.total, .cartpage.complete .summary-table th.total {
  text-align: right;
}
.cartpage.review .summary-table tr, .cartpage.complete .summary-table tr {
  font-size: 12px;
}
.cartpage.review .summary-table tr td.total, .cartpage.complete .summary-table tr td.total {
  text-align: left;
}
.cartpage.review .summary-table .qty, .cartpage.complete .summary-table .qty {
  margin-bottom: 10px;
}
.cartpage.review .summary-table .item .item-detail, .cartpage.complete .summary-table .item .item-detail {
  font-size: 12px;
}
.cartpage.review .summary-table .item .item-detail h2, .cartpage.complete .summary-table .item .item-detail h2 {
  margin-bottom: 0px;
  order: initial;
  width: 75%;
}
.cartpage.review .summary-table .item .item-detail h2 a, .cartpage.complete .summary-table .item .item-detail h2 a {
  font-weight: bold;
  text-transform: uppercase;
  text-decoration: none;
}
.cartpage.review .summary-table .item .item-detail .style-number, .cartpage.complete .summary-table .item .item-detail .style-number {
  order: initial;
  display: block;
  color: var(--bs-gray-600);
}
.cartpage.review .summary-table .item .item-detail .selections, .cartpage.complete .summary-table .item .item-detail .selections {
  font-size: 12px;
  font-weight: bold;
  margin-bottom: 10px;
}

.modify {
  display: block;
  margin-top: 21px;
}
.modify .btn {
  width: 100%;
}

.cart-summary .summary-block {
  padding-bottom: 1rem;
  border-top-width: 1px;
}
.cart-summary .summary-block .cart-total .total {
  text-transform: none;
  border-bottom: none;
  padding-bottom: 0.5rem;
  margin-bottom: 0px;
}
.cart-summary .summary-block .confirm-summary {
  width: 100%;
}
.cart-summary .summary-block .confirm-summary tr td {
  padding: 0.125rem;
  border-bottom-width: 0;
}
.cart-summary .summary-block .confirm-summary tr td:first-child {
  padding-right: 0.5rem;
}
.cart-summary .summary-block:last-child {
  border-bottom-width: 1px;
  margin-bottom: 1rem;
}
.cart-summary .summary-block h2 {
  font-size: 1.25rem;
  position: relative;
  padding: 1rem 0 0;
  margin: 0;
}
.cart-summary .summary-block p {
  margin-bottom: 0;
}
.cart-summary .eso-accordion-indicator {
  top: 8px;
}
.cart-summary .eso-accordion-contents {
  margin: 1rem 0;
}
.cart-summary .item-summary {
  width: 100%;
  margin-top: 0.25rem;
}
.cart-summary .item-summary td {
  padding: 0 0 0.5rem;
}
.cart-summary #zipRepayCalc {
  margin-bottom: 0.5rem;
}

.cart .content h2 {
  font-size: 1rem;
}
.cart .item-detail .click-and-collect {
  padding: 0.5rem 0;
}

.item .cart-summary:nth-child(n+2) td {
  padding-top: 1rem;
}

.postcode button {
  width: auto;
}

main table.summary-table, #cart-item-added table, .order-summary {
  width: 100%;
}

main table.summary-table tr, #cart-item-added table tr, .order-summary tr {
  position: relative;
  display: block;
  margin-bottom: 0.5rem;
  padding-bottom: 0.5rem;
  border-bottom-width: 1px;
}

main table.summary-table {
  margin-bottom: 0;
}
main table.summary-table tr:before, main table.summary-table tr:after {
  content: "";
  display: table;
}
main table.summary-table tr:after {
  clear: both;
}
main table.summary-table .item-detail, main table.summary-table .qty, main table.summary-table .pricing, main table.summary-table .total {
  float: right;
  clear: right;
  width: 62%;
}
main table.summary-table .actions ul, main table.summary-table .actions li {
  margin-bottom: 0;
}
main table.summary-table #cart-item-added table .item-detail, main table.summary-table #cart-item-added table .qty, main table.summary-table #cart-item-added table .pricing, main table.summary-table #cart-item-added table .total {
  float: right;
  clear: right;
  width: 57%;
}
main table.summary-table .order-summary .item-detail, main table.summary-table .order-summary .qty, main table.summary-table .order-summary .pricing, main table.summary-table .order-summary .total {
  float: right;
  clear: right;
  width: 57%;
}
main table.summary-table main table.summary-table .total, main table.summary-table main table.summary-table .pricing, main table.summary-table main table.summary-table .qty {
  margin-top: 0.5rem;
}
main table.summary-table #cart-item-added table .actions ul, main table.summary-table #cart-item-added table .actions li {
  margin-bottom: 0;
}
main table.summary-table #cart-item-added table .total, main table.summary-table #cart-item-added table .pricing, main table.summary-table #cart-item-added table .qty {
  margin-top: 0.5rem;
}
main table.summary-table .order-summary .actions ul, main table.summary-table .order-summary .actions li {
  margin-bottom: 0;
}
main table.summary-table .order-summary .total, main table.summary-table .order-summary .pricing, main table.summary-table .order-summary .qty {
  margin-top: 0.5rem;
}
main table.summary-table .pricing, main table.summary-table #cart-item-added table .pricing, main table.summary-table .order-summary .pricing {
  font-weight: 700;
}
main table.summary-table .pricing .price, main table.summary-table #cart-item-added table .pricing .price, main table.summary-table .order-summary .pricing .price {
  margin-bottom: 0;
}
main table.summary-table .total .price-display:before, main table.summary-table #cart-item-added table .total .price-display:before, main table.summary-table .order-summary .total .price-display:before {
  content: "Sub Total: ";
}
main table.summary-table .total .price, main table.summary-table #cart-item-added table .total .price, main table.summary-table .order-summary .total .price {
  margin-bottom: 0;
}
main table.summary-table .qty input, main table.summary-table #cart-item-added table .qty input, main table.summary-table .order-summary .qty input {
  text-align: center;
}
main table.summary-table .actions, main table.summary-table #cart-item-added table .actions, main table.summary-table .order-summary .actions {
  clear: right;
  width: 55%;
  float: right;
}
main table.summary-table .actions .remove, main table.summary-table #cart-item-added table .actions .remove, main table.summary-table .order-summary .actions .remove {
  position: absolute;
  right: 0;
  top: 0;
}
main table.summary-table .item-detail {
  text-align: left;
  border-top: none;
}
main table.summary-table .qty input {
  width: 18%;
  display: inline;
}

#cart-item-added table tr:before, #cart-item-added table tr:after {
  content: "";
  display: table;
}
#cart-item-added table tr:after {
  clear: both;
}

.order-summary tr:before, .order-summary tr:after {
  content: "";
  display: table;
}
.order-summary tr:after {
  clear: both;
}

main table.summary-table tr:after, #cart-item-added table tr:after, .order-summary tr:after {
  clear: both;
}

main table.summary-table td, #cart-item-added table td, .order-summary td {
  display: block;
  padding: 0;
  border-bottom-width: 0;
}

main table.summary-table th, #cart-item-added table th, .order-summary th {
  display: none;
}

main table.summary-table .item figure, #cart-item-added table .item figure, .order-summary .item figure {
  width: 33%;
  margin-right: 0.5rem;
}

table.summary-table td.item figure, #cart-item-added table td.item figure {
  float: left;
}

table.summary-table td.item .brand, #cart-item-added table td.item .brand {
  margin-top: 0;
}

table.summary-table td.item .brand span, #cart-item-added table td.item .brand span {
  display: none;
}

table.summary-table td.item .selections p, #cart-item-added table td.item .selections p {
  margin-bottom: 0;
}

.cart-total {
  margin-top: 0.5rem;
}
.cart-total span:not(.hint) + span {
  float: right;
}
.cart-total .price-display span {
  font-weight: 400;
}
.cart-total ul {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.cart-total li {
  padding-bottom: 0.5rem;
  margin-bottom: 0;
  clear: both;
  font-size: 14px;
  letter-spacing: 1px;
  font-weight: lighter;
}
.cart-total li:before, .cart-total li:after {
  content: "";
  display: table;
}
.cart-total li:after {
  clear: both;
}
.cart-total .total {
  text-transform: uppercase;
  border-bottom: 1px solid var(--bs-gray-300);
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
.cart-total .total .price-display {
  font-weight: 700;
}
.cart-total .total .price-display span {
  font-weight: inherit;
}
.cart-total .freight-provider {
  padding-left: 0.5rem;
  display: none;
}
.cart-total .gstonorder span, .cart-total .hint {
  color: var(--bs-gray-600);
  font-size: 12px;
  font-weight: normal;
  letter-spacing: 0;
}
.cart-total .gstonorder {
  padding-bottom: 0;
}
.cart-total .gstonorder span:first-of-type {
  padding-right: 0.25rem;
}
.cart-total .gstonorder span + span {
  float: none;
}

.cart_summary_panel table {
  width: 100%;
}
.cart_summary_panel table.totals {
  margin-bottom: 10px;
}
.cart_summary_panel p.qty {
  margin-bottom: 0;
}
.cart_summary_panel td {
  vertical-align: bottom;
  border-bottom-width: 1px;
  padding: 2px 0;
}
.cart_summary_panel td.total {
  text-align: right;
}

.total {
  vertical-align: top;
}

#retrieve-password, #header-retrieve-password, #billing-form {
  display: none;
}

.complete .cart h2 {
  font-size: 1.25rem;
  font-weight: bold;
}

.hint-content:before, .hint-content:after {
  content: "";
  display: table;
}
.hint-content:after {
  clear: both;
}

.login.cartpage .error {
  margin-bottom: 20px;
}
.login.cartpage #main .cart-summary {
  display: none;
}

.delivery.cartpage .summary-block .modify a {
  width: 100%;
}

#sign-in li.email > label, #sign-in li.password > label {
  display: none;
}

@media (min-width: 768px) {
  .review .cart .summary-table thead th, .complete .cart .summary-table thead th {
    color: var(--bs-gray-600);
  }
  .review .cart .summary-table thead th.pricing, .review .cart .summary-table thead th.qty, .complete .cart .summary-table thead th.pricing, .complete .cart .summary-table thead th.qty {
    text-align: center;
  }
  .review .cart .summary-table thead th.total, .complete .cart .summary-table thead th.total {
    text-align: right;
  }
  .review .cart .summary-table .total .price-display, .complete .cart .summary-table .total .price-display {
    font-weight: bold;
  }
  .review .cart .summary-table tbody tr td.pricing, .review .cart .summary-table tbody tr td.qty, .complete .cart .summary-table tbody tr td.pricing, .complete .cart .summary-table tbody tr td.qty {
    text-align: center;
  }
  .review .cart .summary-table tbody tr td.total, .complete .cart .summary-table tbody tr td.total {
    text-align: right;
  }
  .review .cart .summary-table tbody td.actions, .complete .cart .summary-table tbody td.actions {
    float: none;
    border-bottom: none;
  }
  .review .cart .summary-table tbody .item, .complete .cart .summary-table tbody .item {
    padding: 23px 0px;
  }
  .review .cart .summary-table tbody .item figure, .complete .cart .summary-table tbody .item figure {
    width: 20%;
    margin-right: 4%;
  }
  .review .cart .summary-table tbody .item .item-detail h2, .complete .cart .summary-table tbody .item .item-detail h2 {
    width: 100%;
  }
  .review .cart .summary-table .item figure {
    margin-left: 8%;
  }
  .cartpage.login #main li.email, .cartpage.login #main li.password, .cartpage.login #main .options .btn, .cartpage.login .options span {
    width: 70%;
  }
  .cartpage .cart .next-previous {
    padding: 2rem 0 1rem;
    flex-direction: row;
    justify-content: space-between;
  }
  .security-logos {
    justify-content: flex-start;
  }
  .security-logos > span {
    width: 110px;
  }
  .security-logos .estarsecure {
    margin: 0 15px;
  }
  .login.cartpage .cart {
    width: 100%;
  }
  .delivery.cartpage main form fieldset .updateship, .delivery.cartpage main form fieldset .updatebill {
    width: 100% !important;
  }
  .delivery.cartpage main .delivery-method li {
    width: 100% !important;
  }
  main .cart {
    width: 70%;
    float: left;
  }
  .main-container .cart-summary {
    width: 23%;
    float: right;
    padding-top: 0px;
  }
  main .cart .cart-total {
    width: 36%;
    clear: right;
    float: right;
  }
  main .cart .cart-total span {
    font-size: 12px;
  }
  main .cart .masterpass-express, main .cart .afterpay {
    display: inline-block;
    margin-right: 1em;
  }
  main table.summary-table .total .price-display:before {
    content: "";
  }
  main table.summary-table tr {
    border: 0;
    margin: 0;
    padding: 0;
    display: table-row;
  }
  main .order-summary tr {
    border: 0;
    margin: 0;
    padding: 0;
    display: table-row;
  }
  main table.summary-table .total, main table.summary-table .actions {
    text-align: right;
  }
  main table.summary-table .pricing, main table.summary-table .total {
    width: 18%;
  }
  main table.summary-table .item-detail, main table.summary-table .qty, main table.summary-table .pricing, main table.summary-table .total {
    float: none;
    clear: none;
    width: auto;
  }
  main table.summary-table td, main table.summary-table th {
    display: table-cell;
    border-bottom-width: 1px;
    padding: 10px 0;
  }
  main .order-summary .item-detail, main .order-summary .qty, main .order-summary .pricing, main .order-summary .total {
    float: none;
    clear: none;
    width: auto;
  }
  main .order-summary th, main .order-summary td {
    display: table-cell;
  }
  main .order-summary td, main .order-summary th {
    border-bottom-width: 1px;
    padding: 10px 0;
  }
  main .order-summary .pricing, main .order-summary .total {
    width: 18%;
  }
  main .order-summary .total, main .order-summary .actions {
    text-align: right;
  }
  main table.summary-table td, main .order-summary td {
    padding-right: 5px;
    vertical-align: middle;
  }
  main table.summary-table tr:after, main .order-summary tr:after {
    content: "";
    display: none;
    clear: none;
  }
  main table.summary-table .item .item-detail, main .order-summary .item .item-detail {
    float: left;
    max-width: 62%;
  }
  main table.summary-table .actions, main .order-summary .actions {
    clear: none;
    width: auto;
    float: none;
  }
  main table.summary-table .actions .remove, main .order-summary .actions .remove {
    position: relative;
  }
  main table.summary-table .qty, main .order-summary .qty {
    text-align: center;
  }
  main table.summary-table .qty input, main .order-summary .qty input {
    width: 50px;
  }
  main table.summary-table .price.now, main .order-summary .price.now {
    padding-left: 0;
  }
  .cartpage #main .next-previous .btn, .cartpage #main .next-previous .next {
    min-width: 190px;
  }
  .cart-extras:before, .cart-extras:after {
    content: "";
    display: table;
  }
  .cart-extras:after {
    clear: both;
  }
  .hint-content .csc-type {
    float: left;
    width: 45%;
  }
  .hint-content .csc-type + .csc-type {
    margin-left: 10%;
  }
  .complete .cart .summary-table .qty span, .history .cart .summary-table .qty span, .review .cart .summary-table .qty span {
    display: none;
  }
}
@media (min-width: 1200px) {
  main .cart table.summary-table .item figure, main .cart table.summary-table .item .item-detail {
    float: none;
    display: inline-block;
  }
}
#zipMoney:hover {
  cursor: pointer;
}

/********** Payment Summary Page Remove Symbol Styling Start ************/
#main .summary-table .actions {
  position: static;
}
#main .summary-table .actions .remove {
  position: absolute;
  top: 6px;
  right: 0;
}

@media (min-width: 768px) {
  #main .summary-table .actions {
    padding: 0;
  }
  #main .summary-table .actions .remove {
    top: 50%;
    transform: translateY(-50%);
    right: auto;
    left: 0;
  }
}
/********** Payment Summary Page Remove Symbol Styling End ************/
.ui-front {
  z-index: 100;
}

.ui-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: block;
  outline: none;
}

.ui-widget-content {
  border: 1px solid #d9d9d9;
  background: #fff;
  color: #000;
}

.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default;
  -webkit-box-shadow: 0 5px 20px 2px #d9d9d9;
  -moz-box-shadow: 0 5px 20px 2px #d9d9d9;
  box-shadow: 0 5px 20px 2px #d9d9d9;
}
.ui-autocomplete li {
  cursor: pointer;
  line-height: 24px;
  color: #495057;
  text-decoration: none;
}
.ui-autocomplete li:hover {
  background-color: #e5e5e5;
}
.ui-autocomplete li, .ui-autocomplete li div {
  padding: 0.25rem;
}
.ui-autocomplete .autocomplete_header {
  cursor: auto;
}
.ui-autocomplete li:last-of-type, .ui-autocomplete li:last-of-type:hover {
  font-weight: 700;
  font-style: italic;
  background-color: #e5e5e5;
}

.autocomplete-loading {
  background: url(AutoCompleteLoading.gif) right center no-repeat #fff !important;
}

body.cartpage .delivery-store-details {
  display: none;
}
body.cartpage .delivery-store-details.active {
  display: block;
}
body.cartpage #clickandcollectlayer {
  display: none;
}
body.cartpage #clickandcollectlayer.active {
  display: block;
}
body.cartpage .cc-delivery-method .selected-store, body.cartpage .cc-delivery-method .store-availability-selected, body.cartpage .cc-delivery-method .changestore, body.cartpage .cc-delivery-method + fieldset .selected-store, body.cartpage .cc-delivery-method + fieldset .store-availability-selected, body.cartpage .cc-delivery-method + fieldset .changestore {
  display: none;
}
body.cartpage .cc-delivery-method.storeselected .selected-store, body.cartpage .cc-delivery-method.storeselected .store-availability-selected, body.cartpage .cc-delivery-method.storeselected .changestore, body.cartpage .cc-delivery-method.storeselected + fieldset .selected-store, body.cartpage .cc-delivery-method.storeselected + fieldset .store-availability-selected, body.cartpage .cc-delivery-method.storeselected + fieldset .changestore {
  display: block;
}
body.cartpage .nominated-person, body.cartpage .cc-search-info, body.cartpage li.cc-freightmethod {
  display: none;
}
body.cartpage.clickcollect .delivery-method, body.cartpage.clickcollect .delivery-instructions, body.cartpage.clickcollect li.sameas {
  display: none;
}
body.cartpage.clickcollect .nominated-person {
  display: block;
}
body.cartpage.clickcollect .cc-delivery-method:not(.storeselected) ~ .cc-search-info {
  display: block;
}
body.cartpage.clickcollect .cc-delivery-method + .delivery-info {
  display: none;
}
body.cartpage.clickcollect .cc-delivery-method + .delivery-info legend {
  display: none;
}
body.cartpage.clickcollect .cc-delivery-method + .delivery-info ol {
  margin-top: 1rem;
}
body.cartpage.clickcollect .cc-delivery-method.storeselected + .delivery-info {
  display: block;
}

body.cartpage .cc-delivery-method {
  width: 100%;
  min-width: 223px;
}
body.cartpage .delivery-type {
  display: block !important;
}
body.cartpage .delivery-type input[type=radio] {
  position: absolute;
  left: -999em;
}
body.cartpage .delivery-type label {
  width: 100%;
  font-weight: 600;
  cursor: pointer;
  border: 1px #e5e5e5 solid;
  padding: 1rem 0;
  text-align: center;
  margin: 0;
}
body.cartpage .delivery-type label span {
  padding: 0;
}
body.cartpage .delivery-type li {
  width: 50%;
  margin: 0;
}
body.cartpage .delivery-type li.collect {
  float: left;
  padding-right: 0.25rem;
}
body.cartpage .delivery-type li.collect label ~ * {
  padding-top: 0.5rem;
  width: calc(200% + 10px);
}
body.cartpage .delivery-type li.ship {
  float: right;
  padding-left: 0.25rem;
}
body.cartpage .delivery-type li.ship label ~ * {
  display: none;
}
body.cartpage .delivery-type li.active label {
  border-bottom-color: #fff;
  position: relative;
  z-index: 1;
}
body.cartpage .delivery-type li:not(.active) label {
  background: #e5e5e5;
}

body.delivery .cc-delivery-method {
  margin-top: 1rem;
}
body.delivery .cc-delivery-method ~ fieldset:not(.interest-groups):not(.gift-info):not(.repeat-order) {
  border: 0 solid;
  border-color: #e5e5e5;
  border-left-width: 1px;
  border-right-width: 1px;
  padding: 0 1rem;
  margin: 0;
}
body.delivery .cc-delivery-method ~ fieldset:not(.interest-groups):not(.gift-info):not(.repeat-order) legend {
  float: left;
  width: 100%;
  margin-top: 1rem;
}
body.delivery .cc-delivery-method ~ fieldset:not(.interest-groups):not(.gift-info):not(.repeat-order) ol {
  clear: left;
  margin-bottom: 1rem;
}
body.delivery .cc-delivery-method ~ fieldset:not(.interest-groups):not(.gift-info):not(.repeat-order).delivery-info, body.delivery .cc-delivery-method ~ fieldset:not(.interest-groups):not(.gift-info):not(.repeat-order).cc-search-info {
  border-top-width: 1px;
  position: relative;
  top: -1px;
}
body.delivery .cc-delivery-method ~ fieldset:not(.interest-groups):not(.gift-info):not(.repeat-order).nominated-person, body.delivery .cc-delivery-method ~ fieldset:not(.interest-groups):not(.gift-info):not(.repeat-order).delivery-instructions {
  border-bottom-width: 1px;
  margin-bottom: 1rem;
}

body.review .delivery-type li.ship.active label {
  border-bottom-color: #e5e5e5;
}
body.review li.collect.active label ~ * {
  border-left-width: 1px;
  border-right-width: 1px;
  margin: 0;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-bottom: 1rem;
}
body.review li.collect.active .store-availability {
  display: none;
}
body.review li.collect.active .store-availability-selected {
  border-top-width: 1px;
  padding-top: 1rem;
  position: relative;
  top: -1px;
}
body.review li.collect.active a.changestore {
  border-bottom-width: 1px;
}
body.review #clickandcollectlayer {
  clear: both;
  border: 1px solid #e5e5e5;
  padding: 1rem;
  position: relative;
  top: -1px;
}

body.cartpage .selected-store span {
  display: block;
  text-align: left;
}
body.cartpage .selected-store span:empty {
  display: none;
}
body.cartpage .selected-store span:after {
  content: ", ";
}
body.cartpage .selected-store span.storepostcode:after {
  content: "";
}
body.cartpage .selected-store span.storepostcode ~ * {
  display: none;
}
body.cartpage .selected-store.loading {
  display: block;
  min-height: 40px;
  background: url("ajax-loader.gif") center no-repeat;
}
body.cartpage .selected-store.loading * {
  display: none;
}
body.cartpage .cc-search ul {
  flex-direction: column;
}
body.cartpage .cc-search li {
  width: 100%;
}
body.cartpage .cc-search a.opening-hours {
  display: none;
}
body.cartpage #clickandcollectlayer h3 {
  font-size: 1.25rem;
  font-weight: 400;
  margin-top: 1rem;
}
body.cartpage #clickandcollectlayer .store-finder a.btn {
  width: 100%;
}
body.cartpage.review .cc-delivery-method legend {
  display: none;
}
body.cartpage.delivery .cc-delivery-method .selected-store, body.cartpage.delivery .cc-delivery-method .changestore, body.cartpage.delivery .cc-delivery-method .no-store-selected {
  display: none;
}
body.cartpage.delivery .cc-delivery-method .delivery-type p {
  display: none;
}
body.cartpage.delivery .ccNominate {
  width: 100%;
}
body.cartpage.delivery .delivery-store-details {
  margin: 0;
  width: 100%;
}
body.cartpage.delivery .delivery-store-details.loading {
  height: 60px;
  display: block;
  background: url(ajax-loader.gif) center no-repeat;
}
body.cartpage.delivery .delivery-store-details.loading * {
  display: none;
}

.storefinder-modal.clickandcollect .locate-info.results {
  margin-top: 0.5rem;
}
.storefinder-modal.clickandcollect li.store {
  display: flex;
  position: relative;
  flex-wrap: wrap;
  padding: 0.25rem 130px 0.25rem 0.25rem;
  margin: 0 0 0.25rem 0;
}
.storefinder-modal.clickandcollect li.store h3 {
  width: 30px;
}
.storefinder-modal.clickandcollect li.store .store-details {
  width: 100%;
}
.storefinder-modal.clickandcollect li.store .store-name {
  flex: 1;
}
.storefinder-modal.clickandcollect .store-select {
  position: absolute;
  top: 0;
  right: 0;
}
.storefinder-modal.clickandcollect .store-select a {
  font-weight: 700;
  text-decoration: underline;
}
.storefinder-modal.clickandcollect div.store .store-name {
  margin-bottom: 1rem;
}
.storefinder-modal.clickandcollect div.store ul.store {
  list-style: none;
  padding: 0;
  margin: 0;
}
.storefinder-modal.clickandcollect div.store .store-details.content {
  display: none;
}

@media (min-width: 992px) {
  .cartpage.review .cc-delivery-method {
    width: 50%;
    clear: right;
    float: right;
  }
  .cartpage.review .cc-delivery-method .delivery-type {
    display: flex;
    justify-content: space-between;
  }
  .cartpage #clickandcollectlayer .store-finder a.btn {
    width: 30%;
  }
  .cartpage li.ccNominate + li {
    width: 100% !important;
  }
}
.shipping-calculator .delivery-method.loading {
  height: 40px;
  background: url("ajax-loader.gif") center no-repeat;
}

@media (min-width: 992px) {
  .shipping-calculator {
    width: 50%;
    float: left;
  }
  .shipping-calculator fieldset ul {
    flex-direction: column;
  }
  .shipping-calculator fieldset li {
    width: 100%;
  }
  .shipping-calculator .delivery-method li {
    margin: 0;
  }
}
/* ========= SHOPPING CART COMPONENT END ========= */

/* ========= WISHLIST COMPONENT ========= */
.wishlist.wishlist-public .page-container > .next-previous {
  display: none;
}
.wishlist .wishlist-summary {
  margin-bottom: 1rem;
}
.wishlist .form-item:not(.quantity):not(.update-quantity):not(.cartbutton) {
  margin-bottom: 0;
}
.wishlist .add-to-cart .cart-options {
  padding: 0;
}
.wishlist .product {
  position: relative;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top-width: 1px;
}
.wishlist .product:last-of-type {
  border-bottom-width: 1px;
  padding-bottom: 1rem;
}
.wishlist .email-note {
  width: 100%;
}
.wishlist .email-note a {
  text-decoration: underline;
}
.wishlist .childproducts .product-content {
  width: auto;
  float: none;
  clear: both;
}
.wishlist .product-img {
  width: 64%;
  margin: 0px auto 1rem auto;
}
.wishlist .product-content {
  width: 100%;
  float: right;
  margin: 0;
  clear: none;
  position: relative;
}
.wishlist .product-content .form-item.quantity {
  width: 38%;
  float: left;
  margin-right: 50%;
}
.wishlist .product-content h2 {
  padding-right: 1.5rem;
}
.wishlist .product-content h2 a {
  color: var(--bs-black);
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
}
.wishlist .product-content .pricing {
  text-align: left;
}
.wishlist .product-content .add-to-cart {
  position: static;
}
.wishlist .product-content .add-to-cart .cart-options {
  position: static;
  line-height: normal;
}
.wishlist .product-content .add-to-cart .cart-options .form-item > label {
  display: block;
}
.wishlist .product-content .add-to-cart .cart-options .form-item.colour {
  width: 50%;
  float: left;
  padding-right: 0.25rem;
}
.wishlist .product-content .add-to-cart .cart-options .form-item.size {
  width: 50%;
  float: left;
}
.wishlist .product-content .add-to-cart .cart-options .form-item > label {
  font-weight: bold;
}
.wishlist .product-content .add-to-cart .btn {
  width: 100%;
  color: var(--bs-white);
}
.wishlist .product-content .add-to-cart .note {
  margin-bottom: 0.5rem;
}
.wishlist .product-content .add-to-cart .cartbutton {
  position: static;
  width: 100%;
}
.wishlist .product-content .add-to-cart .cartbutton a {
  position: absolute;
  top: 19px;
  right: 10px;
  line-height: 1;
}
.wishlist .product-content .add-to-cart button[disabled] {
  display: none;
}
.wishlist .product-content .form-item ul {
  display: inline-block;
}
.wishlist .details-occassion {
  margin-top: 0;
}
.wishlist .details-occassion legend {
  display: none;
}
.wishlist .note {
  display: block;
  margin-bottom: 0.25rem;
}

.wishlist-popup form fieldset ol {
  flex-direction: column;
}
.wishlist-popup form fieldset ol li {
  width: 100%;
  margin-bottom: 0.5rem;
}

@media (min-width: 768px) {
  .wishlist .childproducts .product-content {
    width: 100%;
  }
  .wishlist .product-content .form-item.quantity {
    float: left;
  }
  .wishlist .page-container button {
    width: 100%;
  }
  .wishlist .product-img {
    float: none;
  }
  .wishlist .share-wishlist-btn {
    margin-bottom: 1rem;
  }
}
@media (min-width: 1200px) {
  .wishlist .page-container .wishlist-summary {
    width: 65%;
  }
  .wishlist .page-container .product-img {
    width: 35%;
    float: left;
  }
  .wishlist .page-container .product-content {
    width: 55%;
    float: right;
    margin: 0;
    clear: none;
  }
}
/* Print Media Query */
@page {
  size: 21cm 29.7cm;
  margin: 0;
}
@media print {
  * {
    -webkit-transition: none !important;
    transition: none !important;
  }
  html {
    margin: 0;
  }
  body.wishlist {
    margin: 0;
    /* remove the urls added after each anchor tag */
    /* remove elements for print such as the header, footer, breadcrumbs, reviews, product price, freight estimator and cross-sell */
  }
  body.wishlist a[href]:after {
    content: " ";
  }
  body.wishlist #page-header, body.wishlist #breadcrumbs, body.wishlist .alternate-images, body.wishlist .social-media, body.wishlist .reviews, body.wishlist .cross-sell, body.wishlist #freight-estimator, body.wishlist #page-footer, body.wishlist .page-container > form, body.wishlist #left-nav {
    display: none;
  }
  body.wishlist #page-content {
    width: 210mm;
  }
  body.wishlist .page-container h1 {
    text-align: center;
    width: 190mm;
  }
  body.wishlist .product {
    page-break-inside: avoid;
  }
  body.wishlist #main {
    width: 190mm;
    min-height: 296mm;
    margin: 0mm 10mm;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
    padding-top: 3mm;
  }
  body.wishlist #main .main-container {
    padding: 0;
  }
  body.wishlist #main .main-container .product-img {
    width: 65mm;
    margin-right: 0mm;
  }
  body.wishlist #main .main-container .product-img img {
    width: 65mm;
  }
  body.wishlist #main .main-container .product-content {
    width: 100mm;
  }
  body.wishlist #main .main-container .product-img, body.wishlist #main .main-container .product-content {
    float: left;
    display: table-cell;
  }
  body.wishlist #main .main-container .wishlist-summary {
    width: 210mm;
  }
  body.wishlist #main .main-container .add-to-cart .cart-options .form-item.cartbutton, body.wishlist #main .main-container .add-to-cart .cart-options .form-item.update-quantity {
    display: none;
  }
  body.wishlist #main .main-container .add-to-cart .cart-options .form-item.quantity {
    float: left;
  }
  body.wishlist #main .main-container .add-to-cart .cart-options .form-item.quantity .plus, body.wishlist #main .main-container .add-to-cart .cart-options .form-item.quantity .minus {
    display: none;
  }
  body.wishlist #main .main-container .add-to-cart .cart-options .form-item.quantity:before {
    content: "QUANTITY";
    display: block;
    font-weight: 600;
    margin-bottom: 2mm;
  }
  body.wishlist #main .main-container .add-to-cart .cart-options .note, body.wishlist #main .main-container .add-to-cart .cart-options .btn.popup-link {
    display: none;
  }
}
/* ========= WISHLIST COMPONENT END ========= */

/******** GIFT VOUCHERS COMPONENT: START	********/
.giftvoucher .next-previous {
  display: block;
}
.giftvoucher .instructions .intro {
  font-weight: 700;
  font-style: italic;
}
.giftvoucher .gift-voucher:not(:-moz-handler-blocked) fieldset {
  display: table-cell;
}
.giftvoucher .gift-voucher .voucher-carousel {
  position: relative;
  margin-bottom: 0;
}
.giftvoucher .gift-voucher .voucher-carousel li {
  margin-bottom: 0;
  position: relative;
}
.giftvoucher .gift-voucher .voucher-carousel li input[type=radio] {
  position: absolute;
  z-index: -2;
  margin: 0;
}
.giftvoucher .gift-voucher .voucher-carousel li label {
  width: 100%;
}
.giftvoucher .gift-voucher .voucher-carousel li label img {
  width: 100%;
}
.giftvoucher #main fieldset ol > li.value {
  width: 100%;
}
.giftvoucher .gift-voucher .value input {
  width: 40%;
  margin-left: 0.25rem;
  display: inline-block;
}
.giftvoucher .gift-voucher figure {
  margin: 1rem 0;
}
.giftvoucher .gift-voucher figure img {
  width: 100%;
  max-width: 530px;
}
.giftvoucher .next-previous button {
  margin-bottom: 1rem;
}
.giftvoucher textarea {
  min-height: 110px;
}

@media (min-width: 768px) {
  .giftvoucher .gift-voucher .value input {
    width: 30%;
  }
  .giftvoucher .gift-voucher fieldset ol > li.value {
    width: 100%;
  }
  .giftvoucher .gift-voucher fieldset ol,
  .redeem-voucher .gift-voucher fieldset ol {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
  }
  .giftvoucher .gift-voucher fieldset ol > li,
  .redeem-voucher .gift-voucher fieldset ol > li {
    width: 47%;
  }
  .voucher-item .selections {
    font-size: 0.875rem;
  }
  .giftvoucher #main .gift-voucher .value input, .redeem-voucher #main .gift-voucher .value input {
    width: 30%;
  }
  .giftvoucher #main fieldset ol, .redeem-voucher #main fieldset ol {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
  }
  .giftvoucher #main fieldset ol > li, .redeem-voucher #main fieldset ol > li {
    width: 47%;
  }
  .giftvoucher #main fieldset label, .redeem-voucher #main fieldset label {
    width: 100%;
  }
  .giftvoucher #main .next-previous .next, .redeem-voucher #main .next-previous .next {
    float: right;
  }
  .giftvoucher #main .next-previous .prev, .redeem-voucher #main .next-previous .prev {
    float: left;
  }
}
/******** GIFT VOUCHERS COMPONENT: END	********/

/* ========= CUSTOM FORM CONTACT COMPONENT ========= */
.contact-form-holder {
  border-top-width: 1px;
  padding-top: 0.5rem;
  margin-top: 0.5rem;
}
.contact-form-holder input[type=tel] {
  width: 30%;
  display: inline-block;
}
.contact-form-holder input[type=tel]:last-of-type {
  margin-right: 0;
}

.customform .main form fieldset ol, .customform .main form fieldset ul {
  flex-direction: column;
}
.customform .main form fieldset li {
  width: 100%;
}
.customform .main form .telephone input[type=tel] {
  width: 100%;
}
.customform .main li input, .customform .main li textarea {
  font-size: 0.875rem;
}
.customform .main h3 {
  margin-top: 0.25rem;
  font-size: 1.5rem;
  color: #d9d9d9;
}
.customform .main #contact-form .error {
  color: #d9534f;
}
.customform .main #page-content {
  width: 100%;
}
.customform .main #left-nav {
  display: none;
}
.customform .main div[class$=-form-holder] {
  overflow: auto;
}

@media (min-width: 576px) {
  .contact-form-holder input[type=tel] {
    width: 32%;
    margin-right: 2%;
  }
}
@media (min-width: 768px) {
  .contact-form-holder input[type=tel] {
    width: 32%;
    margin-right: 2%;
  }
}
/*** DESKTOP ***/
@media (min-width: 1200px) {
  .customform .main:before, .customform .main:after {
    content: "";
    display: table;
  }
  .customform .main:after {
    clear: both;
  }
  .customform .main .main-container h1 {
    margin-bottom: 1rem;
  }
  .customform .main .page-container .content {
    float: left;
    width: 45%;
  }
  .contact-form-holder {
    float: right;
    width: 50%;
    margin-left: 5%;
    border-top-width: 0;
    padding-top: 0;
    margin-top: 0;
  }
  .contact-form-holder fieldset {
    margin-top: 0;
  }
  .contact-form-holder input[type=tel] {
    width: 22.5%;
    margin-right: 1.25%;
  }
  .contact-form-holder .security-message label, .contact-form-holder .security-code label {
    width: 75%;
  }
  .contact-form-holder .security-code input, .contact-form-holder .security-message .security-code img {
    width: 20%;
  }
}
/* ========= CUSTOM FORM COMPONENT END ========= */


/* ========= STORE LOCATOR COMPONENT ========= */
.storelocator .store:before, .storelocator .store:after {
  content: "";
  display: table;
}
.storelocator .store:after {
  clear: both;
}
.storelocator #page-content {
  float: none;
  width: 100%;
}
.storelocator #left-nav {
  display: none;
}
.storelocator .page-container ul li {
  position: relative;
}
.storelocator .page-container ul ul li a, .storelocator li.location li a {
  padding-left: 1rem;
}
.storelocator .page-container li.location ul li {
  border: 0;
}
.storelocator .page-container ul {
  list-style: none;
  padding: 0;
}
.storelocator .page-container ul ul ul {
  padding-left: 0 !important;
}
.storelocator .page-container ul li > a {
  width: 100%;
  display: block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.storelocator .page-container ul li:not(.store-link) > a {
  color: #000;
  text-decoration: none;
  padding: 1rem 0;
  position: relative;
}
.storelocator .page-container ul li:not(.store-link) > a:hover {
  text-decoration: underline;
}
.storelocator .store-locator > li > a {
  text-transform: uppercase;
}
.storelocator .store-locator > li > a, .storelocator .store-locator > li > ul > .eso-accordion-contents > li > a {
  font-weight: 700;
}
.storelocator .store-locator > li, .storelocator .store-locator > li > ul > .eso-accordion-contents > li {
  border-bottom-width: 1px;
}
.storelocator .store-locator {
  padding-left: 0;
  border-top-width: 1px;
}
.storelocator .store-locator .eso-accordion-trigger {
  line-height: 1;
}
.storelocator .store-map-holder {
  position: relative;
  margin-top: 0;
  padding-top: 100%;
  width: 100%;
}
.storelocator #store-map {
  margin-top: 2rem;
}

.storedetail .store h2 {
  margin-top: 1rem;
}
.storedetail .store .images {
  padding-top: 25px;
  width: 100%;
  clear: both;
}
.storedetail .store .images ul {
  margin: 0 -5px;
  display: flex;
  flex-flow: row wrap;
  list-style: none;
}
.storedetail .store .images ul:before, .storedetail .store .images ul:after {
  content: "";
  display: table;
}
.storedetail .store .images ul:after {
  clear: both;
}
.storedetail .store .images ul li {
  width: 48%;
  margin: 1%;
}
.storedetail .store .images ul img {
  width: 100%;
  height: auto;
}

.store .content {
  padding: 0;
  width: 100%;
  clear: left;
}
.store .content img {
  width: 100%;
  height: auto;
}

.store > .content {
  margin-bottom: 20px;
  margin-top: 10px;
  float: left;
}

@media (max-width: 767.98px) {
  #store-map button[title~=fullscreen] {
    display: none;
  }
}
@media (min-width: 768px) {
  .storelocator ul.store-locator {
    padding: 0;
    width: 35%;
    float: left;
  }
  .storelocator .store-map-holder {
    width: 60%;
    float: right;
    padding-top: 45%;
  }
  .storelocator #store-map {
    margin-top: 0;
  }
  .storedetail .store .images {
    float: left;
    width: 300px;
    clear: left;
  }
  .store .address, .store .opening-hours, .store .directions {
    float: left;
    padding: 0;
    width: 300px;
    clear: left;
  }
  .store .content {
    width: 270px;
  }
  .store .content img {
    width: auto;
    max-width: 100%;
  }
}
@media (min-width: 1200px) {
  .storelocator .store-map-holder {
    padding-top: 66%;
  }
}
@media (min-width: 768px) and (max-width: 1199.98px) {
  .storelocator .store-map-holder {
    width: 55%;
  }
}
/* ========= STORE LOCATOR COMPONENT END ========= */
/* ========= BLOG COMPONENT ========= */
/***************************************************/
/********** Blog Layout 1 - Standard ***************/
/***************************************************/
.blogpage .main {
  background-color: #f6f5f4;
  /*Profile*/
}
.blogpage .main #page-content {
  width: 100%;
}
.blogpage .main #left-nav, .blogpage .main #breadcrumbs {
  display: none;
}
.blogpage .main .page-container {
  display: flex;
  flex-direction: column-reverse;
}
.blogpage .main .page-container > h1:first-of-type {
  display: none;
  padding: 0;
  text-align: left;
  left: 0;
  margin-top: 1rem;
  margin-bottom: 1rem;
  position: relative;
  top: auto;
  width: 80%;
  z-index: 2;
}
.blogpage .main .blog-header {
  margin-bottom: 1rem;
}
.blogpage .main span.security-code {
  display: inline-block;
}
.blogpage .main .toolbar {
  text-align: center;
}
.blogpage .main .page-numbers {
  clear: both;
}
.blogpage .main .page-numbers ul li.on {
  background-color: #e5e5e5;
}
.blogpage .main .blog-sidebar {
  width: 100%;
  margin-bottom: 1rem;
}
.blogpage .main .blog-sidebar ul {
  margin-bottom: 1rem;
  padding-left: 0;
  list-style: none;
}
.blogpage .main .blog-sidebar ul li {
  margin-bottom: 1rem;
}
.blogpage .main .blog-sidebar ul li a, .blogpage .main .blog-sidebar ul li span, .blogpage .main .blog-sidebar ul li h4 {
  margin-right: 0.25rem;
  font-size: 0.875rem;
}
.blogpage .main .blog-sidebar ul li .post-date, .blogpage .main .blog-sidebar ul li .post-author {
  font-size: 0.875rem;
}
.blogpage .main .blog-sidebar ul li a.post-author {
  margin-bottom: 0.5rem;
}
.blogpage .main .blog-sidebar ul li a.post-author:before {
  content: "By ";
}
.blogpage .main .blog-sidebar ul li a.post-name {
  display: block;
}
.blogpage .main .blog-sidebar .show-more-trigger {
  cursor: pointer;
  text-decoration: underline;
}
.blogpage .main .blog-sidebar .show-more-trigger:hover {
  text-decoration: underline;
  color: #000;
}
.blogpage .main .blog-sidebar .post-date {
  display: inline-block;
  margin-right: 0.25rem;
  font-weight: 300;
  margin-bottom: 0.25rem;
}
.blogpage .main .blog-sidebar .more-link {
  cursor: pointer;
}
.blogpage .main .blog-sidebar .sidebar-section {
  position: relative;
  border-bottom-width: 1px;
  padding: 0.25rem 0;
}
.blogpage .main .blog-sidebar .sidebar-section:first-of-type {
  padding-top: 0;
}
@media (min-width: 992px) {
  .blogpage .main .blog-sidebar .sidebar-section {
    padding: 1rem 0;
  }
}
.blogpage .main .blog-sidebar .sidebar-section h3 {
  cursor: pointer;
  margin: 0;
  padding: 0.5rem 0;
  font-size: 1.25rem;
  position: relative;
}
.blogpage .main .blog-sidebar .sidebar-section h4 {
  margin: 0;
  padding: 0.25rem 0;
}
.blogpage .main .blog-sidebar .sidebar-section h4 a {
  font-size: 1rem;
  font-family: "Montserrat", Helvetica, Arial, sans-serif;
  font-weight: 300;
}
.blogpage .main .blog-sidebar .sidebar-section:last-child {
  border-bottom-width: 1px;
  display: none;
}
.blogpage .main .blog-sidebar .sidebar-section .products {
  border-bottom: 0;
  padding-bottom: 0;
}
.blogpage .main .blog-sidebar .sidebar-section .products .item {
  width: 100%;
  margin: 0;
  float: none;
}
.blogpage .main .blog-sidebar .sidebar-section .products .item .options {
  display: none;
}
.blogpage .main .blog-sidebar .sidebar-section .products .item .buy-now {
  float: none;
}
.blogpage .main .blog-sidebar .sidebar-section .products .item button {
  min-width: 100%;
}
.blogpage .main .blog-sidebar .blogger-profile .blogger-link {
  display: none;
}
.blogpage .main .blog-sidebar .blogger-profile figure {
  display: none;
}
.blogpage .main .blog-sidebar .blogger-profile h4 {
  font-size: 0.875rem;
  font-weight: 400;
}
.blogpage .main .blog-content {
  width: 100%;
  float: left;
}
.blogpage .main .blog-content .blogger-name {
  margin-left: 0.25rem;
}
.blogpage .main .blog-content figure img {
  display: none;
}
.blogpage .main .blog-content .meta-data p {
  margin-right: 0.5rem;
}
.blogpage .main .blog-content .meta-data span, .blogpage .main .blog-content .meta-data a {
  margin-right: 0.25rem;
}
.blogpage .main .blog-content .post-date, .blogpage .main .blog-content .post-author {
  display: inline-block;
  margin-right: 0.5rem;
  font-weight: 700;
}
.blogpage .main .blog-content .blog-list-item {
  margin: 0 0 2rem 0;
  border-bottom-width: 4px;
}
.blogpage .main .blog-content .blog-list-item h2 {
  margin-bottom: 0;
}
.blogpage .main .blog-content .blog-list-item h2 a {
  color: #000;
  margin-bottom: 0.5rem;
  display: block;
}
.blogpage .main .blog-content .blog-list-item .post-author {
  font-weight: 700;
}
.blogpage .main .blog-content .blog-list-item .post-author:before, .blogpage .main .blog-content .blog-list-item .post-author:after {
  content: "";
  display: table;
}
.blogpage .main .blog-content .blog-list-item .post-author:after {
  clear: both;
}
.blogpage .main .blog-content .blog-list-item img {
  width: 100%;
  height: auto;
}
.blogpage .main .blog-content .post-link, .blogpage .main .blog-content .entry {
  margin: 1rem 0;
}
.blogpage .main .blog-content .blog-list-item:first-child {
  border-top-width: 1px;
  margin-top: 1rem;
  padding-top: 0.5rem;
}
.blogpage .main .blog-content .post-navigation > div {
  display: inline-block;
}
.blogpage .main .blog-content .post-navigation span {
  display: none;
  margin-right: 0.25rem;
}
.blogpage .main .blog-content .post-navigation .previous a, .blogpage .main .blog-content .post-navigation .next a {
  background: url(sprite.png) center -1021px no-repeat;
  background-size: 20px;
}
.blogpage .main .blog-content .post-navigation .previous a {
  padding-left: 1rem;
  background-position: -5px -221px;
}
.blogpage .main .blog-content .post-navigation .next a {
  padding-right: 1rem;
  background-position: 102% -190px;
}
.blogpage .main .blog-content .post-navigation .next {
  float: right;
}
.blogpage .main .blog-content #comments {
  margin: 2rem 0 0;
}
.blogpage .main .blog-content .blog-reply:before, .blogpage .main .blog-content .blog-reply:after {
  content: "";
  display: table;
}
.blogpage .main .blog-content .blog-reply:after {
  clear: both;
}
.blogpage .main .blog-content .blog-reply h3 {
  font-size: 1.5rem;
}
.blogpage .main .blog-content .blog-reply button {
  float: right;
}
.blogpage .main .blog-content .blog-reply li.notify label, .blogpage .main .blog-content .blog-reply li.updates label {
  font-size: 0.875rem;
  font-weight: 400;
}
.blogpage .main .blog-content input[type=checkbox] {
  margin-top: 0;
  vertical-align: middle;
}
.blogpage .main .blog-content .reply-link {
  text-align: right;
}
.blogpage .main .subscriptions-table {
  width: 100%;
  margin-bottom: 1rem;
}
.blogpage .main .subscriptions-table thead {
  display: none;
}
.blogpage .main .subscriptions-table tr {
  border-bottom-width: 1px;
  margin: 0;
  padding: 0.5rem 0 1rem;
  position: relative;
  display: block;
}
.blogpage .main .subscriptions-table td {
  padding: 0.25rem 0;
  display: block;
}
.blogpage .main .subscriptions-table td.subscription {
  font-weight: 700;
}
.blogpage .main .subscriptions-table td.actions {
  position: absolute;
  top: 10px;
  right: 0;
}
.blogpage .main .subscriptions-table select {
  width: 100%;
}
.blogpage .main button.btn.subscribe {
  margin-bottom: 0.5rem;
  width: 100%;
}
.blogpage .main .blog-comment {
  display: block;
  margin: 1rem 0;
  background-color: #f6f5f4;
  padding: 1rem;
  position: relative;
}
.blogpage .main .blog-comment:before, .blogpage .main .blog-comment:after {
  content: "";
  display: table;
}
.blogpage .main .blog-comment:after {
  clear: both;
}
.blogpage .main .blog-comment .blog-comment {
  border-width: 0 0 1px 3px;
}
.blogpage .main .blog-comment .blog-reply {
  display: none;
}
.blogpage .main .blog-comment .author, .blogpage .main .blog-comment .comment-date {
  font-weight: 700;
  display: inline-block;
  margin-right: 0.25rem;
}
.blogpage .main .blog-comment .comment-body {
  clear: both;
  margin-bottom: 1rem;
}
.blogpage .main .profile .blogger-profile {
  border-top-width: 1px;
  padding: 1rem 0;
}
.blogpage .main .profile .blogger-profile:before, .blogpage .main .profile .blogger-profile:after {
  content: "";
  display: table;
}
.blogpage .main .profile .blogger-profile:after {
  clear: both;
}
.blogpage .main .profile .blogger-profile h2, .blogpage .main .profile .blogger-description, .blogpage .main .profile .blog-recent {
  margin-top: 0;
  float: right;
  width: 65%;
}
.blogpage .main .profile .blogger-profile h3 {
  font-size: 1.5rem;
}
.blogpage .main .profile .blogger-profile figure {
  width: 30%;
  float: left;
  border-width: 1px;
}
.blogpage .main .profile .blogger-profile figure img {
  width: 100%;
  height: auto;
}
.blogpage .main .profile .blogger-profile .blog-recent ul {
  margin: 0 0 0.5rem 0;
}
.blogpage .main .profile .blogger-profile .blog-recent li {
  padding-bottom: 0.25rem;
}
.blogpage .main .profile .blogger-profile .blog-recent a, .blogpage .main .profile .blogger-profile .blog_recent span {
  padding: 0 0.25rem 0 0;
}

/*** IPAD + DESKTOP ***/
@media (min-width: 768px) {
  .blogpage .main .page-container {
    display: block;
  }
  .blogpage .main .page-container:before, .blogpage .main .page-container:after {
    content: "";
    display: table;
  }
  .blogpage .main .page-container:after {
    clear: both;
  }
  .blogpage .main .page-container > h1:first-of-type {
    display: block;
  }
  .blogpage .main .blog-content, .blogpage .main .blog.subscriptions {
    width: 70%;
    float: left;
  }
  .blogpage .main .blog-content {
    background-color: #fff;
    padding: 1.5rem;
    margin-bottom: 2rem;
  }
  .blogpage .main .blog-sidebar {
    width: 25%;
    float: right;
  }
  .blogpage .main .blog-sidebar .collapse {
    display: block !important;
    height: auto !important;
  }
  .blogpage .main .blog-sidebar .sidebar-section .eso-accordion-trigger .eso-accordion-indicator {
    display: none;
  }
  .blogpage .main .blog-sidebar .blog-subscribe {
    padding: 1rem;
    border-width: 1px;
    border-radius: 4px;
    margin-top: 1rem;
  }
  .blogpage .main .blog-sidebar .blog-subscribe h3 {
    border: 0;
    padding-top: 0;
  }
  .blogpage .main .blog-sidebar .blog-subscribe label {
    display: block;
    width: 100%;
  }
  .blogpage .main .blog-sidebar .blog-subscribe input, .blogpage .main .blog-sidebar .blog-subscribe button {
    width: 100%;
    min-width: 100%;
  }
  .blogpage .main .blog-comment button {
    float: right;
  }
  .blogpage .main .blog-content .blog-reply button {
    margin-top: -55px;
  }
  .blogpage .main .profile {
    width: 70%;
    float: left;
  }
  .blogpage .main .profile .blogger-profile:last-child {
    border-bottom-width: 1px;
  }
  .blogpage .main .profile .blogpage .profile .blogger-profile .blogger-description:empty {
    display: none;
  }
  .blogpage .main .profile .blogger-profile figure {
    float: left;
    max-width: 210px;
  }
  .blogpage .main .blog-content .blog-list-item img {
    width: auto;
    max-width: 100%;
  }
  .blogpage .main .subscriptions-table thead {
    display: table-header-group;
    background: #e5e5e5;
  }
  .blogpage .main .subscriptions-table thead th {
    padding: 0.25rem 0.5rem;
  }
  .blogpage .main .subscriptions-table tbody td {
    border-bottom-width: 1px;
  }
  .blogpage .main .subscriptions-table tr {
    display: table-row;
    padding: 0;
    border: 0;
  }
  .blogpage .main .subscriptions-table td {
    padding: 0.5rem;
    width: 25%;
    display: table-cell;
  }
  .blogpage .main .subscriptions-table td.subscription {
    font-weight: 400;
  }
  .blogpage .main .subscriptions-table td.actions {
    text-align: right;
    width: 10%;
    position: relative;
    top: 0;
  }
  .blogpage .main .subscriptions-table select {
    width: 100%;
  }
}
/*** DESKTOP ***/
@media (min-width: 1200px) {
  .blogpage .main .blog-reply li.notify, .blogpage .main li.updates {
    display: flex;
    align-items: center;
  }
  .blogpage .main .blog-reply li.notify label, .blogpage .main li.updates label {
    width: 90%;
    margin: 0;
  }
}
/***************************************************/
/****** Blog Layout 2 - Alternating Posts **********/
/***************************************************/
/* ========= BLOG COMPONENT ========= */
.competition {
  padding: 1rem;
}

.competition:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
}

.competition .progress {
  border: 1px solid #e5e5e5;
  margin-bottom: 1rem;
}

.competition .progress p {
  background: #e5e5e5;
  padding: 0.5rem 0;
  text-align: center;
}

.competition.login .progress p {
  width: 25%;
}

.competition.entry .progress p {
  width: 50%;
}

.competition.friends .progress p {
  width: 75%;
}

.competition.complete .progress p {
  width: 100%;
}

.competition form li {
  margin-bottom: 1rem;
}

.competition h2 {
  border-bottom: 1px solid #e5e5e5;
  padding: 0 0 0.5rem;
  margin-bottom: 1rem;
  font-size: 1.75rem;
}

.instructions {
  margin-bottom: 1rem;
}

.competition li.telephone input {
  width: 45%;
}

.competition .promo {
  margin-bottom: 1rem;
}

.competition .agreement label {
  width: 90%;
  display: inline-block;
  margin-left: 0.25rem;
}

.pagename + h1 {
  display: none;
}


/* ========= CAREERS COMPONENT ========= */
.career .career-item {
  border-bottom-width: 1px;
  padding-bottom: 1.5rem;
  margin-bottom: 1rem;
}
.career .list-date .open {
  margin-right: 1rem;
}
.career .list-date .open::before {
  content: "date opened: ";
}
.career .list-date .closing:before {
  content: "date closing: ";
}
.career .list-date .open:before, .career .list-date .closing:before, .career .list-status {
  font-weight: 700;
}
.career .list-status {
  text-transform: uppercase;
}
.career .list-date, .career .list-status {
  margin-bottom: 1rem;
}
.career .list-description {
  clear: both;
}
.career .cv textarea {
  height: 100px;
}

@media (min-width: 768px) {
  .career .list-date {
    float: right;
  }
  .career .cv textarea {
    height: 200px;
  }
  .career .security-code + security-code {
    margin-left: 29%;
  }
  .career .next-previous button {
    float: right;
  }
}
/* ========= CAREERS COMPONENT END ========= */

/* ========= ASSOCIATES COMPONENT ========= */
.cards {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  padding-left: 0;
  list-style: none;
}
.cards li {
  width: 100%;
  margin-bottom: 1rem;
}
.cards .card .card-content {
  transition: all 0.2s ease-in-out;
  background-color: #212529;
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #e5e5e5;
  font-size: 1.25rem;
  z-index: 1;
}
.cards .card .card-content ul {
  padding-left: 0;
  list-style: none;
  padding: 0.5rem 0.5rem 2rem 0.5rem;
}
.cards .card .card-content ul li {
  font-size: 1rem;
  margin-bottom: 0.25rem;
}
.cards .card .card-content ul li.associate-name {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 1rem;
}
.cards .card .card-content ul li .title {
  font-weight: 600;
  margin-right: 1rem;
  color: #adb5bd;
}
.cards .card .card-content ul li .value {
  margin-right: 20px;
  display: inline-block;
}
.cards .card figure {
  background-color: #fff;
  border: 2px solid #000;
  width: 48%;
  margin: 20px;
}
.cards .card figure img {
  width: 100%;
  height: auto;
}

/* if javascript is available, we want separate styles */
.cards.js-enabled .card {
  margin-bottom: 1rem;
  width: calc(33.3333333333% - 2rem);
}
.cards.js-enabled .card .card-title {
  width: 100%;
  padding: 1.5rem;
  position: relative;
  cursor: pointer;
  background-color: #9b9d9d;
  color: #e5e5e5;
  text-align: center;
  transition: all 0.2s ease-in-out;
  font-weight: 400;
  font-size: 1rem;
  min-height: 161px;
  margin-bottom: 0;
}
.cards.js-enabled .card .card-title:hover {
  background-color: #66bd9b;
}
.cards.js-enabled .card .card-title:after {
  transition: all 0.3s ease-in-out;
  content: "";
  opacity: 0;
}
.cards.js-enabled .card .card-trigger {
  width: 54px;
  height: 42px;
  margin: 0.5rem auto 0 auto;
  background-image: url(/Assets/sprite.png);
  background-position: -13px -1261px;
  background-size: 79px;
}
.cards.js-enabled .card.expanded .card-title:after {
  content: "";
  opacity: 1;
  display: block;
  height: 0;
  width: 0;
  position: absolute;
  bottom: -30px;
  left: calc(50% - 15px);
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 15px solid #e5e5e5;
}
.cards.js-enabled .card.expanded .card-content {
  max-height: 1000px;
  min-height: 200px;
  overflow: visible;
  margin-top: 2rem;
  opacity: 1;
}
.cards.js-enabled .card.expanded .card-trigger {
  background-position: -13px -1390px;
}
.cards.js-enabled .card.closed .card-content {
  max-height: 0;
  min-height: 0;
  overflow: hidden;
  margin-top: 0;
  opacity: 0;
}

.associate .main .error:empty {
  display: none;
}
.associate .main .loading {
  display: none;
  background-image: url(/Assets/ajax-loader.gif);
  height: 20px;
  width: 20px;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-size: 20px;
}
.associate .associates-landing-content .map-image {
  width: 100%;
  margin: 2rem auto;
}
.associate .associates-landing-content .map-image img {
  width: 100%;
  height: auto;
}
.associate .associates-search > form {
  text-align: center;
}
.associate .associates-search .toggle-types {
  margin-top: 1rem;
}
.associate .associates-search .filter legend {
  display: none;
}
.associate .associates-search .filter, .associate .associates-search .filter .filter-by {
  border-bottom-width: 0;
}
.associate .associates-search .filter fieldset {
  margin: 1rem 0;
}
.associate .associates-search .filter fieldset > ul {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  background-color: #e5e5e5;
  padding: 1%;
  width: 94%;
  margin: 0 auto;
}
.associate .associates-search .filter fieldset > ul > li {
  display: block;
  width: 100%;
  text-align: left;
  list-style-type: none;
  margin-right: 0.5rem;
  margin-bottom: 0;
}
.associate .associates-search .filter fieldset > ul > li label {
  padding-left: 1rem;
  text-indent: -1rem;
  margin-bottom: 0;
}
.associate .associates-search .filter fieldset > ul > li input {
  margin-right: 0.25rem;
}
.associate .associates-search .filter fieldset > ul > li:last-of-type {
  margin-right: 0;
}
.associate .associates-search .associates-search-bar {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.associate .associates-search .associates-search-bar input {
  width: 75%;
}
.associate .associates-search .associates-search-bar button {
  width: 25%;
}
.associate .associate-street-address,
.associate .associate-suburb,
.associate .associate-state,
.associate .associate-country,
.associate .associate-postcode,
.associate .associate-description {
  display: none;
}
.associate .associates-result-list a {
  color: #fff;
}
.associate .associates-result-list a:hover {
  color: #9b9d9d;
}

@media (min-width: 768px) {
  .associate #page-content {
    width: 100%;
  }
  .associate .associates-search .associates-search-bar input {
    width: 300px;
  }
  .associate .associates-search .associates-search-bar button {
    width: auto;
  }
  .associate .associates-landing-content .map-image {
    width: 24%;
  }
  .cards {
    margin-left: -1rem;
    margin-right: -1rem;
  }
  .cards .card {
    margin: 1rem;
  }
  .cards .card .card-content {
    justify-content: space-around;
    flex-direction: row;
  }
  .cards .card .card-content > ul {
    width: 60%;
    padding: 2rem;
  }
  .cards .card figure {
    width: 20%;
  }
}
@media (max-width: 991.98px) {
  .cards.js-enabled .card {
    width: calc(50% - 2rem);
  }
}
@media (max-width: 767.98px) {
  .cards .card,
  .cards.js-enabled .card {
    width: 100%;
  }
}
@media (min-width: 992px) {
  .cards {
    margin-left: 0;
    margin-right: 0;
  }
  .cards.js-enabled .card:nth-of-type(3n+1) {
    margin-left: 0;
  }
  .cards.js-enabled .card:nth-of-type(3n+3) {
    margin-right: 0;
  }
  .cards.js-enabled .card .card-content {
    width: calc(300% + 4rem);
  }
  .cards.js-enabled .card:nth-of-type(3n+2) .card-content {
    margin-left: calc(-100% - 2rem);
  }
  .cards.js-enabled .card:nth-of-type(3n+3) .card-content {
    margin-left: calc(-200% - 4rem);
  }
  .cards.js-enabled .card:nth-of-type(3n+4) {
    clear: left;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .cards.js-enabled .card .card-content {
    width: calc(200% + 2rem);
  }
  .cards.js-enabled .card:nth-of-type(2n+2) .card-content {
    margin-left: calc(-100% - 2rem);
  }
  .cards.js-enabled .card:nth-of-type(2n+3) {
    clear: left;
  }
}
/* ========= ASSOCIATES COMPONENT END ========= */