main {
  margin-top: var(--header-height);
  margin-bottom: 200px;
}

.intro {
  padding: var(--gen-spacing) var(--gen-spacing);
}

.shop-filters {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
}

.shop-filters-nav {
  display: flex;
  flex-wrap: wrap;
  column-gap: 16px;
}

.shop-filters-nav>* {
  display: block;
  white-space: nowrap;
}

.shop-filters-nav a:not(.active) {
  opacity: 0.5;
}

.shop-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: min-content;
  column-gap: 40px;
  row-gap: 40px;
}

.shop-card {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
  height: fit-content;
  transition: opacity 0.3s;
}

.shop-card:hover {
  opacity: 0.5;
}

.shop-card .aspectholder {
  width: 100%;
  aspect-ratio: 31/38;
  overflow: hidden;
}

.shop-card .aspectholder>* {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.shop-card-text {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
}

.shop-card-text span {
  opacity: 0.5;
}

@media only screen and (min-width: 0px) and (max-width: 650px) {
  .shop-container {
    grid-row-gap: 40px !important;
    margin-top: 40px;
  }

  .shop-grid {
    grid-template-columns: repeat(1, 1fr);
  }
}
