/*Overlay*/
.js-off-canvas-overlay {
  background: rgba(0, 0, 0, 0.3);
  z-index: 100;
}

#main {
  overflow: visible;
}

/*Shopping Bag Styles*/
#shopping-bag-container {
  color: #333;
  background-color: #eee;
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}

#shopping-bag-container.off-canvas.is-open {
  width: 440px;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, .3);
  -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3);
}

#mobile-bag-container #shopping-bag {
  margin-top: 40px;
}

#full-page-shopping-bag #shopping-bag {
  /* background-color: #fff; */
}

#continue-shopping {
  position: absolute;
  top: 0px;
  text-align: left;
  padding: 14px 15px;
  color: #fff;
  background-color: #333;
  font-size: .75rem;
  line-height: .75rem;
  width: 100%;
  cursor: pointer;
  z-index: 10;
}

#continue-shopping-mobile {
  display: none !important;
  position: absolute;
  top: -185px;
  right: 0;
  padding: 14px 15px;
  color: #fff;
  background-color: #333;
  font-size: .75rem;
  line-height: .75rem;
  text-align: left;
  width: 440px;
  cursor: pointer;
  z-index: 999;
}

#continue-shopping i {
  margin-right: 2px;
}

#continue-shopping h3 {
  float: right;
  margin: 0px;
  padding: 0px;
  line-height: .75rem;
  color: #fff;
}

#mobile-checkout-button-top {
  padding: .3rem 1rem;
  margin: 0;
  font-size: 1rem;
  text-transform: uppercase;
  float: right;
  line-height: 1rem;
  font-family: "open-sans-condensed-bold", sans-serif;
  position: absolute;
  right: .5rem;
  top: .4rem;
  z-index: 10;
}

#shopping-bag-list {
  padding: 0px;
}

#shopping-bag-list ul {
  margin: 0px;
}

#shopping-bag-list li {
  border-bottom: 1px #ccc solid;
  padding: 25px 10px;
  background: #fff;
  margin: 0px;
}

#shopping-bag-list li:last-of-type {
  border-bottom: none;
}

#shopping-bag-list::before {
  display: none;
}

.item-img img {
  display: block;
  width: 75%;
  margin-left: 10%;
  margin-bottom: 1.25rem;
}

.item-brand {
  font-family: 'roboto-bold', sans-serif;
  text-transform: uppercase;
  font-size: .8125rem;
  color: #000;
  margin-bottom: .75rem !important
}

.item-id,
.item-name {
  color: #555;
  font-size: .75rem;
  line-height: normal;
  display: block;
  margin-bottom: .5rem;
}

.item-details {
  position: relative;
}

#full-page-shopping-bag .item-details {
  padding-right: 2rem;
  padding-left: 0;
}

.item-details h6 {
  margin: 0rem;
}

.item-details span {
  padding: 0px;
}

.item-details label {
  width: 85%;
}

#full-page-shopping-bag .item-details label {
  width: 100%;
  max-width: 225px;
}

.price {
  font-family: 'roboto', sans-serif;
  font-size: 1rem;
  font-weight: normal;
}

.sale {
  color: #f00;
  font-family: 'roboto-bold', sans-serif;
  margin-bottom: .625rem !important;
}

span.size,
span.qty {
  display: block;
  margin-bottom: 1rem;
}

.item-details .size strong,
.item-details .qty strong {
  font-size: .875rem;
  color: #000;
}

.item-details .remove {
  color: #ddd;
  font-size: 1.5rem;
  position: absolute;
  top: 0px;
  right: 10px;
}

#full-page-shopping-bag .item-details .remove {
  top: -0.75rem;
  right: 0.75rem;
}

.item-details .remove:hover {
  color: #000;
}

#mobile-bag-container #shopping-bag-checkout {
  width: 100%;
  padding: .625rem .625rem 1rem;
  border-top: 1px #ccc solid;
  background-color: #eee;
}

#shopping-bag-checkout .coupon-added,
#shopping-bag-checkout .valid-coupon,
#shopping-bag-checkout .invalid-coupon,
#shopping-bag-checkout .estimate {
  background-color: transparent;
  font-size: .875rem;
  padding-bottom: 0rem;
  line-height: 1.1rem;
}

#shopping-bag-checkout .coupon-added span,
#shopping-bag-checkout .invalid-coupon {
  color: #f00;
}

#shopping-bag-checkout .valid-coupon {
  color: #090;
}

#shopping-bag-checkout .estimate {
  margin-top: .3125rem;
}

#shopping-bag-checkout .estimate,
#shopping-bag-checkout .estimate > div {
  padding: 0rem;
}

#shopping-bag-checkout .estimate span {
  color: #369;
}

#estimate-calc a .fa {
  margin-left: .3125rem;
}

#subtotal {
  padding-bottom: 0rem !important;
}

#subtotal h6 {
  margin: 0px;
  padding: 0px;
  font-size: .75rem;
  font-family: 'roboto', sans-serif;
}

#subtotal h4 {
  text-transform: uppercase;
  font-family: 'roboto-condensed-bold', sans-serif;
  font-size: 1.2rem;
  line-height: 1rem;
  margin: 0px;
  margin-top: .25rem;
  padding: 0px;
}

#full-page-shopping-bag #subtotal h4 {
  margin: 0rem;
  font-size: 1.2rem;
  line-height: 1.2rem;
}

#subtotal strong {
  color: #090;
  border-radius: 15px;
  font-size: .75rem;
  text-transform: uppercase;
  font-family: "roboto-condensed", sans-serif;
}

#coupon-code a,
#estimate-calc a {
  font-size: .75rem;
  line-height: 1.2rem;
  color: #333;
  display: inline-block;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

#coupon-code a .fa {
  margin-left: .3125rem;
}

.coupon-code-form,
.postal-code-form {
  display: none;
}

.coupon-code-form .input-group,
.postal-code-form .input-group {
  margin: 0rem;
}

.coupon-code-form .input-group-label,
.postal-code-form .input-group-label {
  font-size: .75rem;
  color: #333;
  border: none;
  background: #ddd;
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}

.coupon-code-form .input-group .input-group-field,
.postal-code-form .input-group .input-group-field {
  height: 2rem;
  font-size: 1rem;
}

.coupon-code-form .input-group .input-group-button .button,
.postal-code-form .input-group .input-group-button .button {
  height: 2rem;
  font-family: 'roboto-condensed-bold', sans-serif;
  font-size: .875rem;
  color: #fff;
  line-height: 10px;
  border-radius: 0px 2px 2px 0px;
  padding: 5px 10px;
}

.coupon-code-form .input-group .input-group-button .button:hover,
.postal-code-form .input-group .input-group-button .button:hover {
  color: #fff;
}

#CouponMsgArea {
  color: #f00;
  font-family: 'roboto-bold', sans-serif;
  font-size: .75rem;
  display: block;
}

#checkout-buttons button {
  margin: 0px;
}

#paypal-btn {
  background-color: #ffc439;
  color: #333;
}

#paypal .fa {
  color: #042761;
}

#paypal-btn span:first-of-type {
  color: #042761;
}

#paypal-btn span:nth-child(3) {
  color: #0a87c1;
}

/*RECOMMENED ITEMS*/
#mobile-bag-container #recommended {
  margin-bottom: 3rem;
}

#recommended {
  background: #eee;
}

#recommended h2 {
  color: #000;
  text-transform: none;
  text-align: center;
  padding: 0.25rem 1rem;
  margin: 0rem;
  padding-bottom: 0rem;
  font-size: 1.3rem;
  font-family: "roboto-condensed-light", sans-serif;
}

#recommended-items {
  padding: 1rem 1.5rem;
  text-align: center;
}

#recommended-items .recommended-item {
  height: 285px !important;
  background: #fff;
  border-radius: 3px;
  padding: 1rem;
  padding-top: 0rem;
  margin: 0px 10px !important;
  position: relative;
  outline: none;
}

#recommended p {
  margin-bottom: 1rem;
  text-align: center;
}

#recommended-items .slick-next::before,
#recommended-items .slick-prev::before {
  font-size: 1rem !important;
  color: #333;
  opacity: 1;
}

#recommended-items .slick-prev {
  left: 5px;
}

#recommended-items .slick-next {
  right: 5px;
}

#recommended-items .slick-prev::before {
  content: '\f053';
  font-family: FontAwesome;
}

#recommended-items .slick-next::before {
  content: '\f054';
  font-family: FontAwesome;
}

#recommended-items img {
  margin: 0 auto;
}

#recommended-items h6 {
  margin: 0rem !important;
}

#recommended-items .item-brand {
  margin-bottom: 1rem !important;
}

#recommended-items select {
  margin: 0rem;
  margin-top: .25rem;
}

.recommended-item button.tiny {
  position: absolute;
  bottom: 12px;
  width: 40%;
  margin: 0 auto;
  left: 30%;
  padding: .3125rem;
  font-size: 1rem;
  font-family: "open-sans-condensed-bold", sans-serif;
  /*display: none;*/
}

.recommended-item .choose-size {
  display: none;
  width: 100%;
  /*padding: .25rem;*/
  border: 1px solid #eee;
  border-radius: 3px;
  margin: 0 auto;
  position: absolute;
  top: 0px;
  left: 0px;
  background: #fff;
  overflow-y: auto;
  height: 285px;
  z-index: 1;
  font-size: .75rem;
}

.choose-size h5 {
  margin: .25rem;
  font-size: 1rem;
}

.choose-size ul {
  margin: 0rem;
}

.choose-size li {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  margin: 0px;
  margin-bottom: -1px;
  padding: .5rem;
  /*font-size: .875rem;*/
  line-height: .875rem;
  cursor: pointer;
}

.choose-size li:hover {
  background-color: #069;
  border-color: #069;
  color: #fff;
}

#full-page-shopping-bag #recommended-items .item-brand {
  margin-bottom: 0rem !important;
}

#full-page-shopping-bag #shopping-bag-checkout {
  padding: 0.625rem !important;
}

/* Mobile Shopping Bag Styles */
@media screen and (max-width: 74.9375rem) {
  #recommended-items {
      padding: 1rem 3rem 2rem;
  }

  #full-page-shopping-bag #recommended-items .recommended-item {
      height: unset !important;
      padding: 0 1.25rem 3.5rem;
  }

  #recommended-items .recommended-item {
    height: 248px !important;
    /* padding: 0 1.25rem 3.5rem; */
  }

  .recommended-item .choose-size {
      height: 100%;
  }
}

/*Tablet Breakpoint*/
@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  #mobile-bag-container {
      overflow-y: auto;
      height: 100vh;
  }

  #mobile-footer {
      padding-bottom: 20px;
  }

  #shopping-bag {
      height: auto;
      overflow: hidden;
  }

  #shopping-bag-checkout {
      height: auto;
  }

  #full-page-shopping-bag {
      min-height: 645px !important;
  }

  #full-page-shopping-bag [data-open="returns-policy-modal"] {
    display: inline-block;
    width: unset;
  }

  [data-open="returns-policy-modal"] {
    font-size: 14px;
  }

  #full-page-shopping-bag #shopping-bag-checkout {
      padding: .625rem !important;
  }

  #full-page-shopping-bag #shopping-bag-checkout .rew-points {
      width: calc(100% - 1.75rem);
      margin-left: 0.9375rem;
  }

  #full-page-shopping-bag #shopping-bag {
      padding: .625rem !important;
      /* background: #eee; */
  }

  #full-page-shopping-bag #shopping-bag #recommended p {
      margin: 0rem !important;
      /* color: #f00; */
  }

  .coupon-code-form .input-group,
  .postal-code-form .input-group {
      margin-top: .5rem;
  }

  #recommended-items .slick-next {
      right: 20px;
  }

  #recommended-items .slick-prev {
      left: 20px;
  }

  #recommended-items .item-brand {
      margin-bottom: 0rem !important;
  }

  .recommended-item .price {
      line-height: 1rem;
  }

  .recommended-item button.tiny {
      bottom: 10px;
  }

  #checkout-buttons .columns:first-child {
      padding-right: 0.25rem;
  }

  #checkout-buttons .columns:last-child {
      padding-left: 0.25rem;
  }

  #checkout-buttons .button {
      font-size: 0.7rem;
      padding: 0.85em 0.3125em;
  }
}

/*Tablet Breakpoint - Landscape*/
@media screen and (max-width: 75em) and (orientation: landscape) {
  #mobile-bag-container {
      overflow-y: auto;
      height: 100vh;
  }

  #mobile-checkout-button-top {
      display: inline !important;
  }

  #shopping-bag {
      height: auto;
      overflow: hidden;
  }

  #shopping-bag-checkout {
      height: auto;
  }

  #full-page-shopping-bag [data-open="returns-policy-modal"] {
    display: inline-block;
    width: unset;
  }

  [data-open="returns-policy-modal"] {
    font-size: 14px;
  }

  #full-page-shopping-bag #shopping-bag-checkout .rew-points {
      width: calc(100% - 1.75rem);
      margin-left: 0.9375rem;
  }

  #full-page-shopping-bag #shopping-bag {
      padding: .625rem !important;
      /* background: #eee; */
  }

  .coupon-code-form .input-group,
  .postal-code-form .input-group {
      margin-top: .5rem;
  }

  #recommended-items .slick-next {
      right: 20px;
  }

  #recommended-items .slick-prev {
      left: 20px;
  }

  #recommended-items .item-brand {
      margin-bottom: 0rem !important;
  }

  .recommended-item .price {
      line-height: 1rem;
  }

  .recommended-item button.tiny {
      bottom: 10px;
  }
}

/*Mobile Breakpoint*/
@media screen and (max-width: 39.9375em) {
  body input,
  body select {
      font-size: 1rem !important;
  }

  .sticky-checkout {
      position: fixed;
      z-index: 10;
      top: 55px;
      width: 100%;
      box-shadow: 0px 0px 5px rgba(0, 0, 0, .3);
      -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3);
      -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3);
  }

  #right-column-wrapper {
      padding: 0 !important;
  }

  #subtotal h4 {
      font-size: 1rem;
      line-height: 1rem;
  }

  #shopping-bag-container.off-canvas.is-open {
      width: 100%;
  }

  #continue-shopping-mobile {
      display: none;
      position: absolute;
      top: 0px;
      padding: 14px 15px;
      color: #fff;
      background-color: #333;
      font-size: .75rem;
      line-height: .75rem;
      width: 100%;
      cursor: pointer;
      z-index: 999;
  }

  [data-open="returns-policy-modal"] {
      margin-bottom: 0.625rem;
  }

  #full-page-shopping-bag #shopping-bag-checkout .rew-points {
      width: calc(100% - 1.25rem);
      margin-left: 0.625rem;
  }

  .coupon-code-form .input-group,
  .postal-code-form .input-group {
      margin-top: .5rem;
  }

  #full-page-shopping-bag #shopping-bag-checkout #checkout-buttons button {
      font-size: .75rem;
      font-weight: bold;
  }

  #recommended-items .slick-next {
      right: 1rem;
  }

  #recommended-items .slick-prev {
      left: 1rem;
  }

  #recommended-items .item-brand {
      margin-bottom: 0rem !important;
  }

  .recommended-item .price {
      line-height: 1rem;
  }

  .recommended-item button.tiny {
      bottom: 10px;
  }
}

@media screen and (max-width: 24rem) {
  #full-page-shopping-bag #shopping-bag-checkout #checkout-buttons button span.hide-xsmall {
      display: none;
  }
}