.category-page {
  background: #fcfaf6;
}

.category-hero {
  position: relative;
  padding: 155px 0 92px;
  color: #fff;
  overflow: hidden;
}

.category-hero-image {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.category-hero:before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(110deg,rgba(43,15,10,.88),rgba(150,60,30,.5));
}

.category-hero .wrap {
  position: relative;
  z-index: 2;
}

.category-hero h1 {
  margin: 13px 0 0;
}

.category-hero p:last-child {
  max-width: 560px;
  color: #eee4ed;
  font: 19px/1.6 'Playfair Display';
}

.category-page .category-list {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  padding: 25px 0;
  border-bottom: 1px solid var(--line);
}

.category-list a {
  padding: 8px 11px;
  border: 1px solid transparent;
  color: var(--pine);
  font-size: 10px;
  font-weight: 600;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .11em;
}

.category-list a:hover {
  border-color: var(--antique-gold);
  background: #fff;
}

.category-products {
  padding: 80px 0 120px;
}

.catalogue-heading {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  align-items: end;
  margin-bottom: 40px;
}

.catalogue-heading h2 {
  margin: 0;
}

.catalogue-heading p {
  max-width: 450px;
  margin: 0;
  color: var(--muted);
}

.product-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 26px;
}

.product-card {
  position: relative;
  min-height: 380px;
  border-radius: 6px;
  padding: 20px 25px 25px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e4d9cf;
  box-shadow: 0 12px 26px rgba(60,24,14,.1);
  transition: transform .35s ease,box-shadow .35s ease;
}

.product-card:hover {
  transform: translateY(-7px);
  box-shadow: 0 20px 32px rgba(60,24,14,.18);
}

.product-number {
  position: relative;
  z-index: 1;
  color: var(--gold);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .16em;
}

.product-image {
  position: absolute;
  inset: 0 0 118px;
  background-position: center 35%;
  background-size: cover;
  filter: brightness(.82);
  transition: transform .5s ease;
  border-radius: 6px 6px 0 0;
}

.product-card:hover .product-image {
  transform: scale(1.06);
}

.product-image:after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg,rgba(38,14,8,.7),rgba(38,14,8,.04));
}

.product-card h2 {
  position: absolute;
  z-index: 1;
  left: 25px;
  right: 25px;
  top: 217px;
  margin: 0;
  color: #fff;
  font-size: 1.55rem;
  line-height: 1.05;
}

.product-card p {
  position: absolute;
  z-index: 1;
  left: 25px;
  top: 272px;
  margin: 0;
  color: #7a6a60;
  font-size: 12px;
}

.product-buy {
  position: absolute;
  z-index: 1;
  right: 21px;
  bottom: 19px;
  left: 21px;
  display: flex;
  justify-content: space-between;
  padding-top: 13px;
  border-top: 1px solid var(--line);
  color: var(--pine);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .1em;
  text-decoration: none;
  text-transform: uppercase;
}

.product-buy:hover {
  color: var(--gold);
}

@media(max-width:850px) {
  .category-hero {
    padding: 128px 0 65px;
  }
  .category-products {
    padding: 60px 0 80px;
  }
  .catalogue-heading {
    display: block;
  }
  .catalogue-heading p {
    margin-top: 17px;
  }
  .product-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .product-card {
    min-height: 360px;
  }
  .category-page .category-list {
    flex-wrap: nowrap;
    overflow-x: auto;
  }
  .category-list a {
    white-space: nowrap;
  }
}
