:root {
  --team-stat-size: 48px;
  --team-credential-size: 68px;
  --team-card-gap: 32px;
  --team-card-padding: 28px;
  --team-avatar-size: 80px;
}
.story-team { gap: var(--team-card-gap); align-items: stretch; }
.story-team.story-team-core { grid-template-columns: repeat(3, minmax(0,1fr)); }
.story-team-support { margin-top: 36px; padding-top: 32px; border-top: 1px solid var(--site-line); }
.story-team.story-team-support .person { padding: 0; border-radius: 0; background: transparent; }
.story-team.story-team-support .person h3 { font-size: 21px; }
.story-team-support .person-identity { gap: 14px; }
.story-team-support .person-stat { min-height: 36px; }
.story-team-support .person-stat .count-number, .story-team-support .person-stat-word b { font-size: 28px; }
.story-team-support .person .person-brief { margin: 14px 0; font-size: 13px; }
.story-team .person { display: flex; flex-direction: column; min-width: 0; padding: var(--team-card-padding); border: 0; border-radius: var(--site-radius); background: var(--site-surface-soft); }
.story-team .person-with-photo { display: grid; grid-template-columns: var(--team-avatar-size) minmax(0,1fr); column-gap: 20px; align-content: start; }
.person-with-photo .person-identity { display: contents; }
.person-with-photo .person-identity > div:first-child { align-self: center; }
.person-with-photo .person-stat { grid-column: 1 / -1; margin-top: 24px; }
.person-with-photo > :not(.person-portrait):not(.person-identity) { grid-column: 1 / -1; }
.person-with-photo .person-background { align-self: end; }
.person-with-photo .role { min-height: 0; }
.person-portrait { width: var(--team-avatar-size); height: var(--team-avatar-size); margin: 0; overflow: hidden; border-radius: 50%; }
.person-portrait img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 28%; }
.person-portrait-zhu img { object-position: center top; transform: scale(2.3); transform-origin: 50% 12%; }
.person-portrait-liu img { object-position: 60% center; transform: scale(1.65); transform-origin: 68% 30%; }
.person-identity { display: grid; grid-template-columns: minmax(0,1fr); align-items: start; gap: 24px; }
.story-team .person h3 { margin-bottom: 10px; font-size: 26px; }
.story-team .role { min-height: 46px; font-size: 13px; }
.person-stat { display: flex; align-items: center; gap: 16px; min-width: 0; min-height: 54px; text-align: left; }
.person-stat > div { display: flex; align-items: baseline; white-space: nowrap; }
.count-number { display: inline-block; min-width: calc(var(--count-digits, 1) * .62em); font-variant-numeric: tabular-nums; font-feature-settings: "tnum"; }
.person-stat .count-number { color: var(--site-ink); font-size: var(--team-stat-size); font-weight: 600; line-height: 1; }
.person-stat-unit { margin-left: 3px; font-size: 13px; color: var(--site-muted); }
.person-stat small { display: block; color: var(--site-muted); font-size: 12px; }
.person-stat-word b { display: block; color: var(--site-ink); font-size: 32px; line-height: 1.4; }
.story-team .person .person-brief { margin: 20px 0; font-size: 14px; }
.person-training { margin: -8px 0 20px; color: var(--site-muted); font-size: 13px; }
.person-training b { color: var(--site-ink-soft); font-weight: 600; }
.person-background { margin-top: auto; padding-top: 12px; border-top: 1px solid var(--site-line); }
.person-background summary { width: fit-content; min-height: 36px; padding-block: 6px; color: var(--site-blue); font-size: 13px; cursor: pointer; }
.story-team .person-background p { margin: 10px 0 0; font-size: 13px; line-height: 1.8; }
.story-credentials { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; margin-top: 68px; padding-top: 40px; }
.story-credentials > div { min-width: 0; text-align: center; padding: 10px 24px; }
.story-credentials > div + div { border-left: 1px solid var(--site-line); }
.story-credentials b { display: flex; justify-content: center; align-items: baseline; gap: 6px; margin: 0 0 12px; font-size: var(--team-credential-size); line-height: 1; }
.story-credentials b small { color: var(--site-muted); font-size: 15px; font-weight: 400; }
.story-credentials .count-number { font-size: inherit; }
.story-credentials > div > span { font-size: 15px; }
@media (max-width:1040px) {
  :root { --team-stat-size: 44px; --team-card-gap: 28px; }
  .story-team-core .person-with-photo { grid-template-columns: minmax(0,1fr); }
  .story-team-core .person-portrait { margin-bottom: 18px; }
  .story-team-core .person-identity { display: grid; gap: 18px; }
  .story-team-core .person-stat { margin-top: 0; }
  .story-team-support { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width:760px) {
  :root { --team-stat-size: 40px; --team-credential-size: 52px; }
  .person-identity { gap: 20px; }
  .story-credentials { gap: 0; margin-top: 48px; padding-top: 30px; }
  .story-credentials > div { padding: 8px; }
  .story-team.story-team-core, .story-team.story-team-support { grid-template-columns: minmax(0,1fr); }
  .story-team-core .person-with-photo { grid-template-columns: var(--team-avatar-size) minmax(0,1fr); }
  .story-team-core .person-portrait { margin-bottom: 0; }
  .story-team-core .person-identity { display: contents; }
  .story-team-core .person-stat { margin-top: 24px; }
  .story-team-support { gap: 24px; margin-top: 28px; padding-top: 24px; }
  .story-team-support .role { min-height: 0; }
}
@media (max-width:560px) {
  :root { --team-stat-size: 46px; --team-credential-size: 44px; }
  :root { --team-card-padding: 24px; }
  .story-team .person h3 { font-size: 25px; }
  .story-team .role { min-height: 0; }
  .story-credentials > div > span { font-size: 12px; }
  .story-credentials b small { font-size: 12px; }
}
