/* ================================================================
   V29 — OUR PEOPLE / TEAM DIRECTORY
   Inspired by the people-first staff-directory hierarchy of the
   referenced GJC Law team page, translated into Alvin Choo Sales DNA.
   ================================================================ */

.page-team #team{
  background:var(--bone)!important;
  color:var(--ink)!important;
}

.page-team #team .wrap{
  max-width:1240px;
}

.page-team #team .section-head{
  max-width:760px;
  margin-bottom:46px;
}

.page-team #team .section-head .eyebrow,
.page-team #team .section-head .eyebrow.light{
  color:var(--brass)!important;
}

.page-team #team .section-head h2{
  color:var(--ink)!important;
}

.page-team #team .section-head .lede{
  color:var(--slate)!important;
}

.page-team #team .team-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:52px 30px!important;
  align-items:start!important;
}

.page-team #team .member{
  min-width:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--ink)!important;
}

/* Portrait-first directory treatment */
.page-team #team .member-mark.member-photo{
  width:100%!important;
  height:auto!important;
  aspect-ratio:1 / 1!important;
  display:block!important;
  margin:0 0 21px!important;
  padding:0!important;
  overflow:hidden!important;
  background:#22374a!important;
  border:1px solid rgba(14,20,24,.12)!important;
}

.page-team #team .member-mark.member-photo img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:scale(1)!important;
  filter:saturate(.98) contrast(1.01)!important;
  transition:transform .5s cubic-bezier(.2,.7,.2,1),
             filter .4s ease!important;
}

.page-team #team .member h3{
  margin:0 0 8px!important;
  color:var(--ink)!important;
  font-size:clamp(25px,2vw,31px)!important;
  line-height:1.08!important;
  transition:color .28s ease!important;
}

.page-team #team .member .cea{
  margin:0 0 11px!important;
  color:#667078!important;
  font-size:11px!important;
  font-weight:600!important;
  letter-spacing:.13em!important;
  line-height:1.45!important;
  text-transform:uppercase!important;
}

.page-team #team .member .member-phone{
  margin:0!important;
  color:#4f5a61!important;
  font-size:14px!important;
  line-height:1.5!important;
}

/* Replace oversized contact-card buttons with a restrained staff-directory row. */
.page-team #team .member-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px 22px!important;
  margin-top:17px!important;
  padding-top:15px!important;
  border-top:1px solid rgba(14,20,24,.16)!important;
}

.page-team #team .member-actions .btn{
  width:auto!important;
  min-width:0!important;
  min-height:44px!important;
  height:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:8px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--ink)!important;
  font-size:10.5px!important;
  font-weight:600!important;
  line-height:1.15!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  transition:color .25s ease,transform .25s ease!important;
}

.page-team #team .member-actions .btn-brass{
  color:#8b6a35!important;
}

.page-team #team .member-actions .btn-brass::after{
  content:'↗';
  margin-left:7px;
  font-size:13px;
  line-height:1;
}

.page-team #team .member-actions .btn-line::after{
  content:'→';
  margin-left:7px;
  font-size:13px;
  line-height:1;
}

@media (hover:hover) and (pointer:fine){
  .page-team #team .member:hover .member-photo img{
    transform:scale(1.035)!important;
    filter:saturate(1.02) contrast(1.02) brightness(.96)!important;
  }
  .page-team #team .member:hover h3{
    color:#8b6a35!important;
  }
  .page-team #team .member-actions .btn:hover{
    color:var(--brass)!important;
    transform:translateX(2px)!important;
  }
}

/* Tablet */
@media (max-width:1039px){
  .page-team #team .section-head{
    margin-bottom:38px;
  }
  .page-team #team .team-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:44px 24px!important;
  }
}

/* Mobile */
@media (max-width:679px){
  .page-team #team .section-head{
    margin-bottom:31px;
  }
  .page-team #team .team-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:42px!important;
  }
  .page-team #team .member{
    width:100%!important;
    max-width:440px!important;
    margin-inline:auto!important;
  }
  .page-team #team .member-mark.member-photo{
    margin-bottom:18px!important;
  }
  .page-team #team .member h3{
    font-size:27px!important;
  }
  .page-team #team .member-actions{
    gap:7px 20px!important;
  }
}

/* Very small phones */
@media (max-width:359px){
  .page-team #team .member-actions{
    gap:4px 16px!important;
  }
  .page-team #team .member-actions .btn{
    font-size:10px!important;
    letter-spacing:.1em!important;
  }
}
