/* ===== Boutique — category hub ===== */
.pg-boutique-hero {
  background-image: var(--tex-light);
  padding: 200px 0 80px;
  text-align: center;
}
.pg-boutique-hero .pg-eyebrow { justify-content: center; }
.pg-boutique-hero h1 {
  font: 400 clamp(3rem, 6.5vw, 5.5rem)/1 var(--serif);
  letter-spacing: -0.025em;
  color: var(--ink);
  margin: 16px 0 14px;
}
.pg-boutique-hero p { font: 400 italic 18px/1.6 var(--serif); color: rgba(13,13,15,0.5); }

.pg-boutique-cats { background-image: var(--tex-light); padding: 20px 0 150px; }
.pg-boutique-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  align-items: stretch;
}

.pg-cat-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 520px;
  padding: 38px;
  border-radius: 0;
  overflow: hidden;
  text-decoration: none;
  background: var(--ink);
  transition: background 0.4s var(--ease);
}
.pg-cat-card:not(.pg-cat-card-photo):hover { background: #1c1c21; }

.pg-cat-media { position: absolute; inset: 0; z-index: 0; }
.pg-cat-media img {
  width: 100%; height: 100%; object-fit: cover;
  filter: grayscale(0.4) brightness(0.7);
  transition: transform 0.7s var(--ease), filter 0.7s var(--ease);
}
.pg-cat-card-photo:hover .pg-cat-media img { transform: scale(1.05); filter: grayscale(0) brightness(0.75); }
.pg-cat-card-photo::before {
  content: "";
  position: absolute; inset: 0; z-index: 1;
  background: linear-gradient(to top, rgba(13,13,15,.9) 8%, rgba(13,13,15,.1) 70%);
}
.pg-cat-body { position: relative; z-index: 2; display: flex; flex-direction: column; }

.pg-cat-num {
  position: relative; z-index: 2;
  font: 500 10.5px/1 var(--sans);
  color: rgba(250,250,250,0.4);
  letter-spacing: 0.16em;
  margin-bottom: 16px;
  display: block;
}
.pg-cat-card h2 {
  position: relative; z-index: 2;
  font: 400 clamp(1.8rem, 2.8vw, 2.4rem)/1.05 var(--serif);
  letter-spacing: -0.02em;
  color: var(--cream);
  margin: 0 0 12px;
}
.pg-cat-card p {
  position: relative; z-index: 2;
  font: 400 15px/1.55 var(--sans);
  color: rgba(250,250,250,.6);
  margin: 0 0 26px;
  max-width: 320px;
}
.pg-cat-cta {
  position: relative; z-index: 2;
  display: inline-flex; align-items: center; gap: 8px;
  font: 500 11px/1 var(--sans);
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--cream);
}
.pg-cat-cta .arrow { display: inline-block; transition: transform 0.3s var(--ease); }
.pg-cat-card:hover .pg-cat-cta .arrow { transform: translateX(6px); }

@media (max-width: 980px) {
  .pg-boutique-grid { grid-template-columns: 1fr; }
  .pg-cat-card { min-height: 380px; }
}
@media (max-width: 600px) {
  .pg-boutique-hero { padding: 150px 0 60px; }
  .pg-boutique-cats { padding: 20px 0 90px; }
}
