/* Lead Dev: shared base styles, built on the designer's tokens */
body {
  margin: 0;
  background: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-body);
  font-size: var(--step-body);
  line-height: var(--leading-body);
}
h1, h2, h3 {
  font-family: var(--font-display);
  font-weight: var(--weight-display);
  line-height: var(--leading-display);
  color: var(--color-primary);
}
h1 { font-size: var(--step-h1); margin: 0 0 var(--space); }
h2 { font-size: var(--step-h2); margin: var(--space-l) 0 var(--space); }
h3 { font-size: var(--step-h3); margin: 0 0 var(--space-s); }
p, li { max-width: var(--measure); }
main a { color: var(--color-link); text-underline-offset: 0.15em; }
main a:hover { color: var(--color-primary); }
.lead {
  font-size: calc(var(--step-body) * 1.2);
  color: var(--color-muted);
}
section + section { border-top: 1px solid var(--color-rule); }
main ul { padding-left: var(--space-m); }
main img { max-width: 100%; height: auto; }
.team-list {
  list-style: none;
  padding: 0;
  display: grid;
  gap: var(--space-m);
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
}
.team-list li {
  background: var(--color-surface);
  border: 1px solid var(--color-rule);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: var(--space-m);
  text-align: center;
}
.team-list img { display: block; margin: 0 auto var(--space); }
.team-list p { margin: 0; color: var(--color-muted); max-width: none; }
