/**
 * Website Studio — Team archive / single / home grid.
 * Strict ACSS tokens only — no raw px/rem/em/hex.
 * Mobile column stacking: prefer ACSS auto-grid utilities over custom breakpoints.
 */

.ws-team,
.ws-team__archive,
.ws-team__single {
  width: 100%;
  max-width: var(--content-width);
  margin-inline: auto;
  padding-block: var(--section-space-m);
  padding-inline: var(--space-m);
}

.ws-team__intro {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  margin-block-end: var(--space-m);
}

.ws-team__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--grid-gap, var(--content-gap));
  width: 100%;
  align-self: stretch;
}

.ws-team__card {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  width: 100%;
  align-self: stretch;
}

.ws-team__photo img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

.ws-team__name {
  margin: 0;
  font-family: var(--mock-font-display, inherit);
  font-size: var(--h5);
}

.ws-team__role {
  margin: 0;
  color: var(--mock-muted-strong, color-mix(in srgb, var(--base) 72%, var(--white)));
  font-size: var(--text-s);
}

.ws-team__bio {
  margin: 0;
  color: var(--mock-muted, color-mix(in srgb, var(--base) 62%, var(--white)));
  font-size: var(--text-s);
}

.ws-team__link,
.ws-team__back {
  display: inline-block;
  margin-block-start: var(--space-xs);
}

.ws-team__single .ws-team__photo {
  margin-block-end: var(--space-m);
}
