.specialists-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-md);
}
@media (max-width: 900px) { .specialists-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .specialists-grid { grid-template-columns: 1fr; max-width: 360px; margin: 0 auto; } }

.specialist-card {
  text-align: center;
}
.specialist-card__photo {
  position: relative;
  aspect-ratio: 3/4;
  border-radius: var(--radius-md);
  overflow: hidden;
  background: linear-gradient(145deg, var(--color-bg-light), var(--color-accent) 180%);
  margin-bottom: var(--space-sm);
}
.specialist-card__photo img { width: 100%; height: 100%; object-fit: cover; }
.specialist-card__photo .placeholder-label {
  width: 100%; height: 100%;
  display: flex; align-items: center; justify-content: center;
  color: var(--color-accent-dark); font-size: 13px;
}
.specialist-card__ig {
  position: absolute;
  top: 14px; right: 14px;
  width: 34px; height: 34px;
  border-radius: 50%;
  background: rgba(255,255,255,0.9);
  color: var(--color-primary);
  display: flex; align-items: center; justify-content: center;
  transition: background var(--transition-fast);
}
.specialist-card__ig:hover { background: #fff; }
.specialist-card__ig svg { width: 16px; height: 16px; }

.specialist-card h3 { font-size: 18px; margin-bottom: 2px; }
.specialist-card .role { font-size: 13px; color: var(--color-accent-dark); margin-bottom: 16px; }

.specialists-archive-link { text-align: center; margin-top: var(--space-lg); }

/* Single specialist detail page */
.specialist-detail { display: grid; grid-template-columns: 340px 1fr; gap: 56px; }
.specialist-detail__aside .specialist-card__photo { margin-bottom: 20px; }
@media (max-width: 800px) {
  .specialist-detail { grid-template-columns: 1fr; }
  .specialist-detail__aside { max-width: 320px; margin: 0 auto; }
}
