/* Description */
.description {
    text-align: center;
    color: #4b5563;
    margin-bottom: 2rem;
    font-size: 1rem;
    line-height: 1.5;
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
}

/* Section Titles */
.team-page h2 {
    text-align: center;  /* 文本居中 */
    width: fit-content;  /* 让h2宽度自适应内容，而不是占满 */
    margin: 2rem auto;  /* 新增：让整个h2元素在父容器中水平居中 */
}

/* Members Container (for both leaders and students) */
.members-container {
    display: flex;
    justify-content: center;  /* 卡片在行中居中，即使不足3个 */
    gap: 2rem;
    flex-wrap: wrap;  /* 自动换行 */
    max-width: calc(3 * 16rem + 2 * 2rem);  /* 52rem：3个卡片 + 2个gap */
    margin: 0 auto 2rem auto;
}


/* Member Card */
.member-card {
    text-align: center;
    width: 16rem;  /* 固定宽度，确保calc准确 */
    flex-shrink: 0;  /* 防止卡片压缩，强制保持宽度 */
    border-radius: 0.5rem; /* 添加圆角 */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* 添加阴影 */
    overflow: hidden; /* 确保内容不溢出卡片 */
}

/* Image Container */
.image-container {
    position: relative;
    width: 100%;
    height: auto;
}

/* Member Image */
.member-image {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover; /* 填充容器 */
}

/* Overlay Text */
.overlay-text {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0)); /* 从下往上由深变浅的渐变 */
    color: white;
    padding: 0.5rem;
    text-align: left; /* 左对齐 */
}

/* Member Name */
.team-page h3 {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0;
    color: #ffffff;
}

/* Member Role */
.member-role {
    font-size: 0.875rem; /* 稍小字体 */
    margin: 0;
    color: #D4D4D8;
}

/* Team Page 专属：关闭 h2 分割线 */
.team-page .content h2::after{
  content: none;
}



