/* ── Columnists ──────────────────────────────────────────────── */
.pc-columnists {
  margin-bottom: var(--pc-space-md);
  position: relative;
}

.pc-columnists__item {
  display: flex;
  flex-direction: column;
  gap: var(--pc-space-xs);
  padding: var(--pc-space-xs);
  border: 1px solid var(--pc-lmedium);
  border-radius: var(--pc-radius);
  background: var(--pc-llight);
  height: 100%;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  transition: box-shadow var(--pc-transition), border-color var(--pc-transition);
}

.pc-columnists__item:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  border-color: var(--pc-primary-light);
}

.pc-columnists__avatar {
  width: 8rem;
  height: 8rem;
  border-radius: 50%;
  overflow: hidden;
  background: var(--pc-lmedium);
  flex-shrink: 0;
}

.pc-columnists__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pc-columnists__hgroup {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.pc-columnists__name {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.pc-columnists__desc {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex: 1;
}

.pc-columnists__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: auto;
  width: 100%;
  min-width: 0;
}

.pc-columnists__tags .pc-tag {
  max-width: 100%;
  white-space: normal;
}

/* ── Carousel ────────────────────────────────────────────────── */
.pc-carousel {
  position: relative;
  overflow: hidden;
}

.pc-carousel__track {
  display: flex;
  gap: var(--pc-space-sm);
  transition: transform var(--pc-transition);
}

.pc-carousel__slide {
  flex-shrink: 0;
  min-width: 0;
  /* width definido via JS baseado em data-visible-desktop */
}

.pc-carousel__prev,
.pc-carousel__next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: var(--pc-primary-darkest);
  color: var(--pc-llight);
  border: none;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
  font-size: 2rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  transition: background var(--pc-transition-fast), opacity var(--pc-transition-fast);
  opacity: 0.85;
}

.pc-carousel__prev {
  left: -1.8rem;
}

.pc-carousel__next {
  right: -1.8rem;
}

.pc-carousel__prev:hover,
.pc-carousel__next:hover {
  background: var(--pc-secondary-darkest);
  opacity: 1;
}

.pc-columnists__content {
  overflow: hidden;
}

/* ── Página individual do colunista (/colunistas/{id}) ───────── */
.pc-columnist-page { padding-bottom: var(--pc-space-xl); }

.pc-columnist-desc {
  display:        flex;
  align-items:    flex-start;
  gap:            var(--pc-space-md);
  margin-bottom:  var(--pc-space-lg, 4.8rem);
}

.pc-columnist-desc__avatar {
  flex:           0 0 16rem;
  width:          16rem;
  height:         16rem;
  overflow:       hidden;
  border-radius:  50%;
  background:     var(--pc-lmedium);
}

.pc-columnist-desc__avatar img {
  width:      100%;
  height:     100%;
  object-fit: cover;
  display:    block;
}

.pc-columnist-desc__info {
  display:        flex;
  flex-direction: column;
  gap:            var(--pc-space-xs);
  flex:           1;
}

.pc-columnist-desc__bio { margin: 0; }

.pc-columnist-desc__linkedin {
  align-self: flex-start;
  margin-top: var(--pc-space-xs);
}

/* Lista de publicações */
.pc-columnist-page__highlight { margin-bottom: var(--pc-space-md); }

.pc-columnist-page__list {
  display:               grid;
  grid-template-columns: repeat(3, 1fr);
  gap:                   var(--pc-space-md);
  list-style:            none;
  padding:               0;
  margin:                0 0 var(--pc-space-md);
}

@media (max-width: 1200px) {
  .pc-columnist-desc { flex-direction: column; align-items: center; text-align: center; }
  .pc-columnist-desc__linkedin { align-self: center; }
  .pc-columnist-page__list     { grid-template-columns: 1fr; }
}