/*-----------------------------------------*/
/*--------- SHOPPING CART LARGE -----------*/
/*-----------------------------------------*/
/**
* Parent of the cart thumbnails
* Cart thumbnail is a generic thumbnail type 
* used by both categories and items. They share a common base
* but each have their own styles which seperate them visually
*/
.cartThumbs .cartThumb {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  cursor: pointer;
  outline: none;
  text-decoration: none;
  text-align: center;
  position: relative;
  overflow: hidden;
  transition: var(--transition);
  color: var(--cardTextColor);
  border: var(--cardBorder);
  box-shadow: var(--cardShadow);
  background: var(--cardBG);
  /* Cart Item Background Color */
}
.cartThumbs .cartThumb .banner {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1000;
  padding: 0.3em 0.5em;
  font-size: 0.8em;
  font-weight: bold;
  text-transform: uppercase;
  background: var(--headingColor);
  color: var(--white);
}
.cartThumbs .cartThumb .banner.new:before {
  content: "New";
}
.cartThumbs .cartThumb .banner.sold:before {
  content: "Sold";
}
.cartThumbs .cartThumb .banner.onSale:before {
  content: "On Sale";
}
.cartThumbs .cartThumb .banner.outOfStock:before {
  content: "Out Of Stock";
}
.cartThumbs .cartThumb .banner.lowOnStock:before {
  content: "Low On Stock";
}
.cartThumbs .cartThumb .banner.popular:before {
  content: "Popular";
}
.cartThumbs .cartThumb .info {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-pack: justify;
      justify-content: space-between;
  position: relative;
  padding: 0.5em 0.2em;
  background: var(--cardBG);
}
.cartThumbs .cartThumb .info .name {
  text-align: center;
  padding: 0.2em;
  line-height: 1.4em;
  font-weight: var(--cardHeadingWeight);
  font-family: var(--cardHeadingFont);
  color: var(--cardHeadingColor);
    text-decoration:none!important;
  font-size:1.2em;
}


.cartThumbs a {
  text-decoration:none;
}


.cartThumbs .cartThumb .info .price {
  text-align: center;
  -ms-flex-order: 2;
      order: 2;
}
.cartThumbs .cartThumb .info .price .priceWas {
  color: var(--opacity40);
  display: inline-block;
  text-decoration: line-through;
  padding-right: 0.5em;
}
.cartThumbs .cartThumb .info .thumbDescription {
  -ms-flex-positive: 1;
      flex-grow: 1;
  font-size: 0.8em;
  line-height: 1.4em;
  padding: 0.2em 0.2em 0.5em;
  text-align: center;
  font-size: 0.8em;
}
.cartThumbs .cartThumb .info .thumbDescription:empty {
  display: none;
}
.cartThumbs .cartThumb .info p {
  padding: 0;
  margin: 0;
}
.cartThumbs .cartThumb .imageFrame {
  background: var(--white);
}
.cartThumbs .cartThumb .imageFrame .image {
  width: 100%;
  height: 0;
  padding-bottom: 130%;
  background-size: contain !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  position: relative;
  cursor: pointer;
  overflow: hidden;
}
.cartThumbs .cartThumb .imageFrame .noImage:after {
  content: "\f03e";
  font-family: fontAwesome;
  font-size: 4em;
  color: var(--opacity20);
  position: absolute;
  text-align: center;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.cartThumbs .cartThumb.item .info {
  padding: 1em 0.5em 5em;
}
.cartThumbs .cartThumb.item .info:after {
  content: "View Product";
  position: absolute;
  left: 1em;
  right: 1em;
  bottom: 1em;
  margin: auto;
  display: inline-block;
  max-width: 10em;
  cursor: pointer;
  line-height: 1em;
  padding: 0.8em 1.6em;
  border-radius: var(--buttonBorderRadius);
  text-decoration: none;
  text-align: center;
  font-weight: normal;
  transition: 0.2s;
}
.cartThumbs .cartThumb:hover {
  box-shadow: var(--cardShadowHover);
  transform: var(--cardTransformHover);
  background: var(--cardBGHover);
}
.cartThumbs .cartThumb:hover .info {
  background: transparent;
}
.cartThumbs .cartThumb:hover .info:after {
  background: var(--cta);
  border-color: var(--cta);
  color: var(--white);
}

.categoryMenu {
  margin: 1em auto 2em;
  padding: 0;
  line-height: 1.4em;
  font-size: 1em;
}
.categoryMenu h2:before {
  content: "Categories";
}

.cartItemPage {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.cartItemPage h1 {
  margin-bottom: 0;
}
.cartItemPage .itemLeft {
  width: 45%;
}
.cartItemPage .itemLeft.noImage .itemHeroImage {
  padding-bottom: 80%;
  position: relative;
  border: 1px solid var(--opacity20);
}
.cartItemPage .itemLeft.noImage .itemHeroImage:after {
  content: "\f03e";
  font-family: fontAwesome;
  font-size: 4em;
  color: var(--opacity20);
  position: absolute;
  text-align: center;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.cartItemPage .itemLeft.noImage .itemImageThumbs {
  display: none;
}
.cartItemPage .itemLeft h1, .cartItemPage .itemLeft .itemCode, .cartItemPage .itemLeft .itemPrice, .cartItemPage .itemLeft .itemShortDesc, .cartItemPage .itemLeft .item-afterpay {
  display: none;
}
.cartItemPage .itemRight {
  width: 50%;
}
.cartItemPage .itemRight .itemStock span:before {
  content: "Remaining: ";
}
.cartItemPage .itemRight .enquiryForm {
  float: none;
  margin: 1em auto;
}
.cartItemPage .itemRight, .cartItemPage .itemLeft {
  display: inline-block;
  float: left;
  padding: 10px;
}
.cartItemPage .itemPrice {
  font-size: 1.5em;
  text-align: left;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: center;
      align-items: center;
  width: 100%;
}
.cartItemPage .itemPrice .itemWas {
  font-weight: normal;
  font-size: 0.9em;
  display: inline-block;
  margin-left: 10px;
}
.cartItemPage .itemCode {
  text-align: left;
  margin-bottom: 10px;
  padding-left: 2px;
}
.cartItemPage .itemWarning {
  border: 1px solid var(--error);
  background: var(--error);
  padding: 0.3em;
  font-size: 0.9em;
  text-align: center;
  font-weight: bold;
  color: var(--white);
}
.cartItemPage .itemOptions {
  width: 100%;
}
.cartItemPage .itemOptions .itemOption {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 2px 0;
}
.cartItemPage .itemOptions .itemOption label {
  width: 100%;
  display: block;
  text-align: left;
}
.cartItemPage .itemOptions .itemOption .select {
  width: 100%;
  cursor: pointer;
  margin-bottom: 10px;
}
.cartItemPage .itemOptions .itemOption .select.disabled {
  opacity: 0.5;
}
.cartItemPage .itemButtons {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  margin: 10px 0;
  padding: 10px 0;
  border-top: 1px solid var(--opacity20);
  border-bottom: 1px solid var(--opacity20);
}
.cartItemPage .itemAction {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex-align: center;
      align-items: center;
}
.cartItemPage .itemAction .cartBtn {
  margin-left: 10px;
}
.cartItemPage .itemShortDesc {
  margin: 20px 0;
  display: inline-block;
}
.cartItemPage .itemImages .itemHeroImage {
  width: 100%;
}
.cartItemPage .itemImages .itemHeroImage .itemImage {
  width: 100%;
  height: 0;
  padding-bottom: 80%;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  cursor: pointer;
}
.cartItemPage .itemImages .itemHeroImage .itemImage.hidden {
  display: none;
}
.cartItemPage .itemImages .itemImage {
  margin-top: 17px;
  position: relative;
  border: 1px solid var(--opacity20);
}
.cartItemPage .itemImages .itemImage .banner {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
  background: var(--headingColor);
  color: var(--white);
  padding: 0.3em 0.5em;
  font-size: 0.8em;
  font-weight: bold;
  text-transform: uppercase;
}
.cartItemPage .itemImages .itemImage .banner.new:before {
  content: "New";
}
.cartItemPage .itemImages .itemImage .banner.sold:before {
  content: "Sold";
}
.cartItemPage .itemImages .itemImage .banner.onSale:before {
  content: "On Sale";
}
.cartItemPage .itemImages .itemImage .banner.outOfStock:before {
  content: "Out Of Stock";
}
.cartItemPage .itemImages .itemImage .banner.lowOnStock:before {
  content: "Low On Stock";
}
.cartItemPage .itemImages .itemImage .banner.popular:before {
  content: "Popular";
}
.cartItemPage .itemImages .itemImageThumbs {
  width: 100%;
  overflow: hidden;
  border: 1px solid var(--opacity20);
  padding: 10px;
  border-radius: 0 0 5px 5px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: 10px;
}
.cartItemPage .itemImages .itemImageThumbs .itemImageThumb {
  display: inline-block;
  width: 24%;
  cursor: pointer;
  border: 1px solid transparent;
}
.cartItemPage .itemImages .itemImageThumbs .itemImageThumb div {
  width: 100%;
  position: relative;
  height: 0;
  padding-bottom: 100%;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
}
.cartItemPage .itemImages .itemImageThumbs .itemImageThumb.current {
  border-color: black;
}
.cartItemPage .itemImages .itemImageThumbs .itemImageThumb div:hover:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: white;
  opacity: 0.3;
}

/* BREAD CRUMBS */
.itemBreadCrumbs {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 0.9em;
  background: var(--opacity05);
}
.itemBreadCrumbs .breadCrumbHome {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: center;
      align-items: center;
  margin-right: 0.5em;
  text-decoration: none;
}
.itemBreadCrumbs .breadCrumbHome:before {
  content: "\f015";
  font-family: fontAwesome;
  display: inline-block;
  margin-right: 0.5em;
}
.itemBreadCrumbs ol {
  width: 100%;
  margin: 0;
  padding: 0;
}
.itemBreadCrumbs ol li {
  list-style: none;
  display: inline-block;
  margin: 0;
  padding: 0;
}
.itemBreadCrumbs ol li:before {
  content: "\f054";
  font-family: fontAwesome;
  font-size: 0.8em;
  margin-right: 0.5em;
}

.categorySearch {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: 1em;
  position: relative;
}
.categorySearch input {
  padding: 0.5em;
  width: 100%;
  border-right: 0;
}
.categorySearch button {
  position: absolute;
  width: 20%;
  height: 100%;
  right: 0;
  border-radius: 0 var(--borderRadius) var(--borderRadius) 0;
}
.categorySearch button span:before {
  content: "\f002";
  font-family: fontawesome;
}

.categoryFilter {
  margin-top: 0.5em;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 0;
}
.categoryFilter .filterInput {
  padding-right: 1em;
  width: 40%;
  padding: 3px 3px 0px;
  position: relative;
}
.categoryFilter .filterInput:before {
  position: absolute;
  bottom: 3px;
  left: 6px;
  font-size: 0.8em;
  content: "$";
}
.categoryFilter .filterInput span, .categoryFilter .filterInput input {
  width: 100%;
  text-align: center;
  padding: 3px;
}
.categoryFilter .filterInput span {
  font-size: 0.8em;
}
.categoryFilter button {
  width: 20%;
  height: 28px;
  margin-top: auto;
}
.categoryFilter button span:before {
  content: "\f002";
  font-family: fontawesome;
}

.itemsPerPage {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  margin: 1.5em 0;
}
.itemsPerPage:before {
  content: "Items Per Page";
  margin-right: 10px;
  font-size: 0.7em;
}
.itemsPerPage form {
  width: 50%;
}

.sortInput {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  margin: 1.5em 0;
}
.sortInput:before {
  content: "Sort By";
  margin-right: 5px;
  font-size: 0.7em;
}
.sortInput form {
  width: 80%;
}

form .select {
  background: white;
  width: 100%;
}
form .select select {
  cursor: pointer;
}
form .select:after {
  /*background: var(--primary);
  color: white;*/
}
form .select:hover:after {
  /*background: lighten(var(--primary), 10%);*/
}

.viewCartItems {
  width: 100%;
  margin: 1em 0;
}
.viewCartItems .cartItemAction {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.viewCartItems .cartItemAction span {
  margin-right: 1em;
}
.viewCartItems .cartItemAction .cartItemUpdate {
  margin-right: 0.5em;
}
.viewCartItems .cartItemAction span.button {
  cursor: auto;
  color: var(--error);
  margin-left: 1em;
}
.viewCartItems .cartSubTotal {
  float: right;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  margin: 0 0 1em;
  width: 100%;
  background: var(--opacity05);
  border-top: 1px solid var(--opacity20);
  color: var(--fontColor);
  padding: 1em;
  font-size: 1.5em;
}
.viewCartItems .cartSubTotal span {
  font-weight: bold;
  margin-left: 0.5em;
}
.viewCartItems .cartUpdate {
  float: left;
  margin: 30px 0;
  background: var(--opacity60);
  border-radius: var(--borderRadius);
  padding: var(--inputPadding);
  color: var(--white);
  font-size: 1.1em;
}
.viewCartItems .cartUpdate span {
  margin-right: 0.5em;
}

.viewCartRow {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  font-weight: normal;
  padding: 5px 10px;
  font-size: 0.9em;
}
.viewCartRow .viewCartDelete {
  font-size: 1em;
  text-align: center;
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
  margin: 0 5px 0 0;
}
.viewCartRow .viewCartDelete div {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  color: var(--white);
  background: var(--error);
  border-radius: 50%;
  padding: 0;
  width: 30px;
  height: 30px;
}
.viewCartRow .viewCartDelete div:before {
  content: "\f00d";
}
.viewCartRow .viewCartItem {
  width: 120px;
  padding: 5px;
  border-radius: 3px;
  border: 1px solid var(--opacity10);
}
.viewCartRow .viewCartItem .viewCartThumb {
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  border-radius: 3px;
}
.viewCartRow .viewCartItem.viewCartDiscount {
  text-align: center;
}
.viewCartRow .viewCartItem.viewCartDiscount icon {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  background: var(--opacity10);
  border-radius: 2px;
  width: 100%;
  font-size: 1.5em;
  line-height: 1em;
  padding: 0.5em;
  color: var(--opacity40);
}
.viewCartRow .viewCartDescription {
  width: 40%;
  width: calc(100% - 465px);
  padding: 0 1em;
  -ms-flex-positive: 1;
      flex-grow: 1;
  line-height: 1.4em;
}
.viewCartRow .viewCartDescription .itemWarning {
  color: var(--error);
  margin-left: 1em;
}
.viewCartRow .viewCartPrice {
  width: 100px;
  text-align: Center;
}
.viewCartRow .viewCartTotal {
  width: 100px;
  text-align: Center;
}
.viewCartRow .viewCartQuantity {
  text-align: Center;
  width: 148px;
}
.viewCartRow:nth-child(even) {
  background: var(--opacity03) !important;
}

.viewCartRowHeader {
  background: var(--primaryDark);
  color: var(--white);
  font-weight: bold;
  border-bottom: 2px solid var(--opacity40);
  font-size: 1em;
}
.viewCartRowHeader .viewCartItem {
  border: none;
}

.viewCartItems.showTax .viewCartRow .viewCartDescription {
  width: calc(100% - 585px);
}
.viewCartItems.showTax .viewCartRow .viewCartTax {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  width: 100px;
}
.viewCartItems.showTax .viewCartRowHeader .viewCartDescription {
  width: calc(100% - 560px);
}

.cartBtn {
  font: inherit;
  text-decoration: none;
  display: inline-block;
  line-height: 1em;
}
.cartBtn icon {
  margin-right: 10px;
}
.cartBtn:hover:not(.disabled) {
  cursor: pointer;
}
.cartBtn:after, .cartBtn:before {
  display: inline-block;
}
.cartBtn::-moz-focus-inner {
  border: 0;
  padding: 0;
}
.cartBtn .highlight {
  color: var(--primary);
  border: 1px solid var(--primary);
}
.cartBtn .highlight:hover:not(.disabled) {
  background: var(--primary);
  color: white;
}

.cartBtn.submitOrder {
  background: var(--cta);
  border: var(--buttonBorderWidth) solid var(--cta);
  color: white;
  width: 100%;
}
.cartBtn.submitOrder:hover:not(.disabled) {
  background: var(--white);
  color: var(--cta);
}

.itemAdd:after {
  content: "Add To Cart";
}
.itemAdd icon:before {
  content: "\f067";
}

.itemMore:after {
  content: "More Info";
}
.itemMore icon:before {
  content: "\f06e";
}

.checkoutPrev:after {
  content: "Previous";
}
.checkoutPrev icon:before {
  content: "\f060";
}

.checkoutNext:after {
  content: "Next";
}
.checkoutNext icon {
  float: right;
  margin: 0 0 0 10px;
}
.checkoutNext icon:before {
  content: "\f061";
}

.submitOrder:after {
  content: "Submit Order";
}
.submitOrder icon:before {
  content: "\f00c";
}

#emailShoppingForm {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}
#emailShoppingForm button {
  margin: 1em auto;
}

.cartItemUpdate {
  outline: none;
  background: none;
  border: 1px solid var(--primaryDark);
  color: var(--primaryDark);
}
.cartItemUpdate:hover {
  color: var(--white);
  background: var(--primary);
  border: 1px solid var(--primary);
}
.cartItemUpdate:active {
  color: var(--white);
  background: var(--primaryLight);
  border: 1px solid var(--primaryLight);
}

.itemQty {
  padding: 0 0.2em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: none;
  margin: auto;
}
.itemQty span {
  margin-right: 15px;
  display: inline-block;
  padding: 5px 0;
}
.itemQty div {
  background: none;
  border: 1px solid var(--opacity40);
  color: inherit;
  transition: var(--transition);
  width: 40px;
  padding: 2px;
}
.itemQty .itemQtyCount {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: stretch;
      align-items: stretch;
}
.itemQty .itemQtyCount input {
  padding: 3px 5px;
  width: 30px;
}
.itemQty .itemQtyUp, .itemQty .itemQtyDown {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 35px;
  cursor: pointer;
}
.itemQty .itemQtyUp:hover, .itemQty .itemQtyDown:hover {
  background: var(--opacity80);
  color: var(--white);
}
.itemQty .itemQtyUp.hidden, .itemQty .itemQtyDown.hidden {
  pointer-events: none;
  opacity: 0.2;
}
.itemQty .itemQtyUp {
  -ms-flex-order: 3;
      order: 3;
  border-radius: 0 5px 5px 0;
}
.itemQty .itemQtyDown {
  -ms-flex-order: 2;
      order: 2;
  border-radius: 5px 0 0 5px;
  border-right: 0;
}
.itemQty .itemQtyUp:before {
  content: "\f067";
  font-family: fontawesome;
}
.itemQty .itemQtyDown:before {
  content: "\f068";
  font-family: fontawesome;
}
.itemQty .itemQtyDisplay {
  text-align: center;
  -ms-flex-order: 1;
      order: 1;
  padding: 6px 2px;
  margin-right: 0.5em;
  color: var(--black);
  font-size: 20px;
  font-weight: bold;
  width: 48px;
}

/**
 * Parent div for the checkout pages (details, shipping & pay)
 * the body of the checkout pages have two classes
 * .checkout
 * and a class describing the current step in the checkout process, 
 * i.e checkoutDetails, checkoutPay, checkoutShipping
 *
 * so you can target specific pages via .checkout .checkoutPay for example
 */
.checkout .contentWrap {
  display: -ms-flexbox;
  display: flex;
}
.checkout .contentWrap .container {
  height: 100%;
}

.checkout .siteContent {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.checkout .siteContent .checkoutRight, .checkout .siteContent .checkoutLeft {
  width: 50%;
  display: inline-block;
}
.checkout .siteContent .checkoutRight {
  background: var(--opacity05);
  padding: 1em;
}
.checkout .siteContent .checkoutRight .openCheckout {
  display: none;
  font-size: 0.8em;
}
.checkout .siteContent .checkoutRight .openCheckout:before {
  content: "View Checkout Items";
}
.checkout .siteContent .checkoutRight .openCheckout icon:after {
  content: "\f078";
}
.checkout .siteContent .checkoutRight .items {
  width: 100%;
}
.checkout .siteContent .checkoutRight .checkoutRow {
  width: 100%;
  overflow: hidden;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutTitle, .checkout .siteContent .checkoutRight .checkoutRow .checkoutValue {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutTitle .itemPrice, .checkout .siteContent .checkoutRight .checkoutRow .checkoutValue .itemPrice {
  width: 100%;
  text-align: right;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutTitle .itemImage, .checkout .siteContent .checkoutRight .checkoutRow .checkoutValue .itemImage {
  -ms-flex-item-align: start;
      align-self: flex-start;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutTitle {
  width: 70%;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutTitle input[name=discountCode] {
  padding: 0.5em;
  width: 100%;
  margin-bottom: 5px;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutValue {
  width: 30%;
  text-align: right;
}
.checkout .siteContent .checkoutRight .checkoutRow .itemHeading, .checkout .siteContent .checkoutRight .checkoutRow .itemPrice, .checkout .siteContent .checkoutRight .checkoutRow.checkoutSubTotal .checkoutValue, .checkout .siteContent .checkoutRight .checkoutRow.checkoutShipping .checkoutValue, .checkout .siteContent .checkoutRight .checkoutRow.checkoutTotal .checkoutValue, .checkout .siteContent .checkoutRight .checkoutRow.checkoutTax .checkoutValue {
  font-weight: bold;
  font-size: 1.1em;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkout-discountMessage {
  display: block;
  width: 100%;
  background: var(--error);
  color: white;
  text-align: center;
  margin: 5px auto;
  border-radius: 3px;
}
.checkout .siteContent .checkoutRight .items .checkoutRow {
  border-bottom: 1px solid var(--opacity10);
  padding: 10px 0 10px;
}
.checkout .siteContent .checkoutRight .items .itemImage {
  width: 100px;
  display: inline-block;
  border: 1px solid var(--opacity10);
  background: white;
  padding: 0.5em;
  border-radius: 0.5em;
  margin-right: 1em;
}
.checkout .siteContent .checkoutRight .items .itemImage .itemThumb {
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.checkout .siteContent .checkoutRight .items .itemDescription {
  width: calc(100% - 110px);
  display: inline-block;
}
.checkout .siteContent .checkoutRight .items .itemDescription .itemHeading, .checkout .siteContent .checkoutRight .items .itemDescription .itemCode, .checkout .siteContent .checkoutRight .items .itemDescription .itemQuantity {
  width: 100%;
}
.checkout .siteContent .checkoutRight .items .itemDescription .itemCode, .checkout .siteContent .checkoutRight .items .itemDescription .itemQuantity {
  font-size: 0.9em;
  line-height: 1.2em;
}
.checkout .siteContent .checkoutRight .checkoutDiscount {
  padding: 1em 0;
  border-bottom: 1px solid var(--opacity10);
}
.checkout .siteContent .checkoutRight .checkoutDiscount .checkoutTitle {
  width: 50%;
}
.checkout .siteContent .checkoutRight .checkoutDiscount .checkoutValue {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  width: 40%;
}
.checkout .siteContent .checkoutRight .checkoutDiscount .checkoutValue .discountAmount {
  margin-left: 1em;
}
.checkout .siteContent .checkoutRight .checkoutDiscount .removeDiscount {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
.checkout .siteContent .checkoutRight .checkoutDiscount .removeDiscount button {
  padding: 0.5em 1em !important;
  font-size: 0.9em;
}
.checkout .siteContent .checkoutRight .checkoutSubTotal {
  padding-top: 1em;
}
.checkout .siteContent .checkoutRight .checkoutSubTotal .checkoutValue {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.checkout .siteContent .checkoutRight .checkoutShipping {
  padding-bottom: 1em;
  border-bottom: 1px solid var(--opacity10);
}
.checkout .siteContent .checkoutRight .checkoutTotal {
  padding: 1em 0;
}
.checkout .siteContent .checkoutLeft {
  padding: 1em;
}
.checkout .siteContent .checkoutLeft .enquiryForm {
  float: none;
  margin: 1em auto;
}
.checkout .siteContent .checkoutLeft .checkoutDetails {
  margin-bottom: 2em;
}
.checkout .siteContent .checkoutLeft .checkoutDetails * {
  transition: var(--transition);
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 0.2em;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow.col2 input {
  width: 50%;
  width: calc(50% - 0.2em);
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow.col3 input {
  width: 35%;
  width: calc(35% - 0.4em);
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow.col3 input[name=postCode], .checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow.col3 input[name=billingPostcode] {
  width: 20%;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow.col3 .select {
  width: 45%;
  margin-right: 0.4em;
  width: calc(45% - 0.4em);
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow input {
  width: 100%;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow input[name=firstName], .checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow input[name=state], .checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow input[name=country] {
  margin-right: 0.4em;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow input[name=fullName] {
  display: none;
}
.checkout .siteContent .checkoutLeft .checkoutDetails [name=editDetails] {
  display: none;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable {
  font-size: 0.9em;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable .select {
  cursor: default;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable .select:after {
  display: none;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable .checkoutDetailsRow {
  padding: 0;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable input {
  border: 0;
  padding: 0.2em;
  width: inherit;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable input[name=firstName], .checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable input[name=lastName] {
  display: none;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable input[name=fullName] {
  display: inline-block;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable [name=saveDetails] {
  display: none;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable [name=saveDetails]:before {
  content: "\f0c7";
  font-family: fontAwesome;
  margin-right: 5px;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable [name=editDetails] {
  display: inline-block;
  margin: 10px 0 0;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable [name=editDetails]:before {
  content: "\f040";
  font-family: fontAwesome;
  margin-right: 5px;
}
.checkout .siteContent .checkoutLeft .sameAsShipping {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
.checkout .siteContent .checkoutLeft .sameAsShipping #checkoutSameAsShipping {
  visibility: hidden;
  display: none;
}
.checkout .siteContent .checkoutLeft .sameAsShipping #checkoutSameAsShipping:checked + label icon {
  border-color: var(--cta);
}
.checkout .siteContent .checkoutLeft .sameAsShipping #checkoutSameAsShipping:checked + label icon:after {
  opacity: 1;
}
.checkout .siteContent .checkoutLeft .sameAsShipping #checkoutSameAsShipping:hover + label icon:after {
  opacity: 0.6;
}
.checkout .siteContent .checkoutLeft .sameAsShipping label {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  cursor: pointer;
}
.checkout .siteContent .checkoutLeft .sameAsShipping label icon {
  display: inline-block;
  cursor: pointer;
  position: relative;
  width: 18px;
  height: 18px;
  top: 0;
  left: 0;
  border-radius: var(--borderRadius);
  border: 1px solid var(--opacity20);
  background: var(--white);
  transition: var(--transition);
  margin-right: 0.5em;
}
.checkout .siteContent .checkoutLeft .sameAsShipping label icon:after {
  opacity: 0;
  transition: var(--transition);
  content: "";
  position: absolute;
  width: 10px;
  height: 6px;
  background: transparent;
  top: 4px;
  left: 3px;
  border: 3px solid var(--cta);
  border-top: none;
  border-right: none;
  transform: rotate(-45deg);
}
.checkout .siteContent .checkoutLeft .shippingMethod {
  border: 1px solid var(--opacity10);
  border-radius: 0.5em;
  margin: 10px auto 20px;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow {
  overflow: hidden;
  border-bottom: 1px solid var(--opacity10);
  padding: 0.5em;
  display: -ms-flexbox;
  display: flex;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingRadio, .checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingDescription {
  display: inline-block;
  float: left;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingRadio {
  width: 30px;
  text-align: center;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingDescription {
  width: calc(100% - 30px);
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingDescription span {
  font-weight: bold;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingDescription div {
  margin-bottom: 5px;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingDescription p {
  font-size: 0.7em;
  line-height: 1.4em;
  margin: 0;
}
.checkout .siteContent .checkoutLeft .checkoutButtons {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPayOptions {
  margin: auto;
  text-align: center;
  font-size: 0.8em;
  line-height: 1.2em;
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPayOptions img {
  width: 227px;
  height: auto;
  display: block;
  margin: auto;
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPrev.smlBtn {
  margin: 10px auto;
  font-size: 0.7em;
  border: none;
  background: var(--opacity10);
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPrev.smlBtn:hover {
  background: var(--opacity20);
}

.checkoutPayPal .siteContent .checkoutRight .checkoutSubTotal .checkoutValue::after {
  display: none;
}
.checkoutPayPal .checkoutLeft {
  max-width: 550px;
  margin: 0 auto;
}
.checkoutPayPal .checkoutLeft h1 {
  text-align: center;
}

.cartRadio input[type=radio] {
  width: 0px;
  visibility: hidden;
  height: 0px;
  margin: 0;
  padding: 0;
}
.cartRadio label {
  width: 15px;
  height: 15px;
  border-radius: 10px;
  position: relative;
  z-index: 10;
  display: inline-block;
  background: var(--opacity10);
  border: 1px solid var(--opacity40);
  cursor: pointer;
}
.cartRadio label:after {
  content: " ";
  left: 2px;
  top: 0px;
  opacity: 0;
  background: var(--cta);
  width: 9px;
  height: 9px;
  z-index: 1000;
  position: absolute;
  top: 2px;
  border-radius: 8px;
  display: inline-block;
}
.cartRadio label:before {
  background: var(--opacity80);
  border-radius: 8px;
  content: " ";
  display: inline-block;
  height: 11px;
  left: 2px;
  position: absolute;
  top: 2px;
  width: 11px;
  z-index: 1000;
  opacity: 0;
}
.cartRadio input[type=radio]:checked + .cartRadioLabel {
  border-color: var(--cta);
}
.cartRadio input[type=radio]:checked + .cartRadioLabel:after {
  opacity: 1;
}
.cartRadio input[type=radio]:checked + .cartRadioLabel:before {
  display: none;
}
.cartRadio:hover .cartRadioLabel {
  border-color: var(--cta);
}
.cartRadio:hover .cartRadioLabel:after {
  opacity: 1;
}

@-moz-document url-prefix() {
  .cartRadio input[type=radio] {
    margin-right: -13px;
  }
}
.itemMainInfo .enquiryForm, .checkoutLeft .enquiryForm {
  float: none;
  margin: 1em auto;
  max-width: none;
}

#customerForm .required {
  font-size: 0.8em;
  margin: 0.5em 0;
}

#customerForm .sameAsShipping {
  margin: 1em 0;
}

/**
 * Category Cover Image
 * Image is on the SubBanner section and it's container
 * using CSS you can toggle which one displays the image
 */
.subBannerCategory {
  width: 100%;
}
.subBannerCategory .container.hasImage {
  padding-bottom: 15%;
  background-size: cover !important;
  background-position: center center !important;
}

.categoryDescription {
  word-wrap: break-word;
}

.categorySection .siteContent {
  width: calc(100% - 250px);
}

.categorySection .sidebar {
  width: 100%;
  max-width: 250px;
}

/*-----------------------------------*/
/*----------- VALIDATION  -----------*/
/*-----------------------------------*/
.popUp {
  font-size: 13px;
  position: absolute;
  background: var(--white);
  color: var(--opacity80);
  padding: 7px;
  border-radius: 3px;
  margin-top: 5px;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
  color: white;
  border: 1px solid var(--opacity60);
  color: black;
  z-index: 1000;
}

.popUpInner {
  position: relative;
}

.popUpInner:after {
  position: absolute;
  width: 0;
  left: 5px;
  top: -15px;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid var(--white);
  content: "";
  z-index: 2;
}

.popUpInner:before {
  position: absolute;
  width: 0;
  left: 5px;
  top: -16px;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 9px solid var(--opacity60);
  content: "";
  z-index: -1;
}

.fieldRequired {
  box-shadow: 0 0 2px 2px rgba(255, 0, 0, 0.5);
}

.fieldRequired:focus {
  box-shadow: 0 0 2px 2px rgba(255, 0, 0, 0.3);
}
=======
/*-----------------------------------------*/
/*--------- SHOPPING CART LARGE -----------*/
/*-----------------------------------------*/
/**
* Parent of the cart thumbnails
* Cart thumbnail is a generic thumbnail type 
* used by both categories and items. They share a common base
* but each have their own styles which seperate them visually
*/
.cartThumbs .cartThumb {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  cursor: pointer;
  outline: none;
  text-decoration: none;
  text-align: center;
  position: relative;
  overflow: hidden;
  transition: var(--transition);
  color: var(--cardTextColor);
  border: var(--cardBorder);
  box-shadow: var(--cardShadow);
  background: var(--cardBG);
  /* Cart Item Background Color */
}
.cartThumbs .cartThumb .banner {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1000;
  padding: .3em .5em;
  font-size: .8em;
  font-weight: bold;
  text-transform: uppercase;
  background: var(--headingColor);
  color: var(--white);
}
.cartThumbs .cartThumb .banner.new:before {
  content: "New";
}
.cartThumbs .cartThumb .banner.sold:before {
  content: "Sold";
}
.cartThumbs .cartThumb .banner.onSale:before {
  content: "On Sale";
}
.cartThumbs .cartThumb .banner.outOfStock:before {
  content: "Out Of Stock";
}
.cartThumbs .cartThumb .banner.lowOnStock:before {
  content: "Low On Stock";
}
.cartThumbs .cartThumb .banner.popular:before {
  content: "Popular";
}
.cartThumbs .cartThumb .info {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-positive: 1;
      flex-grow: 1;
  -ms-flex-pack: justify;
      justify-content: space-between;
  position: relative;
  padding: .5em .2em;
    text-decoration:none!important;
  background: var(--cardBG);
}
.cartThumbs .cartThumb .info .name {
  text-align: center;
  padding: 0.2em;
  line-height: 1.4em;
  font-weight: var(--cardHeadingWeight);
  font-family: var(--cardHeadingFont);
  color: var(--cardHeadingColor);
  text-decoration:none!important;
}
.cartThumbs .cartThumb .info .price {
  text-align: center;
  -ms-flex-order: 2;
      order: 2;
}
.cartThumbs .cartThumb .info .price .priceWas {
  color: var(--opacity40);
  display: inline-block;
  text-decoration: line-through;
  padding-right: 0.5em;
}
.cartThumbs .cartThumb .info .thumbDescription {
  -ms-flex-positive: 1;
      flex-grow: 1;
  font-size: 0.8em;
  line-height: 1.4em;
  padding: 0.2em 0.2em 0.5em;
  text-align: center;
  font-size: .8em;
}
.cartThumbs .cartThumb .info .thumbDescription:empty {
  display: none;
}
.cartThumbs .cartThumb .info p {
  padding: 0;
  margin: 0;
}
.cartThumbs .cartThumb .imageFrame {
  background: var(--white);
}
.cartThumbs .cartThumb .imageFrame .image {
  width: 100%;
  height: 0;
  padding-bottom: 110%;
  background-size: contain !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  position: relative;
  cursor: pointer;
  overflow: hidden;
}
.cartThumbs .cartThumb .imageFrame .noImage:after {
  content: "\f03e";
  font-family: fontAwesome;
  font-size: 4em;
  color: var(--opacity20);
  position: absolute;
  text-align: center;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.cartThumbs .cartThumb.item .info {
  padding: 1em .5em 5em;
}
.cartThumbs .cartThumb.item .info:after {
  content: "View Product";
  position: absolute;
  left: 1em;
  right: 1em;
  bottom: 1em;
  margin: auto;
  display: inline-block;
  max-width: 10em;
  cursor: pointer;
  line-height: 1em;
  padding: 0.8em 1.6em;
  border-radius: var(--buttonBorderRadius);
  text-decoration: none;
  text-align: center;
  font-weight: normal;
  background:var(--cta);
  border:2px solid var(--cta);
  color:#fff;
  transition: 0.2s;
}
.cartThumbs .cartThumb:hover {

  box-shadow: var(--cardShadowHover);
  transform: var(--cardTransformHover);
  background: var(--cardBGHover);
}
.cartThumbs .cartThumb:hover .info {
  background: transparent;
}
.cartThumbs .cartThumb:hover .info:after {
  background: var(--cta);
    border:2px solid var(--cta);
  color: var(--white);
}

.categoryMenu {
  margin: 1em auto 2em;
  padding: 0;
  line-height: 1.4em;
  font-size: 1em;
}
.categoryMenu h2:before {
  content: "Categories";
}

.cartItemPage {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.cartItemPage h1 {
  margin-bottom: 0;
}
.cartItemPage .itemLeft {
  width: 45%;
}
.cartItemPage .itemLeft.noImage .itemHeroImage {
  padding-bottom: 80%;
  position: relative;
  border: 1px solid var(--opacity20);
}
.cartItemPage .itemLeft.noImage .itemHeroImage:after {
  content: "\f03e";
  font-family: fontAwesome;
  font-size: 4em;
  color: var(--opacity20);
  position: absolute;
  text-align: center;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.cartItemPage .itemLeft.noImage .itemImageThumbs {
  display: none;
}
.cartItemPage .itemLeft h1, .cartItemPage .itemLeft .itemCode, .cartItemPage .itemLeft .itemPrice, .cartItemPage .itemLeft .itemShortDesc, .cartItemPage .itemLeft .item-afterpay {
  display: none;
}
.cartItemPage .itemRight {
  width: 50%;
}
.cartItemPage .itemRight .itemStock span:before {
  content: "Remaining: ";
}
.cartItemPage .itemRight .enquiryForm {
  float: none;
  margin: 1em auto;
}
.cartItemPage .itemRight, .cartItemPage .itemLeft {
  display: inline-block;
  float: left;
  padding: 10px;
}
.cartItemPage .itemPrice {
  font-size: 1.5em;
  text-align: left;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: center;
      align-items: center;
  width: 100%;
}
.cartItemPage .itemPrice .itemWas {
  font-weight: normal;
  font-size: .9em;
  display: inline-block;
  margin-left: 10px;
}
.cartItemPage .itemCode {
  text-align: left;
  margin-bottom: 10px;
  padding-left: 2px;
}
.cartItemPage .itemWarning {
  border: 1px solid var(--error);
  background: var(--error);
  padding: .3em;
  font-size: .9em;
  text-align: center;
  font-weight: bold;
  color: var(--white);
}
.cartItemPage .itemOptions {
  width: 100%;
}
.cartItemPage .itemOptions .itemOption {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 2px 0;
}
.cartItemPage .itemOptions .itemOption label {
  width: 100%;
  display: block;
  text-align: left;
}
.cartItemPage .itemOptions .itemOption .select {
  width: 100%;
  cursor: pointer;
  margin-bottom: 10px;
}
.cartItemPage .itemOptions .itemOption .select.disabled {
  opacity: .5;
}
.cartItemPage .itemButtons {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  margin: 10px 0;
  padding: 10px 0;
  border-top: 1px solid var(--opacity20);
  border-bottom: 1px solid var(--opacity20);
}
.cartItemPage .itemAction {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex-align: center;
      align-items: center;
}
.cartItemPage .itemAction .cartBtn {
  margin-left: 10px;
}
.cartItemPage .itemShortDesc {
  margin: 20px 0;
  display: inline-block;
}
.cartItemPage .itemImages .itemHeroImage {
  width: 100%;
}
.cartItemPage .itemImages .itemHeroImage .itemImage {
  width: 100%;
  height: 0;
  padding-bottom: 80%;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  cursor: pointer;
}
.cartItemPage .itemImages .itemHeroImage .itemImage.hidden {
  display: none;
}
.cartItemPage .itemImages .itemImage {
  margin-top: 17px;
  position: relative;
  border: 1px solid var(--opacity20);
}
.cartItemPage .itemImages .itemImage .banner {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
  background: var(--headingColor);
  color: var(--white);
  padding: .3em .5em;
  font-size: .8em;
  font-weight: bold;
  text-transform: uppercase;
}
.cartItemPage .itemImages .itemImage .banner.new:before {
  content: "New";
}
.cartItemPage .itemImages .itemImage .banner.sold:before {
  content: "Sold";
}
.cartItemPage .itemImages .itemImage .banner.onSale:before {
  content: "On Sale";
}
.cartItemPage .itemImages .itemImage .banner.outOfStock:before {
  content: "Out Of Stock";
}
.cartItemPage .itemImages .itemImage .banner.lowOnStock:before {
  content: "Low On Stock";
}
.cartItemPage .itemImages .itemImage .banner.popular:before {
  content: "Popular";
}
.cartItemPage .itemImages .itemImageThumbs {
  width: 100%;
  overflow: hidden;
  border: 1px solid var(--opacity20);
  padding: 10px;
  border-radius: 0 0 5px 5px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: 10px;
}
.cartItemPage .itemImages .itemImageThumbs .itemImageThumb {
  display: inline-block;
  width: 24%;
  cursor: pointer;
  border: 1px solid transparent;
}
.cartItemPage .itemImages .itemImageThumbs .itemImageThumb div {
  width: 100%;
  position: relative;
  height: 0;
  padding-bottom: 100%;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
}
.cartItemPage .itemImages .itemImageThumbs .itemImageThumb.current {
  border-color: black;
}
.cartItemPage .itemImages .itemImageThumbs .itemImageThumb div:hover:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: white;
  opacity: .3;
}

/* BREAD CRUMBS */
.itemBreadCrumbs {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: .9em;
  background: var(--opacity05);
}
.itemBreadCrumbs .breadCrumbHome {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: center;
      align-items: center;
  margin-right: .5em;
  text-decoration: none;
}
.itemBreadCrumbs .breadCrumbHome:before {
  content: '\f015';
  font-family: fontAwesome;
  display: inline-block;
  margin-right: .5em;
}
.itemBreadCrumbs ol {
  width: 100%;
  margin: 0;
  padding: 0;
}
.itemBreadCrumbs ol li {
  list-style: none;
  display: inline-block;
  margin: 0;
  padding: 0;
}
.itemBreadCrumbs ol li:before {
  content: '\f054';
  font-family: fontAwesome;
  font-size: .8em;
  margin-right: .5em;
}

.categorySearch {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: 1em;
  position: relative;
}
.categorySearch input {
  padding: .5em;
  width: 100%;
  border-right: 0;
}
.categorySearch button {
  position: absolute;
  width: 20%;
  height: 100%;
  right: 0;
  border-radius: 0 var(--borderRadius) var(--borderRadius) 0;
}
.categorySearch button span:before {
  content: "\f002";
  font-family: fontawesome;
}

.categoryFilter {
  margin-top: 0.5em;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 0;
}
.categoryFilter .filterInput {
  padding-right: 1em;
  width: 40%;
  padding: 3px 3px 0px;
  position: relative;
}
.categoryFilter .filterInput:before {
  position: absolute;
  bottom: 3px;
  left: 6px;
  font-size: 0.8em;
  content: '$';
}
.categoryFilter .filterInput span, .categoryFilter .filterInput input {
  width: 100%;
  text-align: center;
  padding: 3px;
}
.categoryFilter .filterInput span {
  font-size: 0.8em;
}
.categoryFilter button {
  width: 20%;
  height: 28px;
  margin-top: auto;
}
.categoryFilter button span:before {
  content: "\f002";
  font-family: fontawesome;
}

.itemsPerPage {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  margin: 1.5em 0;
}
.itemsPerPage:before {
  content: "Items Per Page";
  margin-right: 10px;
  font-size: .7em;
}
.itemsPerPage form {
  width: 50%;
}

.sortInput {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  margin: 1.5em 0;
}
.sortInput:before {
  content: "Sort By";
  margin-right: 5px;
  font-size: .7em;
}
.sortInput form {
  width: 80%;
}

form .select {
  background: white;
  width: 100%;
}
form .select select {
  cursor: pointer;
}
form .select:after {
  /*background: var(--primary);
  color: white;*/
}
form .select:hover:after {
  /*background: lighten(var(--primary), 10%);*/
}

.viewCartItems {
  width: 100%;
  margin: 1em 0;
}
.viewCartItems .cartItemAction {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.viewCartItems .cartItemAction span {
  margin-right: 1em;
}
.viewCartItems .cartItemAction .cartItemUpdate {
  margin-right: .5em;
}
.viewCartItems .cartItemAction span.button {
  cursor: auto;
  color: var(--error);
  margin-left: 1em;
}
.viewCartItems .cartSubTotal {
  float: right;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  margin: 0 0 1em;
  width: 100%;
  background: var(--opacity05);
  border-top: 1px solid var(--opacity20);
  color: var(--fontColor);
  padding: 1em;
  font-size: 1.5em;
}
.viewCartItems .cartSubTotal span {
  font-weight: bold;
  margin-left: .5em;
}
.viewCartItems .cartUpdate {
  float: left;
  margin: 30px 0;
  background: var(--opacity60);
  border-radius: var(--borderRadius);
  padding: var(--inputPadding);
  color: var(--white);
  font-size: 1.1em;
}
.viewCartItems .cartUpdate span {
  margin-right: .5em;
}

.viewCartRow {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  font-weight: normal;
  padding: 5px 10px;
  font-size: .9em;
}
.viewCartRow .viewCartDelete {
  font-size: 1em;
  text-align: center;
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
  margin: 0 5px 0 0;
}
.viewCartRow .viewCartDelete div {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  color: var(--white);
  background: var(--error);
  border-radius: 50%;
  padding: 0;
  width: 30px;
  height: 30px;
}
.viewCartRow .viewCartDelete div:before {
  content: "\f00d";
}
.viewCartRow .viewCartItem {
  width: 120px;
  padding: 5px;
  border-radius: 3px;
  border: 1px solid var(--opacity10);
}
.viewCartRow .viewCartItem .viewCartThumb {
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  border-radius: 3px;
}
.viewCartRow .viewCartItem.viewCartDiscount {
  text-align: center;
}
.viewCartRow .viewCartItem.viewCartDiscount icon {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  background: var(--opacity10);
  border-radius: 2px;
  width: 100%;
  font-size: 1.5em;
  line-height: 1.0em;
  padding: 0.5em;
  color: var(--opacity40);
}
.viewCartRow .viewCartDescription {
  width: 40%;
  width: calc(100% - 465px);
  padding: 0 1em;
  -ms-flex-positive: 1;
      flex-grow: 1;
  line-height: 1.4em;
}
.viewCartRow .viewCartDescription .itemWarning {
  color: var(--error);
  margin-left: 1em;
}
.viewCartRow .viewCartPrice {
  width: 100px;
  text-align: Center;
}
.viewCartRow .viewCartTotal {
  width: 100px;
  text-align: Center;
}
.viewCartRow .viewCartQuantity {
  text-align: Center;
  width: 148px;
}
.viewCartRow:nth-child(even) {
  background: var(--opacity03) !important;
}

.viewCartRowHeader {
  background: var(--primaryDark);
  color: var(--white);
  font-weight: bold;
  border-bottom: 2px solid var(--opacity40);
  font-size: 1em;
}
.viewCartRowHeader .viewCartItem {
  border: none;
}

.viewCartItems.showTax .viewCartRow .viewCartDescription {
  width: calc(100% - 585px);
}
.viewCartItems.showTax .viewCartRow .viewCartTax {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  width: 100px;
}
.viewCartItems.showTax .viewCartRowHeader .viewCartDescription {
  width: calc(100% - 560px);
}

.cartBtn {
  font: inherit;
  text-decoration: none;
  display: inline-block;
  line-height: 1em;
}
.cartBtn icon {
  margin-right: 10px;
}
.cartBtn:hover:not(.disabled) {
  cursor: pointer;
}
.cartBtn:after, .cartBtn:before {
  display: inline-block;
}
.cartBtn::-moz-focus-inner {
  border: 0;
  padding: 0;
}
.cartBtn .highlight {
  color: var(--primary);
  border: 1px solid var(--primary);
}
.cartBtn .highlight:hover:not(.disabled) {
  background: var(--primary);
  color: white;
}

.cartBtn.submitOrder {
  background: var(--cta);
  border: var(--buttonBorderWidth) solid var(--cta);
  color: white;
  width: 100%;
}
.cartBtn.submitOrder:hover:not(.disabled) {
  background: var(--white);
  color: var(--cta);
}

.itemAdd:after {
  content: "Add To Cart";
}
.itemAdd icon:before {
  content: "\f067";
}

.itemMore:after {
  content: "More Info";
}
.itemMore icon:before {
  content: "\f06e";
}

.checkoutPrev:after {
  content: "Previous";
}
.checkoutPrev icon:before {
  content: "\f060";
}

.checkoutNext:after {
  content: "Next";
}
.checkoutNext icon {
  float: right;
  margin: 0 0 0 10px;
}
.checkoutNext icon:before {
  content: "\f061";
}

.submitOrder:after {
  content: "Submit Order";
}
.submitOrder icon:before {
  content: "\f00c";
}

#emailShoppingForm {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}
#emailShoppingForm button {
  margin: 1em auto;
}

.cartItemUpdate {
  outline: none;
  background: none;
  border: 1px solid var(--primaryDark);
  color: var(--primaryDark);
}
.cartItemUpdate:hover {
  color: var(--white);
  background: var(--primary);
  border: 1px solid var(--primary);
}
.cartItemUpdate:active {
  color: var(--white);
  background: var(--primaryLight);
  border: 1px solid var(--primaryLight);
}

.itemQty {
  padding: 0 .2em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: none;
  margin: auto;
}
.itemQty span {
  margin-right: 15px;
  display: inline-block;
  padding: 5px 0;
}
.itemQty div {
  background: none;
  border: 1px solid var(--opacity40);
  color: inherit;
  transition: var(--transition);
  width: 40px;
  padding: 2px;
}
.itemQty .itemQtyCount {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: stretch;
      align-items: stretch;
}
.itemQty .itemQtyCount input {
  padding: 3px 5px;
  width: 30px;
}
.itemQty .itemQtyUp, .itemQty .itemQtyDown {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 35px;
  cursor: pointer;
}
.itemQty .itemQtyUp:hover, .itemQty .itemQtyDown:hover {
  background: var(--opacity80);
  color: var(--white);
}
.itemQty .itemQtyUp.hidden, .itemQty .itemQtyDown.hidden {
  pointer-events: none;
  opacity: .2;
}
.itemQty .itemQtyUp {
  -ms-flex-order: 3;
      order: 3;
  border-radius: 0 5px 5px 0;
}
.itemQty .itemQtyDown {
  -ms-flex-order: 2;
      order: 2;
  border-radius: 5px 0 0 5px;
  border-right: 0;
}
.itemQty .itemQtyUp:before {
  content: "\f067";
  font-family: fontawesome;
}
.itemQty .itemQtyDown:before {
  content: "\f068";
  font-family: fontawesome;
}
.itemQty .itemQtyDisplay {
  text-align: center;
  -ms-flex-order: 1;
      order: 1;
  padding: 6px 2px;
  margin-right: .5em;
  color: var(--black);
  font-size: 20px;
  font-weight: bold;
  width: 48px;
}

/**
 * Parent div for the checkout pages (details, shipping & pay)
 * the body of the checkout pages have two classes
 * .checkout
 * and a class describing the current step in the checkout process, 
 * i.e checkoutDetails, checkoutPay, checkoutShipping
 *
 * so you can target specific pages via .checkout .checkoutPay for example
 */
.checkout .contentWrap {
  display: -ms-flexbox;
  display: flex;
}
.checkout .contentWrap .container {
  height: 100%;
}

.checkout .siteContent {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.checkout .siteContent .checkoutRight, .checkout .siteContent .checkoutLeft {
  width: 50%;
  display: inline-block;
}
.checkout .siteContent .checkoutRight {
  background: var(--opacity05);
  padding: 1em;
}
.checkout .siteContent .checkoutRight .openCheckout {
  display: none;
  font-size: 0.8em;
}
.checkout .siteContent .checkoutRight .openCheckout:before {
  content: "View Checkout Items";
}
.checkout .siteContent .checkoutRight .openCheckout icon:after {
  content: "\f078";
}
.checkout .siteContent .checkoutRight .items {
  width: 100%;
}
.checkout .siteContent .checkoutRight .checkoutRow {
  width: 100%;
  overflow: hidden;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutTitle, .checkout .siteContent .checkoutRight .checkoutRow .checkoutValue {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutTitle .itemPrice, .checkout .siteContent .checkoutRight .checkoutRow .checkoutValue .itemPrice {
  width: 100%;
  text-align: right;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutTitle .itemImage, .checkout .siteContent .checkoutRight .checkoutRow .checkoutValue .itemImage {
  -ms-flex-item-align: start;
      align-self: flex-start;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutTitle {
  width: 70%;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutTitle input[name=discountCode] {
  padding: 0.5em;
  width: 100%;
  margin-bottom: 5px;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkoutValue {
  width: 30%;
  text-align: right;
}
.checkout .siteContent .checkoutRight .checkoutRow .itemHeading, .checkout .siteContent .checkoutRight .checkoutRow .itemPrice, .checkout .siteContent .checkoutRight .checkoutRow.checkoutSubTotal .checkoutValue, .checkout .siteContent .checkoutRight .checkoutRow.checkoutShipping .checkoutValue, .checkout .siteContent .checkoutRight .checkoutRow.checkoutTotal .checkoutValue, .checkout .siteContent .checkoutRight .checkoutRow.checkoutTax .checkoutValue {
  font-weight: bold;
  font-size: 1.1em;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
.checkout .siteContent .checkoutRight .checkoutRow .checkout-discountMessage {
  display: block;
  width: 100%;
  background: var(--error);
  color: white;
  text-align: center;
  margin: 5px auto;
  border-radius: 3px;
}
.checkout .siteContent .checkoutRight .items .checkoutRow {
  border-bottom: 1px solid var(--opacity10);
  padding: 10px 0 10px;
}
.checkout .siteContent .checkoutRight .items .itemImage {
  width: 100px;
  display: inline-block;
  border: 1px solid var(--opacity10);
  background: white;
  padding: 0.5em;
  border-radius: 0.5em;
  margin-right: 1em;
}
.checkout .siteContent .checkoutRight .items .itemImage .itemThumb {
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.checkout .siteContent .checkoutRight .items .itemDescription {
  width: calc(100% - 110px);
  display: inline-block;
}
.checkout .siteContent .checkoutRight .items .itemDescription .itemHeading, .checkout .siteContent .checkoutRight .items .itemDescription .itemCode, .checkout .siteContent .checkoutRight .items .itemDescription .itemQuantity {
  width: 100%;
}
.checkout .siteContent .checkoutRight .items .itemDescription .itemCode, .checkout .siteContent .checkoutRight .items .itemDescription .itemQuantity {
  font-size: .9em;
  line-height: 1.2em;
}
.checkout .siteContent .checkoutRight .checkoutDiscount {
  padding: 1em 0;
  border-bottom: 1px solid var(--opacity10);
}
.checkout .siteContent .checkoutRight .checkoutDiscount .checkoutTitle {
  width: 50%;
}
.checkout .siteContent .checkoutRight .checkoutDiscount .checkoutValue {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  width: 40%;
}
.checkout .siteContent .checkoutRight .checkoutDiscount .checkoutValue .discountAmount {
  margin-left: 1em;
}
.checkout .siteContent .checkoutRight .checkoutDiscount .removeDiscount {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
}
.checkout .siteContent .checkoutRight .checkoutDiscount .removeDiscount button {
  padding: 0.5em 1.0em !important;
  font-size: 0.9em;
}
.checkout .siteContent .checkoutRight .checkoutSubTotal {
  padding-top: 1em;
}
.checkout .siteContent .checkoutRight .checkoutSubTotal .checkoutValue {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.checkout .siteContent .checkoutRight .checkoutShipping {
  padding-bottom: 1em;
  border-bottom: 1px solid var(--opacity10);
}
.checkout .siteContent .checkoutRight .checkoutTotal {
  padding: 1em 0;
}
.checkout .siteContent .checkoutLeft {
  padding: 1em;
}
.checkout .siteContent .checkoutLeft .enquiryForm {
  float: none;
  margin: 1em auto;
}
.checkout .siteContent .checkoutLeft .checkoutDetails {
  margin-bottom: 2em;
}
.checkout .siteContent .checkoutLeft .checkoutDetails * {
  transition: var(--transition);
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: .2em;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow.col2 input {
  width: 50%;
  width: calc(50% - 0.2em);
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow.col3 input {
  width: 35%;
  width: calc(35% - 0.4em);
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow.col3 input[name=postCode], .checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow.col3 input[name=billingPostcode] {
  width: 20%;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow.col3 .select {
  width: 45%;
  margin-right: .4em;
  width: calc(45% - 0.4em);
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow input {
  width: 100%;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow input[name=firstName], .checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow input[name=state], .checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow input[name=country] {
  margin-right: .4em;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .checkoutDetailsRow input[name=fullName] {
  display: none;
}
.checkout .siteContent .checkoutLeft .checkoutDetails [name=editDetails] {
  display: none;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable {
  font-size: 0.9em;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable .select {
  cursor: default;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable .select:after {
  display: none;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable .checkoutDetailsRow {
  padding: 0;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable input {
  border: 0;
  padding: .2em;
  width: inherit;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable input[name=firstName], .checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable input[name=lastName] {
  display: none;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable input[name=fullName] {
  display: inline-block;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable [name=saveDetails] {
  display: none;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable [name=saveDetails]:before {
  content: '\f0c7';
  font-family: fontAwesome;
  margin-right: 5px;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable [name=editDetails] {
  display: inline-block;
  margin: 10px 0 0;
}
.checkout .siteContent .checkoutLeft .checkoutDetails .nonEditable [name=editDetails]:before {
  content: '\f040';
  font-family: fontAwesome;
  margin-right: 5px;
}
.checkout .siteContent .checkoutLeft .sameAsShipping {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}
.checkout .siteContent .checkoutLeft .sameAsShipping #checkoutSameAsShipping {
  visibility: hidden;
  display: none;
}
.checkout .siteContent .checkoutLeft .sameAsShipping #checkoutSameAsShipping:checked + label icon {
  border-color: var(--cta);
}
.checkout .siteContent .checkoutLeft .sameAsShipping #checkoutSameAsShipping:checked + label icon:after {
  opacity: 1;
}
.checkout .siteContent .checkoutLeft .sameAsShipping #checkoutSameAsShipping:hover + label icon:after {
  opacity: .6;
}
.checkout .siteContent .checkoutLeft .sameAsShipping label {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  cursor: pointer;
}
.checkout .siteContent .checkoutLeft .sameAsShipping label icon {
  display: inline-block;
  cursor: pointer;
  position: relative;
  width: 18px;
  height: 18px;
  top: 0;
  left: 0;
  border-radius: var(--borderRadius);
  border: 1px solid var(--opacity20);
  background: var(--white);
  transition: var(--transition);
  margin-right: .5em;
}
.checkout .siteContent .checkoutLeft .sameAsShipping label icon:after {
  opacity: 0;
  transition: var(--transition);
  content: '';
  position: absolute;
  width: 10px;
  height: 6px;
  background: transparent;
  top: 4px;
  left: 3px;
  border: 3px solid var(--cta);
  border-top: none;
  border-right: none;
  transform: rotate(-45deg);
}
.checkout .siteContent .checkoutLeft .shippingMethod {
  border: 1px solid var(--opacity10);
  border-radius: .5em;
  margin: 10px auto 20px;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow {
  overflow: hidden;
  border-bottom: 1px solid var(--opacity10);
  padding: .5em;
  display: -ms-flexbox;
  display: flex;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingRadio, .checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingDescription {
  display: inline-block;
  float: left;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingRadio {
  width: 30px;
  text-align: center;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingDescription {
  width: calc(100% - 30px);
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingDescription span {
  font-weight: bold;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingDescription div {
  margin-bottom: 5px;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow .shippingDescription p {
  font-size: 0.7em;
  line-height: 1.4em;
  margin: 0;
}
.checkout .siteContent .checkoutLeft .checkoutButtons {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPayOptions {
  margin: auto;
  text-align: center;
  font-size: 0.8em;
  line-height: 1.2em;
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPayOptions img {
  width: 227px;
  height: auto;
  display: block;
  margin: auto;
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPrev.smlBtn {
  margin: 10px auto;
  font-size: 0.7em;
  border: none;
  background: var(--opacity10);
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPrev.smlBtn:hover {
  background: var(--opacity20);
}

.checkoutPayPal .siteContent .checkoutRight .checkoutSubTotal .checkoutValue::after {
  display: none;
}
.checkoutPayPal .checkoutLeft {
  max-width: 550px;
  margin: 0 auto;
}
.checkoutPayPal .checkoutLeft h1 {
  text-align: center;
}

.cartRadio input[type=radio] {
  width: 0px;
  visibility: hidden;
  height: 0px;
  margin: 0;
  padding: 0;
}
.cartRadio label {
  width: 15px;
  height: 15px;
  border-radius: 10px;
  position: relative;
  z-index: 10;
  display: inline-block;
  background: var(--opacity10);
  border: 1px solid var(--opacity40);
  cursor: pointer;
}
.cartRadio label:after {
  content: " ";
  left: 2px;
  top: 0px;
  opacity: 0;
  background: var(--cta);
  width: 9px;
  height: 9px;
  z-index: 1000;
  position: absolute;
  top: 2px;
  border-radius: 8px;
  display: inline-block;
}
.cartRadio label:before {
  background: var(--opacity80);
  border-radius: 8px;
  content: " ";
  display: inline-block;
  height: 11px;
  left: 2px;
  position: absolute;
  top: 2px;
  width: 11px;
  z-index: 1000;
  opacity: 0;
}
.cartRadio input[type="radio"]:checked + .cartRadioLabel {
  border-color: var(--cta);
}
.cartRadio input[type="radio"]:checked + .cartRadioLabel:after {
  opacity: 1;
}
.cartRadio input[type="radio"]:checked + .cartRadioLabel:before {
  display: none;
}
.cartRadio:hover .cartRadioLabel {
  border-color: var(--cta);
}
.cartRadio:hover .cartRadioLabel:after {
  opacity: 1;
}

@-moz-document url-prefix() {
  .cartRadio input[type=radio] {
    margin-right: -13px;
  }
}
.itemMainInfo .enquiryForm, .checkoutLeft .enquiryForm {
  float: none;
  margin: 1em auto;
  max-width: none;
}

#customerForm .required {
  font-size: .8em;
  margin: .5em 0;
}

#customerForm .sameAsShipping {
  margin: 1em 0;
}

/**
 * Category Cover Image
 * Image is on the SubBanner section and it's container
 * using CSS you can toggle which one displays the image
 */
.subBannerCategory {
  width: 100%;
}
.subBannerCategory .container.hasImage {
  padding-bottom: 15%;
  background-size: cover !important;
  background-position: center center !important;
}

.categoryDescription {
  word-wrap: break-word;
}

.categorySection .siteContent {
  width: 100%;
}

.categorySection .sidebar {
  width: 100%;
  max-width: 250px;
  display:none;
}

/*-----------------------------------*/
/*----------- VALIDATION  -----------*/
/*-----------------------------------*/
.popUp {
  font-size: 13px;
  position: absolute;
  background: var(--white);
  color: var(--opacity80);
  padding: 7px;
  border-radius: 3px;
  margin-top: 5px;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
  color: white;
  border: 1px solid var(--opacity60);
  color: black;
  z-index: 1000;
}

.popUpInner {
  position: relative;
}

.popUpInner:after {
  position: absolute;
  width: 0;
  left: 5px;
  top: -15px;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid var(--white);
  content: "";
  z-index: 2;
}

.popUpInner:before {
  position: absolute;
  width: 0;
  left: 5px;
  top: -16px;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 9px solid var(--opacity60);
  content: "";
  z-index: -1;
}

.fieldRequired {
  box-shadow: 0 0 2px 2px rgba(255, 0, 0, 0.5);
}

.fieldRequired:focus {
  box-shadow: 0 0 2px 2px rgba(255, 0, 0, 0.3);
}

