/* Team section styles — load this AFTER css/style.css since it uses the
   same color variables (--saffron-600, --ink-900, --grad-main, etc.)
   defined there. */

.team-slider{position:relative;display:flex;align-items:center;gap:14px;}
.team-slider-viewport{overflow:hidden;flex:1;min-width:0;}
.team-track{display:flex;gap:24px;transition:transform .5s cubic-bezier(.4,0,.2,1);will-change:transform;}
.team-slide{flex:0 0 calc(25% - 18px);min-width:0;}
@media (max-width:991.98px){.team-slide{flex:0 0 calc(50% - 12px);}}
@media (max-width:575.98px){.team-slide{flex:0 0 100%;}}
.team-arrow{
  width:42px;height:42px;border-radius:50%;background:#fff;border:1.5px solid var(--line-200);
  color:var(--ink-700);display:flex;align-items:center;justify-content:center;font-size:.85rem;
  flex-shrink:0;transition:all .2s ease;box-shadow:0 10px 22px -12px rgba(15,23,42,.2);
}
.team-arrow:hover{background:var(--grad-main);border-color:transparent;color:#fff;}
.team-counter{text-align:center;margin-top:1.5rem;font-size:.85rem;font-weight:700;color:var(--ink-700);letter-spacing:.03em;}
.team-card{
  background:#fff;border:1px solid var(--line-200);border-radius:22px;
  padding:14px 14px 1.6rem;height:100%;text-align:center;
  transition:box-shadow .25s ease,transform .25s ease;
}
.team-card:hover{box-shadow:0 26px 50px -24px rgba(15,23,42,.22);transform:translateY(-4px);}
.team-photo-frame{
  width:100%;aspect-ratio:1/1.02;border-radius:16px;overflow:hidden;margin-bottom:1.1rem;
  background:var(--surface-100);
}
.team-photo{width:100%;height:100%;object-fit:cover;display:block;}
.team-photo-fallback{
  width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  font-family:'Sora',sans-serif;font-weight:800;font-size:1.8rem;color:var(--saffron-600);
  background:var(--grad-soft);
}
.team-name{font-family:'Sora',sans-serif;font-weight:800;color:var(--ink-900);font-size:1.02rem;}
.team-role{font-size:.83rem;font-weight:700;color:var(--saffron-600);margin-top:.15rem;margin-bottom:0;}
.team-bio{font-size:.82rem;line-height:1.6;color:var(--ink-700);opacity:.85;margin:.6rem 0 0;}
.team-social{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  margin-top:1rem;padding:.4rem .7rem;border:1.5px solid var(--line-200);border-radius:50rem;
}
.team-social a{
  width:28px;height:28px;border-radius:50%;background:transparent;color:var(--ink-700);
  display:flex;align-items:center;justify-content:center;font-size:.75rem;transition:all .2s ease;
}
.team-social a:hover{background:var(--grad-main);color:#fff;transform:translateY(-2px);}
