/*-----------------------------------------*/
/*--------- 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 {
  /**
   * A cart item thumb
   */
}
.cartThumbs .cartThumb {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  /* Item Banner
   * Shows if the item is on sale, new, popular, sold etc */
  /* Item name and price */
  /**
   * Wrapper for the thumbnail and sale sticker
   */
}
.cartThumbs .cartThumb .banner {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1000;
  padding: .3em .5em;
  font-size: .8em;
  font-weight: bold;
  text-transform: uppercase;
  /* The different types of banner
   * the <div> will be, .itemBanner .bannerType */
}
.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.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;
  padding: .5em .2em;
  /**
  * Short Description that appears on the item Thumb
  */
}
.cartThumbs .cartThumb .info .name {
  text-align: center;
  font-size: 1em;
  padding: 0.2em;
}
.cartThumbs .cartThumb .info .price {
  text-align: center;
  font-weight: bold;
  -ms-flex-order: 2;
      order: 2;
}
.cartThumbs .cartThumb .info .price .priceWas {
  color: #888888;
  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 p {
  padding: 0;
  margin: 0;
}
.cartThumbs .cartThumb .imageFrame {
  /* The Actual Cart Image */
  /*.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: #ccc;
  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;
}

/**
 * Category Side Menu and Account Menu
 */
.categoryMenu {
  margin: 1.5em 0 1em;
  font-size: .9em;
  line-height: 1.2em;
  /**
   * Side bar heading
   */
  /**
   * First Level Categories
   */
  /**
   * Second Level Categories
   */
  /**
   * Third Level Categories
  */
}
.categoryMenu h2:before {
  content: "Categories";
  display: block;
}
.categoryMenu li {
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0 0 10px;
  /**
   * Generic Side Properties
   */
}
.categoryMenu li a {
  display: block;
  width: 100%;
  padding: 3px;
  margin: 1px 0;
  text-decoration: none;
}
.categoryMenu li ul {
  padding: 0;
  margin: 0;
  font-size: .9em;
}
.categoryMenu li ul li {
  margin: 0;
  padding: 0;
  cursor: pointer;
  display: block;
}
.categoryMenu li ul li ul {
  margin-bottom: 5px;
}

.categoryMenu > li > ul > li > a {
  padding-left: 10px;
}
.categoryMenu > li > ul > li > a:before {
  content: '\f101';
  float: left;
  font-family: fontawesome;
  font-size: 0.9em;
  margin-right: 5px;
}
.categoryMenu > li > ul > li > ul > li > a {
  padding-left: 20px;
  font-size: 0.9em;
  /*&:hover{
    background: var(--primaryDark);
    color:white;
  }*/
}
.categoryMenu > li > ul > li > ul > li > a:before {
  content: '\f105';
  float: left;
  font-family: fontawesome;
  font-size: 0.9em;
  margin-right: 5px;
}

.cartItemPage {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  /**
   * Item Warning
   * when the user adds an item to the cart,
   * it is validated to see if it is stil instock,
   * or required fields submitted, 
   *
   * If there's an error, this div is added with a message
   */
  /**
   * Variant Drop Downs
   */
  /**
   * Cart Item Images
   */
}
.cartItemPage h1 {
  margin-bottom: 0;
}
.cartItemPage .itemLeft {
  width: 45%;
}
.cartItemPage .itemLeft.noImage .itemHeroImage {
  padding-bottom: 80%;
  position: relative;
  border: 1px solid #EAEAEA;
}
.cartItemPage .itemLeft.noImage .itemHeroImage:after {
  content: "\f03e";
  font-family: FontAwesome;
  font-size: 4em;
  color: #ccc;
  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 {
  display: none;
}
.cartItemPage .itemRight {
  width: 50%;
}
.cartItemPage .itemRight .itemStock span:before {
  content: "Remaining: ";
}
.cartItemPage .itemRight #enquiry {
  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%;
  color: #4183d7;
}
.cartItemPage .itemPrice .itemWas {
  font-weight: normal;
  font-size: .9em;
  display: inline-block;
  color: #888888;
  margin-left: 10px;
}
.cartItemPage .itemCode {
  text-align: left;
  margin-bottom: 10px;
  padding-left: 2px;
  color: #bbbbbb;
}
.cartItemPage .itemWarning {
  border: 1px solid #CF000F;
  background: #f7d8da;
  padding: .3em;
  font-size: .9em;
  text-align: center;
  font-weight: bold;
  color: #CF000F;
}
.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 rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.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: 10px 0;
  padding: 0 10px;
  display: inline-block;
  background: rgba(0, 0, 0, 0.03);
}
.cartItemPage .itemImages {
  /**
   * The item thumbnails underneath the main hero image
   */
}
.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;
}
.cartItemPage .itemImages .itemHeroImage .itemImage.hidden {
  display: none;
}
.cartItemPage .itemImages .itemImage {
  margin-top: 17px;
  position: relative;
  border: 1px solid #EAEAEA;
  /*  Item Banners */
}
.cartItemPage .itemImages .itemImage .banner {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
  background: #4183d7;
  color: #eee;
  padding: .3em .5em;
  font-size: .8em;
  font-weight: bold;
  text-transform: uppercase;
  /**
   * The different types of banner
   * the <div> will be, .itemBanner .bannerType
   */
}
.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.popular:before {
  content: "Popular";
}
.cartItemPage .itemImages .itemImageThumbs {
  width: 100%;
  overflow: hidden;
  border: 1px solid #EAEAEA;
  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;
}

/**
 * Search box in the sidebar of the category page
 */
.categorySearch {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-top: 1em;
  /**
   * Search Field
   */
  /**
   * Submit Button
   */
}
.categorySearch input {
  padding: .5em;
  width: 79%;
  border-right: 0;
}
.categorySearch button {
  /*color: $white;
  background: var(--primary);
  border:1px solid $greyDark;*/
  width: 20%;
}
.categorySearch button span:before {
  content: "\f002";
  font-family: fontawesome;
}
.categorySearch button:hover {
  /*background: var(--primaryDark);*/
}

/**
 * Filter in the category sidebar
 */
.categoryFilter {
  margin-top: 0.5em;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  padding: 0;
  /**
   * Parents for the min/max inputs
   */
  /**
   * Submit Button
   */
}
.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: 0.5em;
}
.categoryFilter .filterInput span {
  font-size: 0.8em;
}
.categoryFilter button {
  width: 20%;
  height: 39px;
  margin-top: auto;
}
.categoryFilter button span:before {
  content: "\f002";
  font-family: fontawesome;
}

.viewCartContent .prevPage:after {
  content: "Return to Previous Page";
}
.viewCartContent .prevPage icon:before {
  content: "\f060";
}
.viewCartContent .qtyForm {
  display: -ms-flexbox;
  display: flex;
}
.viewCartContent .qtyForm .itemQty {
  padding: 0;
  margin-right: 10px;
}
.viewCartContent .cartCheckout:after {
  content: "Checkout";
}
.viewCartContent .cartCheckout icon:before {
  content: "\f07a";
}

.cartItemOther {
  width: 100%;
  box-sizing: border-box;
}
.cartItemOther .cartItems {
  margin-bottom: 0;
}

.viewCartContent {
  width: 100%;
  margin-bottom: 1rem;
}

.viewCartSection {
  padding: 10px;
  width: 100%;
  margin-top: 10px;
  box-sizing: border-box;
}
.viewCartSection h4 {
  margin: 0;
}
.viewCartSection .cartSubHeading {
  color: #888888;
}

.viewCartItems {
  width: 100%;
  margin: 10px 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: 10px;
}
.viewCartItems .cartItemAction .cartItemUpdate {
  margin-right: 5px;
}
.viewCartItems .cartItemAction span.button {
  cursor: auto;
  color: #CF000F;
  margin-left: 1em;
}
.viewCartItems .cartSubTotal {
  float: right;
  margin: 20px 0;
  color: #555;
  font-size: 1.1em;
}
.viewCartItems .cartSubTotal span {
  font-weight: bold;
  margin-left: 10px;
}
.viewCartItems .cartUpdate {
  float: left;
  margin: 30px 0;
  background: #404040;
  border-radius: 5px;
  padding: 10px;
  color: #fff;
  font-size: 1.1em;
}
.viewCartItems .cartUpdate span {
  margin-right: 10px;
}

.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 {
  color: #fff;
  background: #CF000F;
  border-radius: 50%;
  padding: 4px 12px;
}
.viewCartRow .viewCartDelete div:before {
  content: "\f00d";
}
.viewCartRow .viewCartItem {
  width: 120px;
  padding: 5px;
  box-sizing: border-box;
  border-radius: 3px;
  border: 1px solid #ccc;
}
.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: #eee;
  border-radius: 2px;
  width: 100%;
  font-size: 1.5em;
  line-height: 1.0em;
  padding: 0.5em;
  color: #aaa;
}
.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: #CF000F;
  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: rgba(0, 0, 0, 0.01) !important;
}

.viewCartRowHeader {
  font-weight: bold;
  border-bottom: 2px solid rgba(0, 0, 0, 0.15);
  font-size: 1em;
  /*background: var(--primaryDark);
  color: $white;*/
}
.viewCartRowHeader .viewCartItem {
  border: none;
}

#discountForm {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex-align: stretch;
      align-items: stretch;
}
#discountForm .discountCodeInput {
  margin-right: auto;
  padding: 5px;
}
#discountForm .cartBtn {
  margin-left: 10px;
}

.cartMessage {
  text-align: center;
  margin: 10px 0;
}
.cartMessage.success {
  color: #26A65B;
  border: 1px solid #26A65B;
}
.cartMessage.fail {
  color: #CF000F;
  border: 1px solid #CF000F;
}

#shippingForm {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: center;
      align-items: center;
}
#shippingForm .cartBtn {
  margin-left: auto;
}

.shipTo {
  margin-right: 10px;
}

#additionalInfoForm .cartBtn {
  float: right;
}

/*--- SHOPPING QUESTIONS --*/
.cartQuestionRow {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  width: 80%;
  max-width: 700px;
  margin: 5px auto;
}
.cartQuestionRow .cartQuestion {
  width: 25%;
}
.cartQuestionRow .cartQuestionInput {
  margin-left: 10px;
  width: 70%;
}
.cartQuestionRow .cartQuestionInput input {
  width: 100%;
  padding: 3px 5px;
  font-family: inherit;
}

/*--- SHOPPING QUESTIONS REVIEW --*/
#reviewSection .container {
  display: inline-block;
}
#reviewSection .viewCartSection {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
#reviewSection .reviewLeft, #reviewSection .reviewRight {
  width: 50%;
}
#reviewSection .reviewLeft {
  padding-right: 10px;
}
#reviewSection .reviewRight {
  padding-left: 10px;
}
#reviewSection .reviewQuestionRow {
  width: 100%;
  margin: 5px 0;
  display: -ms-flexbox;
  display: flex;
}
#reviewSection .reviewQuestionRow .reviewQuestion {
  width: 30%;
  color: #555;
}
#reviewSection .reviewQuestionRow .reviewQuestionAnswer {
  width: 70%;
  background: #EAEAEA;
  padding: 5px;
}
#reviewSection .reviewQuestionRow .reviewQuestion, #reviewSection .reviewQuestionRow .reviewQuestionAnswer {
  display: inline-block;
}

.payPalLogo {
  font: #4183d7;
  color: inherit;
  font-size: 1.3em;
}
.payPalLogo icon {
  margin-right: 5px;
}

.checkoutEmail .submitOrder {
  width: 100%;
}

.priceSection, .checkoutFinalPrice {
  width: 300px;
  padding-top: 1em;
}
.priceSection .viewCartSectionInner, .checkoutFinalPrice .viewCartSectionInner {
  width: 100%;
  max-width: 250px;
  text-align: right;
  float: right;
}
.priceSection .cartPriceRow, .checkoutFinalPrice .cartPriceRow {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex-align: center;
      align-items: center;
  padding: 0 5px;
}
.priceSection .cartPricePrice, .checkoutFinalPrice .cartPricePrice {
  font-weight: bold;
  width: 100px;
  text-align: right;
  color: inherit;
}
.priceSection .priceTotal, .checkoutFinalPrice .priceTotal {
  border: 1px solid #4183d7;
  background: #4183d7;
  color: #fff;
  font-size: 1.4em;
  padding: 5px;
  margin: 10px 0;
}
.priceSection .cartPriceRow:nth-child(1), .checkoutFinalPrice .cartPriceRow:nth-child(1) {
  width: 100%;
  text-align: center;
  border-bottom: 2px solid #f2f2f2;
  margin-bottom: 5px;
  font-size: 1.1em;
  padding: 7px;
}

.cartInnerWrap, .checkoutSection {
  width: 100%;
}

.checkoutSection {
  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;
}
.checkoutSection span.fontAwesome {
  margin-right: 10px;
}
.checkoutSection h2 {
  -ms-flex-order: -1;
      order: -1;
}
.checkoutSection #additionalinfo {
  width: 100%;
}

.checkoutSection.priceSection {
  -ms-flex-pack: end;
      justify-content: flex-end;
}

.checkoutSectionInner {
  -ms-flex-item-align: end;
      align-self: flex-end;
  width: 200px;
}

.checkoutStep {
  display: inline;
  margin-right: 0.5em;
}

.checkoutStageComplete {
  -ms-flex-align: center;
      align-items: center;
  color: white;
  display: -ms-flexbox;
  display: flex;
  font-size: 1em;
  line-height: 1em;
  margin-left: auto;
  padding: 12px 20px;
}
.checkoutStageComplete span.fontAwesome {
  margin-left: 10px;
}

.checkoutStageComplete, .UpdateQuantity {
  background: #26A65B none repeat scroll 0 0;
  color: #fff;
}

.UpdateQuantity {
  cursor: pointer;
}

.linkCartCheckout .contentWrap {
  width: 100%;
  max-width: 1200px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: stretch;
      align-items: stretch;
  margin: auto;
}

.checkoutReview {
  width: 100%;
  margin-bottom: 10px;
}

.checkoutReview .checkoutFinalPrice {
  width: 200px;
  margin-left: auto;
}

.checkoutReview .checkoutPaypal {
  width: 200px;
  margin-top: 20px;
  margin-left: auto;
  /*---- DISPLAY FLEX -----*/
  display: -ms-flexbox;
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -ms-flex-direction: column;
  /*---- END DISPLAY FLEX -----*/
  /*--- JUSTIFY CONTENT ---*/
  justify-content: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  /*--- END JUSTIFY CONTENT ---*/
  /*------ FLEX ALIGN -----*/
  align-items: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  /*------ END FLEX ALIGN -----*/
}

.checkoutReview .checkoutPaypal .payPalLogo {
  background: url(PP-logo.png);
  margin-bottom: 10px;
  width: 129px;
  height: 49px;
  display: block;
}

.checkoutReview .checkoutEmail {
  width: 47%;
  /*---- DISPLAY FLEX -----*/
  display: -ms-flexbox;
  display: flex;
  display: -webkit-flex;
  /*---- END DISPLAY FLEX -----*/
  /*--- JUSTIFY CONTENT ---*/
  justify-content: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  /*--- END JUSTIFY CONTENT ---*/
  /*------ FLEX ALIGN -----*/
  align-items: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  /*------ END FLEX ALIGN -----*/
}

.checkoutReview .checkoutEmail .cartBtn {
  margin-left: 0;
}

.checkoutReviewMessage {
  padding: 10px;
  width: 100%;
  margin: 10px 0;
}

.cartBtn {
  background: none;
  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: #4183d7;
  border: 1px solid #4183d7;
}
.cartBtn .highlight:hover:not(.disabled) {
  background: #4183d7;
  color: white;
}

.cartBtn.grey {
  color: #737373;
  border: 1px solid #737373;
}
.cartBtn.grey:hover:not(.disabled) {
  background: #737373;
  color: white;
}

.cartBtn.green {
  color: #26A65B;
  border: 1px solid #26A65B;
}
.cartBtn.green:hover:not(.disabled) {
  background: #26A65B;
  color: white;
}

.cartBtn.red {
  color: #CF000F;
  border: 1px solid #CF000F;
}
.cartBtn.red:hover:not(.disabled) {
  background: #CF000F;
  color: white;
}

.cartBtn.submitOrder {
  background: #26A65B;
  border: 1px solid #26A65B;
  color: white;
  width: 100%;
}
.cartBtn.submitOrder:hover:not(.disabled) {
  background: white;
  color: #26A65B;
}

.resumeShopping {
  margin-left: auto;
  font-size: 15px !important;
  font-weight: normal !important;
}
.resumeShopping:after {
  content: "Resume Shopping";
}
.resumeShopping icon:before {
  content: "\f07a";
}
.resumeShopping span.fontAwesome {
  margin-right: 10px;
}

.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";
}

#additionalSection .checkoutNext {
  margin-left: auto;
}

.applyDiscount:after {
  content: "Apply Discount";
}
.applyDiscount icon {
  margin: 0 0 0 10px;
}
.applyDiscount icon:before {
  content: "\f155";
}

.submitOrder:after {
  content: "Submit Order";
}
.submitOrder icon:before {
  content: "\f00c";
}

.viewCartQuantity {
  width: 110px;
}

.viewCartQuantity form {
  display: -ms-flexbox;
  display: flex;
  vertical-align: center;
}

.viewCartQuantity .cartItemQtyCount {
  display: inline-block;
  position: relative;
  width: 64px;
  font-size: 0.8em;
}

.viewCartQuantity .UpdateQuantity {
  width: 40px;
  border: medium none;
  display: inline-block;
  padding: 7px 6px 8px;
  background: #26a65b none repeat scroll 0 0;
  color: #fff;
  cursor: pointer;
  font-size: 0.8em;
  vertical-align: top;
}

.cartItemQtyCount .itemQtyDisplay {
  width: 46px;
  padding: 6px 2px;
  text-align: center;
}

.cartItemQtyCount .cartItemQtyUp, .cartItemQtyCount .cartItemQtyDown {
  width: 40%;
  height: 50%;
  position: absolute;
  cursor: pointer;
  line-height: 1.4em;
}

.cartItemQtyCount .cartItemQtyUp {
  top: 0;
  right: 0;
}

.cartItemQtyCount .cartItemQtyDown {
  bottom: 0;
  right: 0;
}

.itemQty {
  color: #555;
  background: rgba(0, 0, 0, 0);
  padding: 0 5px;
  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 #676767;
  color: #676767;
  transition: all 0.2s ease;
  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: #222;
  color: #fff;
}
.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;
}
.itemQty .itemQtyUp:before {
  content: "\f067";
  font-family: fontawesome;
}
.itemQty .itemQtyDown:before {
  content: "\f068";
  font-family: fontawesome;
}
.itemQty .itemQtyDisplay {
  border: none;
  text-align: center;
  -ms-flex-order: 1;
      order: 1;
  padding: 6px 2px;
  margin-right: 10px;
  color: black;
  font-size: 20px;
  font-weight: bold;
  width: 48px;
}

.viewCartRow .viewCartDelete a {
  color: #fff;
  background: #CF000F;
  border-radius: 50%;
  padding: 10px 12px;
}
.viewCartRow .viewCartDelete a:hover {
  background: #c5000e;
}
.viewCartRow .viewCartDelete a:before {
  pointer-events: none;
}

.viewCartItems .cartSubTotal {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  margin: 0 0 20px;
  width: 100%;
  background: #f1f1f1;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  color: black;
  padding: 20px;
  font-size: 1.5em;
}

/**
 * Container for both the item pagination list and the items
 * per page drop down
 */
.itemPagination {
  font-size: .8em;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin-bottom: 0.5em;
  /**
   * Parent container for pagination links
   */
}
.itemPagination .pagination {
  display: -ms-flexbox;
  display: flex;
  margin: 10px 0;
  /**
   * A pagination link
   */
}
.itemPagination .pagination a {
  border: 1px solid #ccc;
  width: 30px;
  height: 30px;
  margin: 0 2px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  cursor: pointer;
  text-decoration: none;
}
.itemPagination .pagination a:only-child {
  display: none;
}
.itemPagination .pagination a:hover:not(.false) {
  background: rgba(0, 0, 0, 0.2);
}
.itemPagination .pagination a.current {
  font-weight: bold;
  background: rgba(0, 0, 0, 0.1);
}
.itemPagination .pagination a.prev:before {
  content: "\f104";
  font-family: fontawesome;
}
.itemPagination .pagination a.next:before {
  content: "\f105";
  font-family: fontawesome;
}

/**
 * Items per page <select> in category sidebar
 */
.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%);*/
}

/**
 * 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;
  /**
   * The two checkout sections 
   *  - checkoutLeft  - the current step in the checkout process
   *  - checkoutRight - the summary of the items in cart, totals etc
   */
  /**
   * Cart summary
   */
  /**
   * Left hand side shows the current progress of the 
   * checkout process
   */
}
.checkout .siteContent .checkoutRight, .checkout .siteContent .checkoutLeft {
  width: 50%;
  display: inline-block;
}
.checkout .siteContent .checkoutRight {
  background: var(--greyOver);
  padding: 1em;
  /**
   * Parent container for all the items in the 
   * cart sumamry
   */
  /**
   * Discount section in the checkout summary
   */
}
.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;
  /**
   * Left hand side of each checkout summary row
   */
  /**
   * Right hand side of each checkout summary row
   */
  /**
   * Make the heading, price and totals bold, and larger
   */
}
.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: calc(100% - 1px);
  margin-bottom: 5px;
  margin-left: 1px;
}
.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: #D50C0C;
  color: white;
  text-align: center;
  margin: 5px auto;
  border-radius: 3px;
}
.checkout .siteContent .checkoutRight .items {
  /**
   * Put a border under each of the items
   */
  /**
   * parent div for the item image
   */
  /**
   * Description for the item, contains item code etc
   */
}
.checkout .siteContent .checkoutRight .items .checkoutRow {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding: 10px 0 10px;
}
.checkout .siteContent .checkoutRight .items .itemImage {
  width: 100px;
  display: inline-block;
  border: 1px solid rgba(0, 0, 0, 0.1);
  background: white;
  padding: 0.5em;
  border-radius: 0.5em;
  margin-right: 1em;
  /**
   * The actual image, it's a backround image
   * we use cover to ensure it fills the square
   */
}
.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 rgba(0, 0, 0, 0.1);
}
.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 rgba(0, 0, 0, 0.1);
}
.checkout .siteContent .checkoutRight .checkoutTotal {
  padding: 1em 0;
}
.checkout .siteContent .checkoutLeft {
  padding: 1em;
  /**
   * Fix for forms added to checkout process
   */
  /**
   * Checkout Customer Details
   */
  /**
   * Shipping Methods
   */
}
.checkout .siteContent .checkoutLeft #enquiry {
  float: none;
  margin: 1em auto;
}
.checkout .siteContent .checkoutLeft .checkoutDetails {
  margin-bottom: 1em;
  /**
   * Styles for when the customer details aren't editable
   * Remove the border off of the inputs, JS will add the 
   * readonly attr
   */
}
.checkout .siteContent .checkoutLeft .checkoutDetails * {
  transition: all 0.2s ease;
}
.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] {
  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%;
  padding: .5em;
  /**
   * With rows that have multiple inputs, we need to
   * put some gutters between some of the inputs.
   */
}
.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 .shippingMethod {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: .5em;
  margin: 10px auto 20px;
}
.checkout .siteContent .checkoutLeft .shippingMethod .shippingRow {
  overflow: hidden;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  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 #paypal-button {
  width: 100%;
  text-align: center;
}
.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 .checkoutPayOptions span.checkoutPayText {
  display: block;
  margin-bottom: 1.5em;
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPayOptions span.checkoutPayText:before, .checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPayOptions span.checkoutPayText:after {
  display: block;
  margin: 0.4em 0;
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPayOptions span.checkoutPayText:before {
  content: "Pay safely today with Visa, MasterCard, AMEX on PayPal.";
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPayOptions span.checkoutPayText:after {
  content: "No account required.";
}
.checkout .siteContent .checkoutLeft .checkoutButtons .checkoutPrev.smlBtn {
  margin: 10px auto;
  font-size: 0.7em;
  border: none;
}

/**
 * PayPal Checkout Page
 */
.checkoutPayPal .checkoutLeft {
  max-width: 500px;
  margin: 0 auto;
}
.checkoutPayPal .checkoutLeft h1 {
  text-align: center;
}
.checkoutPayPal .siteContent .checkoutRight .checkoutSubTotal .checkoutValue::after {
  display: none;
}

/**
 * Reusable radio styles
 */
.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: #eee;
  border: 1px solid #aaa;
  cursor: pointer;
}
.cartRadio label:after {
  content: " ";
  left: 2px;
  top: 0px;
  opacity: 0;
  background: #222;
  width: 9px;
  height: 9px;
  z-index: 1000;
  position: absolute;
  top: 2px;
  border-radius: 8px;
  display: inline-block;
}
.cartRadio label::before {
  background: #222;
  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:after {
  opacity: 1;
}
.cartRadio input[type="radio"]:checked + .cartRadioLabel:before {
  display: none;
}

@-moz-document url-prefix() {
  .cartRadio input[type=radio] {
    margin-right: -13px;
  }
}
.itemMainInfo #enquiry, .checkoutLeft #enquiry {
  float: none;
  margin: 1em auto;
  max-width: none;
}

#customerForm .required {
  font-size: .8em;
  margin: .5em 0;
}

#customerForm .sameAsShipping {
  margin: .5em 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: #fff;
  color: #222;
  padding: 7px;
  border-radius: 3px;
  margin-top: 5px;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
  color: white;
  border: 1px solid #ccc;
  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 #fff;
  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 #ccc;
  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);
}

.cartItemPage .itemLeft .item-afterpay {
    display: none;
}
