/* New Horizons Team Grid - isolated styles */
.nh-team-grid,
.nh-team-grid *{
  box-sizing:border-box;
}

.nh-team-grid{
  --nh-blue:#0E4BA8;
  --nh-blue-dark:#163A70;
  --nh-orange:#F47A20;
  --nh-bg:#F8FBFF;
  --nh-border:#E6EDF5;
  --nh-text:#4B5563;
  display:grid;
  gap:28px;
  width:100%;
  font-family:"DM Sans",Arial,sans-serif;
}

.nh-team-cols-1{grid-template-columns:1fr;}
.nh-team-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.nh-team-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.nh-team-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}

.nh-team-card{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--nh-border);
  border-radius:24px;
  background:#fff;
  box-shadow:0 18px 50px rgba(22,58,112,.08);
  transition:transform .28s ease,box-shadow .28s ease;
}

.nh-team-card:hover{
  transform:translateY(-7px);
  box-shadow:0 28px 65px rgba(22,58,112,.14);
}

.nh-team-photo-wrap{
  position:relative;
  aspect-ratio:4 / 3;
  overflow:hidden;
  background:#EAF3FB;
}

.nh-team-photo{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .5s ease;
}

.nh-team-card:hover .nh-team-photo{
  transform:scale(1.035);
}

.nh-team-photo-fallback{
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#EAF3FB,#F8FBFF);
}

.nh-team-photo-fallback span{
  color:var(--nh-blue);
  font-size:58px;
  font-weight:800;
}

.nh-team-card-body{
  padding:28px 28px 30px;
}

.nh-team-name{
  margin:0 0 4px !important;
  color:var(--nh-blue) !important;
  font-size:25px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}

.nh-team-position{
  margin-bottom:17px;
  color:var(--nh-orange);
  font-size:14px;
  font-weight:700;
  line-height:1.4;
}

.nh-team-excerpt,
.nh-team-full-bio{
  color:var(--nh-text);
  font-size:15px;
  line-height:1.8;
}

.nh-team-full-bio p{
  margin:0 0 14px;
}

.nh-team-full-bio p:last-child{
  margin-bottom:0;
}

.nh-team-toggle{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  width:auto !important;
  min-height:44px !important;
  margin:22px 0 0 !important;
  padding:11px 18px !important;
  border:1px solid rgba(14,75,168,.16) !important;
  border-radius:999px !important;
  outline:none !important;
  background:#F4F8FD !important;
  color:var(--nh-blue) !important;
  box-shadow:none !important;
  font-family:inherit !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  cursor:pointer !important;
  transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease !important;
}

.nh-team-toggle:hover,
.nh-team-toggle:focus-visible{
  background:var(--nh-blue) !important;
  color:#fff !important;
  border-color:var(--nh-blue) !important;
  transform:translateY(-1px);
}

.nh-team-toggle-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:50%;
  background:var(--nh-orange);
  color:#fff;
  font-size:17px;
  font-weight:500;
  transition:transform .25s ease;
}

.nh-team-toggle[aria-expanded="true"] .nh-team-toggle-icon{
  transform:rotate(45deg);
}

.nh-team-card.is-expanded .nh-team-excerpt{
  display:none;
}

.nh-team-empty{
  padding:22px;
  border-radius:16px;
  background:#F8FBFF;
  color:#4B5563;
  text-align:center;
}

@media (max-width:1100px){
  .nh-team-cols-4{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:860px){
  .nh-team-cols-3,
  .nh-team-cols-2,
  .nh-team-cols-4{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:620px){
  .nh-team-cols-1,
  .nh-team-cols-2,
  .nh-team-cols-3,
  .nh-team-cols-4{grid-template-columns:1fr;}
  .nh-team-card-body{padding:24px 22px 26px;}
  .nh-team-name{font-size:23px !important;}
}
