/* Team specific styles */

/* 团队列表容器：自适应网格，兼容桌面与移动端 */
.team-list ul {
  list-style: none;
  margin: 16px 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 16px;
}

@media (max-width: 768px) {
  .team-list ul {
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 12px;
  }
}

.team-list li {
  text-align: center;
}

.team-list img {
  width: 100%;
  aspect-ratio: 1 / 1;       /* 统一方形比例 */
  height: auto;
  display: block;
  object-fit: cover;          /* 居中裁切，避免高度不齐 */
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.08);
  transition: transform .18s ease, box-shadow .18s ease; /* 轻动效 */
}

.team-list p {
  margin: 8px 0 0;
  font-size: 14px;
  line-height: 1.4;
  color: #1f2937;
}

/* 顶部简介区块的标题在移动端做微调，提升层次 */
@media (max-width: 768px) {
  .entry-content h1 { font-size: 22px; line-height: 1.2; }
  .entry-content h2 { font-size: 16px; line-height: 1.25; }
  .entry-content p { font-size: 15px; line-height: 1.6; }

  /* bio 顶部区块在移动端改为纵向堆叠 */
  #bio-top-band {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  #bio-photo, #bio-contact {
    float: none;
    width: 100%;
    margin: 0;
    min-height: auto;
    padding: 0;
  }
  #bio-contact { padding-top: 8px; padding-bottom: 8px; }
  #bio-contact h1 { font-size: 28px; }
  #bio-contact h2 { font-size: 18px; letter-spacing: 0.18em; }
}

/* 悬停态：轻微上浮与阴影增强 */
.team-list li { transition: transform .18s ease, box-shadow .18s ease; }
.team-list li:hover img {
  box-shadow: 0 6px 18px rgba(0,0,0,0.16);
  transform: translateY(-2px);
}

/* ===================== */
/* 微调增强（末尾追加块） */
/* ===================== */

/* 网格列宽更稳（桌面，仅≥981px） */
@media (min-width: 981px) {
  .team-list ul { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); }
}

/* 移动端两列保证（≤768px） */
@media (max-width: 768px) {
  .team-list ul { grid-template-columns: repeat(2, 1fr); gap: 12px; }
}

/* 极小屏适配 */
@media (max-width: 480px) {
  .team-list ul { grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 10px; }
}

/* 成员名可读性提升 */
.team-list p { font-size: 15px; line-height: 1.5; font-weight: 500; color: #243242; }

/* 标题节奏与层次 */
.team-title { font-size: 20px; font-weight: 600; margin: 16px 0 8px; letter-spacing: .02em;text-align: center; }

/* 悬停态阴影更细腻 */
.team-list li:hover img { box-shadow: 0 8px 22px rgba(0,0,0,.18); }

/* 移动端标题间距微收紧约10% */
@media (max-width: 768px) {
  .entry-content h1 { margin-top: 0.6em; margin-bottom: 0.6em; }
  .entry-content h2 { margin-top: 0.5em; margin-bottom: 0.5em; }
}
/* --- Mobile overrides to ensure two-column layout and tighter spacing --- */
@media (max-width: 768px) {
  .team-list ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
    width: 100%;
    box-sizing: border-box;
  }
  .team-list ul li { min-width: 0; }
  .team-list ul li img { width: 100%; height: auto; display: block; }
}

@media (max-width: 480px) {
  .team-list ul {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }
}