.team-group{font-size:1.3rem;margin:34px 0 14px;padding-bottom:8px;border-bottom:2px solid var(--soft-lavender,#EDE4F5)}
.team-group:first-of-type{margin-top:6px}
.team-grid{display:grid;gap:18px;grid-template-columns:repeat(4,minmax(0,1fr))}
.team-card{background:var(--white,#fff);border:1px solid var(--light-gray,#e5dfee);border-radius:var(--radius-md,14px);box-shadow:var(--shadow-card);overflow:hidden;display:flex;flex-direction:column}
.team-card__open{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;flex:1;padding:0 0 8px}
.team-card__open:focus-visible{outline:3px solid var(--light-purple,#A56AD6);outline-offset:-3px}
.team-card__photo{display:block;aspect-ratio:1/1;background:var(--soft-lavender,#EDE4F5);overflow:hidden}
.team-card__photo img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}
.team-card__photo.is-initials{display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,#351C4F,#70449A 60%,#A56AD6)}
.team-card__photo.is-initials b{font-family:var(--font-display);font-size:2.4rem;color:#fff;letter-spacing:.04em}
.team-card__name{display:block;font-weight:800;font-size:1.05rem;color:var(--dark-purple,#351C4F);padding:12px 14px 0}
.team-card__role{display:block;font-size:.88rem;font-weight:600;color:var(--secondary-purple,#70449A);padding:2px 14px 0;margin:0}
.team-card__bio{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.88rem;color:var(--text-muted,#6b5c80);padding:6px 14px 0;line-height:1.45}
.team-card__links{display:flex;gap:6px;padding:4px 10px 12px}
.team-card__links a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;color:var(--primary-purple,#563477);background:var(--soft-lavender,#EDE4F5)}
.team-card__links a:hover{background:var(--primary-purple,#563477);color:#fff}
[data-theme="dark"] .team-card__name{color:var(--text-dark,#f1eaf8)}
.team-dialog{border:0;border-radius:18px;padding:22px;max-width:480px;width:calc(100% - 32px);background:var(--white,#fff);color:var(--text-dark,#2b2036);box-shadow:0 20px 60px rgba(20,10,32,.4)}
.team-dialog::backdrop{background:rgba(20,10,32,.55)}
.team-dialog__x{position:absolute;top:8px;right:12px;background:none;border:0;font-size:1.8rem;line-height:1;cursor:pointer;color:var(--text-muted,#6b5c80)}
.team-dialog__head{display:flex;gap:14px;align-items:center;margin-bottom:12px}
.team-dialog__head h3{margin:0;font-size:1.25rem}
.team-dialog__head .team-card__role{padding:0}
.team-card__photo--sm{width:76px;height:76px;flex:none;border-radius:50%}
.team-card__photo--sm.is-initials b{font-size:1.5rem}
.team-dialog__bio{line-height:1.6;margin:0 0 16px}
.team-dialog__foot{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.team-dialog__foot .team-card__links{padding:0}
.team-join{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:40px;padding:22px 24px;border-radius:var(--radius-md,14px);background:linear-gradient(135deg,#351C4F,#70449A);color:#fff}
.team-join h2{color:#fff;margin:0 0 4px;font-size:1.3rem}.team-join p{margin:0;max-width:56ch;opacity:.9}
.team-join .btn-primary{background:#fff;color:var(--primary-purple,#563477);border-color:#fff}
@media (max-width:1000px){.team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:720px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.team-card__name{font-size:.98rem;padding:10px 12px 0}.team-card__role,.team-card__bio{padding-left:12px;padding-right:12px}.team-card__photo.is-initials b{font-size:2rem}}
