.quote-cart-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 44px;
  min-width: 76px;
  font-size: 13px;
  font-weight: 650;
  color: #111;
}
.cart-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 4px;
  border-radius: 50%;
  background: #1649de;
  color: #fff;
  font-size: 11px;
}
.quote-cart-mobile {
  display: none;
}
.shop-swatches {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2px;
  min-height: 40px;
  margin-top: 8px;
}
.shop-colour {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 38px;
  border: 1px solid transparent;
  border-radius: 4px;
}
.shop-colour > span {
  width: 20px;
  height: 20px;
  border: 1px solid #8d99a8;
  border-radius: 50%;
  background: #aeb6c2;
}
.shop-colour:hover,
.shop-colour[aria-current="true"] {
  border-color: #1649de;
  background: #fff;
}
.shop-more-colours {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  min-height: 38px;
  font-size: 12px;
  font-weight: 650;
}
.product-colour-swatches .shop-colour {
  width: 40px;
  height: 40px;
}
.variant-picker-title {
  font-size: 12px;
  font-weight: 650;
  margin: 12px 0;
}
.variant-picker-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.variant-picker-grid label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  border-bottom: 1px solid #dce1e8;
  padding: 8px 0;
  min-width: 0;
}
.variant-picker-grid label > span {
  min-width: 0;
}
.variant-picker-grid strong {
  display: block;
  font-size: 13px;
}
.variant-picker-grid small {
  display: block;
  font-size: 10px;
  line-height: 1.4;
  color: #222;
}
.variant-picker-grid input {
  flex: 0 0 68px;
  width: 68px;
  min-width: 0;
  min-height: 42px;
  padding: 8px;
  border: 1px solid #a9b3c0;
  border-radius: 4px;
  font-size: 14px;
  background: #fff;
  color: #111;
}
.variant-picker-chosen {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 12px;
}
.variant-picker-chosen > span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  padding: 4px 5px 4px 8px;
  background: #edf3fa;
}
.variant-picker-chosen button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: none;
  min-width: 28px;
  min-height: 30px;
  padding: 6px;
}
.product-cart-controls {
  margin-top: 20px;
}
.product-cart-controls > h2 {
  font-size: 22px;
  line-height: 1.3;
}
.product-cart-controls > .field,
.product-branding-controls > .field {
  margin-top: 14px;
}
.product-branding-controls {
  border-top: 1px solid #dce1e8;
  margin-top: 18px;
  padding-top: 8px;
}
.product-cart-controls input[type="file"] {
  width: 100%;
  max-width: 100%;
  font-size: 12px;
  padding: 10px 0;
}
.product-cart-controls .button {
  width: 100%;
  margin-top: 14px;
}
.product-cart-controls .button img {
  filter: brightness(0) invert(1);
}
.product-cart-total {
  margin-top: 16px;
  font-size: 20px;
  font-weight: 700;
}
.product-cart-status {
  margin-top: 12px;
  font-size: 12px;
  line-height: 1.6;
  color: #111;
}
.product-cart-status[data-state="error"] {
  color: #a31919;
}
.product-cart-active .product-selection > .selection-grid,
.product-cart-active .product-selection > #variant-stock,
.product-cart-active .product-selection > #product-estimate,
.product-cart-active .product-selection > button[type="submit"] {
  display: none;
}
.product-cart-active .product-selection {
  display: none;
}
.studio-batch-toggle {
  margin-top: 8px;
}
.studio-batch-picker .variant-picker-grid {
  grid-template-columns: 1fr;
}
.studio-batch-picker .variant-picker-grid input {
  width: 72px;
  min-height: 42px;
}
.studio-cart-save {
  width: 100%;
  margin-top: 16px;
}
.studio-body .studio-header .quote-cart-link {
  margin-left: auto;
}
.studio-single-request {
  border-top: 1px solid #dce1e8;
  margin-top: 12px;
  padding-top: 12px;
}
.shop-product-photo > img {
  mix-blend-mode: normal;
}
.shop-hero {
  background: #edf5ff;
}
.shop-hero-photo {
  padding-top: 0;
  padding-bottom: 0;
}
.shop-product-photo {
  aspect-ratio: 4/5;
  background: #f4f6f8;
}
.shop-model-photo > img {
  object-fit: cover;
}
.shop-product h3,
.shop-product h2 {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 650;
  font-size: 16px;
  line-height: 1.4;
  margin-block: 7px 8px;
}
.shop-product-meta {
  padding-top: 8px;
}
.shop-benefits {
  background: #e2f1ec;
}
.shop-category-band {
  background: #e7efff;
}
.catalogue-card.shop-product {
  border: 0;
  border-radius: 0;
  background: none;
}
.catalogue-card.shop-product .catalogue-code {
  display: block;
  font-size: 10px;
  margin-top: 8px;
}
@media (max-width: 700px) {
  .quote-cart-mobile {
    display: inline-flex;
    margin-left: 4px;
  }
  .quote-cart-mobile > span:not(.cart-count) {
    display: none;
  }
  .quote-cart-link {
    min-width: 64px;
    font-size: 12px;
    gap: 5px;
  }
  .shop-colour {
    width: 30px;
    height: 38px;
  }
  .shop-colour > span {
    width: 18px;
    height: 18px;
  }
  .studio-header-title {
    display: none;
  }
  .studio-body .studio-header {
    gap: 8px;
    padding-inline: 12px;
  }
  .studio-body .studio-header .brand {
    font-size: 23px;
  }
  .studio-body .studio-header .button {
    font-size: 11px;
    padding: 10px;
  }
  .studio-body .quote-cart-link > span:not(.cart-count) {
    display: none;
  }
  .studio-body .quote-cart-link {
    min-width: 44px;
    gap: 3px;
  }
}
