.store-catalog {
  background: #f4f1e9;
  color: #111713;
}

.store-toolbar {
  background: #fff;
  border: 1px solid #dedfd9;
  border-radius: 18px;
  padding: 10px;
}

.store-search,
.store-sort {
  border-color: #d8dad4;
  background: #fff;
  color: #111713;
}

.store-search input {
  color: #111713;
}

.store-search input::placeholder {
  color: #7f867f;
}

.store-search i {
  color: #087a48;
}

.store-categories {
  scrollbar-color: #b8beb8 transparent;
}

.store-chip {
  border-color: #cfd3cc;
  color: #4a514c;
  background: transparent;
  border-radius: 999px;
}

.store-chip:hover,
.store-chip.active {
  background: #087a48;
  border-color: #087a48;
  color: #fff;
}

.store-chip span {
  color: inherit;
  opacity: .72;
}

.store-results-head h2 {
  color: #111713;
}

.store-results-head p {
  color: #717871;
}

.store-grid {
  gap: 40px 28px;
}

.store-card {
  border: 0;
  background: transparent;
  overflow: visible;
  color: inherit;
}

.store-card:hover,
.store-card:focus-within {
  transform: none;
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

.store-card-media {
  display: block;
  width: 100%;
  aspect-ratio: 440 / 399;
  border: 0;
  border-radius: 20px;
  overflow: hidden;
  background: #c8c9c6;
  box-shadow: none;
}

.store-card-media::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 2;
  background: rgba(5, 18, 11, .2);
  opacity: 0;
  transform: none;
  transition: opacity .22s ease;
}

.store-card:hover .store-card-media::after {
  opacity: 1;
  transform: none;
}

.store-card-media .store-product-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 18px;
  background: #e3e4e0;
  transition: transform .4s ease;
}

.store-card:hover .store-card-media img,
.store-card:focus-within .store-card-media img {
  transform: scale(1.012);
}

.store-card-media .store-material-art {
  background: linear-gradient(145deg, #d2d4cf, #b8bbb6);
}

.store-card-media .store-material-lines {
  opacity: .18;
}

.store-card-media .store-monogram {
  color: rgba(8, 17, 13, .64);
  text-shadow: none;
}

.store-stock-pill {
  top: 16px;
  left: 16px;
  padding: 7px 12px;
  border: 0;
  border-radius: 999px;
  background: rgba(7, 87, 51, .94);
  color: #fff;
  letter-spacing: .05em;
  white-space: nowrap;
}

.store-card.is-out-of-stock .store-stock-pill {
  background: rgba(74, 78, 75, .92);
  color: #fff;
}

.store-card.is-out-of-stock .store-card-media > img,
.store-card.is-out-of-stock .store-material-art {
  filter: grayscale(.45);
  opacity: .78;
}

.store-card-action {
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  z-index: 4;
  min-width: 142px;
  padding: 12px 20px;
  border-radius: 999px;
  background: #515350;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  text-align: center;
  opacity: 0;
  transform: translate(-50%, calc(-50% + 8px));
  transition: opacity .28s ease, transform .28s ease, background .28s ease;
}

.store-card:hover .store-card-action,
.store-card:focus-within .store-card-action {
  opacity: 1;
  transform: translate(-50%, -50%);
}

.store-card-action:hover {
  background: #087a48;
}

.store-card-arrow {
  display: none;
}

.store-card-body {
  padding: 20px 0 0;
}

.store-card-title-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}

.store-card h3 {
  min-height: 0;
  margin: 0;
  font: 600 20px/1.2 'DM Sans', sans-serif;
  text-transform: none;
  letter-spacing: -.02em;
}

.store-card-price {
  flex: 0 0 auto;
  font: 600 18px/1.2 'DM Sans', sans-serif;
  white-space: nowrap;
}

.store-card-category {
  margin-top: 7px;
  color: #656b66;
  font-size: 13px;
}

.store-catalog .store-card-title-row,
.store-catalog .store-card-title-row a,
.store-catalog .store-card-price {
  color: #111713;
}

.related .store-card-title-row,
.related .store-card-title-row a,
.related .store-card-price {
  color: #fff;
}

.related .store-card-category {
  color: #99a89f;
}

.store-empty,
.store-error {
  border-color: #cfd3cc;
  border-radius: 18px;
  background: #fff;
  color: #111713;
}

.store-empty p,
.store-error p {
  color: #6c736d;
}

.store-skeleton {
  min-height: 350px;
  border: 0;
  border-radius: 20px;
  background: linear-gradient(100deg, #dcddd9 20%, #eeeeeb 38%, #dcddd9 56%);
  background-size: 200% 100%;
}

.store-page-button {
  border-color: #c9cec7;
  border-radius: 50%;
  color: #1b211d;
}

.store-page-button:hover,
.store-page-button.active {
  background: #087a48;
  border-color: #087a48;
  color: #fff;
}

.detail-availability p {
  margin: 14px 0 0;
  color: #bdc8c1;
  font-size: 13px;
}

.detail-layout.is-out-of-stock .detail-visual-badge {
  background: #737a75;
  color: #fff;
}

.detail-layout.is-out-of-stock .detail-visual > img,
.detail-layout.is-out-of-stock .detail-visual .store-material-art {
  filter: grayscale(.45);
  opacity: .76;
}

@media (hover: none) {
  .store-card-action {
    opacity: 1;
    transform: translate(-50%, -50%);
  }
}

@media (max-width: 620px) {
  .store-toolbar {
    padding: 8px;
  }

  .store-card-media {
    aspect-ratio: 440 / 399;
  }

  .store-card h3 {
    font-size: 18px;
  }

  .store-card-price {
    font-size: 16px;
  }
}
