/* =====================================================================
   AXIA — PEOPLE PAGE (people.css) — grid of team cards with photos
   ===================================================================== */
.people-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
}

.person-card {
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: calc(var(--radius) * 3);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 6px 28px rgba(5,32,23,.05);
  transition: transform .2s var(--ease), box-shadow .2s var(--ease);
}
.person-card:hover { transform: translateY(-3px); box-shadow: 0 12px 34px rgba(5,32,23,.10); }

/* ---- Photo area (uniform height, smart crop) ---- */
.person-photo {
  width: 100%;
  aspect-ratio: 1 / 1;          /* square — square headshots la perfect */
  background: var(--bg-alt);
  overflow: hidden;
}
.person-photo img {
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 20%;  /* chehra varti, kami crop */
  display: block;
}
.person-photo .ph {
  width: 100%; height: 100%;
  display: flex; align-items: center; justify-content: center;
  background: var(--brand);
  color: #EAF1ED;
  font-family: var(--ff-display);
  font-size: 3.4rem; font-weight: 500;
}

/* ---- Info ---- */
.person-info { padding: 22px 22px 24px; display: flex; flex-direction: column; flex: 1; }
.person-name { font-size: 1.45rem; margin: 0 0 4px; line-height: 1.15; }
.person-role { color: var(--brand); font-weight: 600; font-size: 0.96rem; margin: 0; }
.person-years {
  color: var(--ink-muted); font-size: 0.82rem; margin: 4px 0 0;
  text-transform: uppercase; letter-spacing: .06em;
}
.person-bio {
  color: var(--ink-muted); font-size: 0.95rem; line-height: 1.6;
  margin: 14px 0 0;
}

@media (max-width: 900px) { .people-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .people-grid { grid-template-columns: 1fr; } }


/* ---------- BIO CLAMP + READ MORE ---------- */
.person-bio {
  display: -webkit-box;
  -webkit-line-clamp: 4;          /* 4 line nantar ... */
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.person-bio.is-expanded {
  -webkit-line-clamp: unset;
  overflow: visible;
}

.person-readmore {
  margin-top: 12px;
  align-self: flex-start;
  background: none;
  border: none;
  padding: 0;
  color: var(--brand);
  font-family: var(--ff-body);
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.person-readmore:hover { color: var(--brand-deep); text-decoration: underline; }
.person-readmore .chev { transition: transform .2s var(--ease); }
.person-readmore[aria-expanded="true"] .chev { transform: rotate(180deg); }

/* equal-height cards stay aligned; read-more pinned to bottom */
.person-info { padding: 22px 22px 24px; display: flex; flex-direction: column; flex: 1; }