/* about.css — about.html: manifesto, team, ecosystem */

.manifesto-points { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.manifesto-points li { padding: 26px 26px 28px; display: flex; flex-direction: column; gap: 12px; }
.manifesto-points h3 { font-size: 22px; line-height: 1.15; }
.manifesto-points p { color: var(--muted); font-size: 15px; }

.team-grid { display: grid; gap: 20px; }
.member { padding: 0; overflow: hidden; display: grid; grid-template-columns: 340px 1fr; align-items: stretch; }
.member-photo { background: var(--cream-2); overflow: hidden; }
.member-photo img { width: 100%; height: 100%; object-fit: cover; object-position: top; transition: transform .8s var(--ease); }
.member:hover .member-photo img { transform: scale(1.04); }
.member-body { padding: 36px 40px; display: flex; flex-direction: column; justify-content: center; }
.member-body .num { margin-bottom: 12px; }
.member-body h2 { font-size: clamp(28px, 2.6vw, 40px); margin-bottom: 6px; }
.member-role { color: var(--gold); font-size: 14px; letter-spacing: .06em; margin-bottom: 18px; }
.member-body p { color: var(--muted); font-size: 16px; max-width: 60ch; }
.badges { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.badges li { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; padding: 7px 12px; border: 1px solid var(--line-strong); border-radius: 999px; }
.member-body .link-arrow { margin-top: 24px; font-size: 14px; }

.ecosystem-list { display: flex; flex-wrap: wrap; gap: 12px; }
.ecosystem-list { display: flex; flex-wrap: wrap; gap: 12px; }
.ecosystem-list li { padding: 14px 22px; border: 1px solid var(--line-strong); background: #fff; border-radius: 999px; font-size: 15px; transition: border-color .25s, color .25s; }
.ecosystem-list li:hover { border-color: var(--gold); color: var(--gold); }
.ecosystem-list li.muted { border-style: dashed; }

@media (max-width: 900px) {
  .manifesto-points { grid-template-columns: 1fr 1fr; }
  .member { grid-template-columns: 1fr; }
  .member-photo { aspect-ratio: 4 / 3; }
  .member-body { padding: 28px 24px; }
}

@media (max-width: 560px) {
  .manifesto-points { grid-template-columns: 1fr; }
}
