/* cart item design */
.cart.table-wrapper tbody.cart.item.membership {
  background-color: #EDECEA;
}
.cart.table-wrapper tbody.cart.item.membership td[data-th="Photo"] {
  padding: 8px !important;
}
.cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] {
  display: table-cell;
}
.cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] .membership__content {
  border-bottom: 0.5px solid #CBC9CB;
  text-align: left;
  margin-bottom: 1em;
  /*span.modal-trigger {
                    display: inline-block;
                    text-decoration: underline;
                    color: #6495ed;
                    cursor: pointer;
                }*/
}
@media screen and (min-width: 768px) {
  .cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] .membership__content {
    padding-bottom: 1em;
  }
}
.cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] .membership__content .membership__title {
  text-transform: uppercase;
  font-family: "Avenir", Helvetica, sans-serif !important;
  letter-spacing: 1.75px;
  font-size: 1.1em;
  color: #41403F;
}
.cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] .membership__content .membership__title strong {
  color: #080706;
}
.cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] .membership__content a {
  color: #3765A3;
}
.cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] .product-item-details {
  display: block;
  /*.mobile-only.price {
                    margin-bottom: 8px;
                }*/
}
@media screen and (min-width: 768px) {
  .cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] .product-item-details {
    margin-bottom: 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] .product-item-details .product-item-name {
    display: block;
  }
}
.cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] .product-item-details .product-item-name .hide-mobile {
  margin-bottom: 0;
}
.cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] .product-item-details .hide-mobile.price {
  float: right;
}
.cart.table-wrapper tbody.cart.item.membership td[data-th="Item"] .product-item-details .hide-mobile.price span {
  font-size: 1.4rem !important;
}
.cart.table-wrapper tbody.cart.item.membership .item-info .actions-toolbar .action-edit {
  display: none !important;
}
div[class*='__membership-message'] a,
div[class*='__membership-message'] span {
  color: #428BCA;
  text-decoration: underline;
}
div[class*='__membership-message'] a {
  white-space: nowrap;
}
div[class*='__membership-message'] span {
  cursor: pointer;
}
div.cart-summary div.cart-summary__membership-message {
  font-size: 12px;
  letter-spacing: 0.5px;
  margin-top: 10px;
  margin-bottom: -10px;
  width: fit-content !important;
}
@media screen and (min-width: 992px) {
  div.cart-summary div.cart-summary__membership-message {
    max-width: 304px;
  }
}
@media screen and (min-width: 1212px) {
  div.cart-summary div.cart-summary__membership-message {
    float: right;
  }
}
@media screen and (max-width: 991px) {
  div.cart-summary div.cart-summary__membership-message {
    padding-top: 1em;
    margin: 0 auto;
  }
}
div.cart-summary div.cart-summary__membership-message:before {
  /* NOTE: providing multiple options for icons in case desired in the future */
  content: '\f298';
  content: '\f129';
  font-family: 'FONTAWESOME';
  /* content: '\e602'; */
  /* content: '\e605'; */
  /* content: '\e623'; */
  /* font-family: 'icons-blank-theme'; */
  content: '\e611';
  /* content: '\e628'; */
  /* content: '\e647'; */
  font-family: 'PE-ICON-7-STROKE';
  font-size: 1.5em;
  line-height: normal;
  vertical-align: top;
  position: absolute;
}
div.cart-summary div.cart-summary__membership-message > div {
  padding-left: 25px;
}
/* CSS-based solution to dynamically hide the checkout methods container whenever the overlay is present
    - use case: final sale checkbox un-hiding checkout methods even though overlay is present
    * NOTE: may not work on every browser, but should be effective enough
*/
.checkout.methods:has(+ .checkout.methods.overlay) {
  display: none !important;
}
div.checkout.methods.overlay {
  cursor: pointer;
  margin: 0 auto;
  width: 100% !important;
  height: 48px;
  left: 0 !important;
  text-align: center;
  background: #000000;
  border-radius: 5px;
  /*@media screen and (min-width: 992px) {
        left: -20px;
    }*/
}
div.checkout.methods.overlay span {
  color: white;
  line-height: 48px;
  font-family: "Helvetica Neue", "Helvetica", Arial, sans-serif;
}
/* MODALS */
/* info modal for cart item link click */
/*aside.modal-popup.membership__modal {
    .modal-content {
        padding: 2.6rem;

        .details {
            .title {
                > * {
                    margin: 0;
                }
            }
            .content {
                p {
                    margin-bottom: 0.83em;
                }
            }
        }
    }
    .modal-footer {
        display: none;
    }
}*/
/* CTA modals */
aside.modal-popup.membership-logreg-cta,
aside.modal-popup.membership-subscribed-cta,
aside.modal-popup.membership-subscribe-cta {
  left: 0;
  top: 37px;
}
aside.modal-popup.membership-logreg-cta .modal-btn-wrapper button.ts-btn,
aside.modal-popup.membership-subscribed-cta .modal-btn-wrapper button.ts-btn,
aside.modal-popup.membership-subscribe-cta .modal-btn-wrapper button.ts-btn {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}
aside.modal-popup.membership-logreg-cta footer,
aside.modal-popup.membership-subscribed-cta footer,
aside.modal-popup.membership-subscribe-cta footer {
  display: none;
}
aside.modal-popup.membership-subscribe-cta .modal-subscribe {
  font-size: 1.2em;
}
aside.modal-popup.membership-subscribe-cta .modal-subscribe,
aside.modal-popup.membership-subscribed-cta,
aside.modal-popup .modal-log-reg {
  text-align: center;
}
/* modal global */
aside[class*=membership] .modal-inner-wrap {
  height: auto !important;
  max-width: 42em !important;
  transform: translateY(6%) !important;
  box-shadow: none;
  padding: 2.35em 1.3em;
}
