:root {
  --ref-white: var(--bs-white, var(--white, #fff));
  --ref-gray-100: var(--bs-gray-100, #f8f9fa);
  --ref-gray-300: var(--bs-gray-300, #dee2e6);
  --ref-gray-700: var(--bs-gray-700, #848e97);
  --ref-gray: var(--bs-gray-600, #868e96);
  --ref-darkgray: var(--bs-gray-800, #495057);
  --ref-black: var(--bs-black, var(--black, #000));
  --ref-primary: var(--bs-primary, var(--primary, #0d6efd));
  --ref-success: var(--bs-success, var(--success, #20c997));
  --ref-danger: var(--bs-danger, var(--danger, #ff0051));
  --ref-warning: var(--bs-warning, var(--warning, #f7e296));
  --ref-body-color: var(--bs-body-color, #212529);
  --ref-body-bg: var(--bs-body-bg, #fff);
  --ref-secondary-color: var(--bs-secondary-color, var(--ref-gray-700));
  --ref-secondary-bg: var(--bs-secondary-bg, var(--ref-gray-300));
  --ref-tertiary-color: var(--bs-tertiary-color, var(--ref-darkgray));
  --ref-tertiary-bg: var(--bs-tertiary-bg, var(--ref-gray-100));
  --ref-border-radius: 0px;
  --ref-gutter-sm: .5em;
  --ref-gutter-md: 1em;
  --ref-gutter-lg: 2em;
  --ref-gutter: var(--ref-gutter-md);
  --ref-input-bg: var(--ref-body-bg);
  --ref-input-padding: 3px;
  --ref-input-padding-sm: .3rem;
  --ref-btn-padding: 0px 12px 3px 12px;
  --ref-btn-border-radius: var(--ref-border-radius);
  --ref-message-bg: var(--ref-tertiary-bg);
  --ref-list-bg: var(--ref-tertiary-bg);
  --ref-dropdown-bg: var(--bs-body-bg, var(--ref-white));
}

.ref-button {
  color: var(--black);
  font-family: var(--font-family-monospace);
}

.ref-price, .ref-subtotal, .ref-product-total, .ref-product-price, .ref-row {
  font-family: var(--font-family-monospace)!important;
}

.ref-row {
  flex-wrap: nowrap;
  /*border-top: solid 1px rgba(0, 0, 0, 0.2);*/
}

.ref-summary .ref-product:not(:first-child) {
  padding-top: 5px;
  border-top: solid 1px rgba(0, 0, 0, 0.2);
}

.ref-summary, .ref-product-preview, .reflow-shopping-cart .ref-message, .reflow-cart-toggler .ref-message {
  background-color: #ffffff;
  color: black;
}

.ref-delivery-card, .reflow-shopping-cart .ref-checkout .ref-delivery-card, .ref-payment-method-instructions {
  background: none;
}

.reflow-shopping-cart .ref-checkout .ref-checkout-summary {
  /*background-color: rgba(0,123,255,0.1);*/
  /*border-radius: 10px;*/
}

body {
  /*background-color: white;*/
  /*color: black;*/
}

input {
  /*background-color: #ffffff;*/
}

.ref-form-control {
  background-color: #ffffff;
  color: #000000;
}

.shop-section {
  padding-top: 100px;
  padding-bottom: 100px;
}

.reflow-product-list .ref-image, .reflow-product-list.ref-cards .ref-image {
  /*height: auto;*/
  /*min-height: 300px;*/
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.reflow-product .ref-media .ref-preview {
  /*display: flex;*/
  /*justify-content: start;*/
  /*align-items: center;*/
}

.reflow-product .ref-media .ref-preview .ref-image {
  height: 80vh;
  /*width: auto;*/
  max-width: 100%;
  /*max-height: 80vh;*/
  /*min-height: 300px;*/
  /*margin: auto;*/
  margin-bottom: 40px;
}

.reflow-product .ref-media .ref-image {
  background-size: contain!important;
}

.ref-image {
  object-fit: contain!important;
}

.reflow-product .ref-media .ref-promo-badge, .reflow-product-list .ref-media .ref-promo-badge, .reflow-product .ref-media .ref-sale-badge, .reflow-product-list .ref-media .ref-sale-badge {
  background-color: var(--secondary)!important;
  left: 50%;
  transform: translateX(-50%);
  right: auto;
  /*top: -25px;*/
}

.reflow-product .ref-price.ref-on-sale {
  color: var(--primary);
}

.reflow-product .ref-price {
  margin-top: 30px;
}

.ref-summary.dropdown {
  border: 1px solid var(--dark);
  box-shadow: none;
  width: 100vw;
}

@media (min-width: 576px) {
  .ref-summary.dropdown {
    margin-top: 10px;
    /*width: calc(100vw - var(--ref-gutter-lg));*/
    width: 500px;
  }
}

.ref-quantity-widget {
  box-shadow: none;
}

.reflow-shopping-cart .ref-cart .ref-checkout-buttons {
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
}

.reflow-product .ref-name {
  padding-bottom: 15px;
  margin-top: 30px;
  margin-left: -4px;
  /*font-weight: 900;*/
  margin-bottom: 0px;
  line-height: 1em;
  letter-spacing: -.05em;
  font-family: lores-9-narrow, sans-serif;
  font-size: 2.5rem;
  border-bottom: solid 1px rgba(0, 0, 0, 0.2);
}

@media (min-width: 768px) {
  .reflow-product .ref-media {
    width: 50%!important;
  }
}

.reflow-cart-toggler:before {
  right: 4px;
  background: var(--primary);
  border-radius: 0;
  color: #fff;
  font-size: .7em;
  padding: .3em .4em .2em;
  transform: translate(70%, -50%);
}

.shop-nav {
  padding: 0px;
  font-family: ibm-plex-mono, sans-serif;
}

.reflow-product-list.ref-cards {
  padding: 0 40px;
}

.reflow-product-list.ref-cards .ref-product .ref-product-data {
  align-items: center;
  text-align: center;
}

.reflow-product-list.ref-cards .ref-product .ref-product-data .ref-name {
  font-family: ibm-plex-mono, sans-serif;
  font-size: 1em!important;
  margin-bottom: 3px;
}

.reflow-product-list.ref-cards .ref-product .ref-product-data .ref-excerpt {
  font-size: 70%!important;
  margin-bottom: 5px;
}

.reflow-product-list.ref-cards .ref-product .ref-product-data .ref-price {
  font-size: 70%!important;
}

.reflow-product-list.ref-cards .ref-products {
  display: flex;
  flex-wrap: wrap;
  margin-right: 40px;
  margin-left: 40px;
  justify-content: center!important;
  column-gap: 0px;
}

.reflow-product-list.ref-cards .ref-product.col {
  flex-basis: 0;
  flex-grow: 1;
  min-width: 0;
  max-width: 100%;
}

.row-cols-1 > .ref-product {
  flex: 0 0 100%!important;
  max-width: 100%!important;
}

@media (min-width: 768px) {
  .row-cols-md-2 > .ref-product {
    flex: 0 0 50%!important;
    max-width: 50%!important;
  }
}

@media (min-width: 992px) {
  .row-cols-lg-3 > .ref-product {
    flex: 0 0 33.33333%!important;
    max-width: 33.33333%!important;
  }
}

@media (min-width: 1200px) {
  .row-cols-xl-4 > .ref-product {
    flex: 0 0 25%!important;
    max-width: 25%!important;
  }
}

.shop-category-section {
  margin-bottom: 50px;
}

.glightbox-clean .gslide-media {
  box-shadow: none!important;
}

.goverlay {
  background: white!important;
}

.reflow-product .ref-media .ref-thumbnails .ref-image {
  /*border: solid 1px black;*/
}

.out-of-stock {
  visibility: hidden!important;
}

