/*
Team enhancement — Meet The Team grid + single member (bio) page.
Brand: navy #31485a | blue #3399d1 | teal #16999b
*/
:root{
  --tm-navy:#31485a;
  --tm-blue:#3399d1;
  --tm-ink:#22323f;
  --tm-muted:#5c6f7e;
  --tm-line:#e3eaf0;
  --tm-ease:cubic-bezier(.22,1,.36,1);
}

/* ---------- section heading ---------- */
.team-head{ text-align:center; margin:6px 0 40px; }
.team-eyebrow{
  display:inline-block; font-family:'Montserrat',sans-serif; font-weight:700;
  font-size:13px; letter-spacing:3px; text-transform:uppercase; color:var(--tm-blue); margin-bottom:8px;
}
.about_title,.team-title{
  font-family:'Montserrat',sans-serif !important; font-weight:800 !important;
  font-size:clamp(26px,3vw,36px) !important; color:var(--tm-ink) !important; letter-spacing:-.5px; text-align:center;
}

/* ---------- team grid ---------- */
.l_grid3:has(.team_box2){ gap:26px; }
.team_box2{
  display:block; background:#fff; border:1px solid var(--tm-line);
  border-radius:18px; overflow:hidden; text-decoration:none;
  box-shadow:0 10px 30px rgba(22,36,47,.07);
  transition:transform .4s var(--tm-ease), box-shadow .4s var(--tm-ease);
}
.team_box2:hover{ transform:translateY(-8px); box-shadow:0 22px 48px rgba(22,36,47,.16); }
.team_box2_pic{
  position:relative; aspect-ratio:3/4; overflow:hidden;
  background:linear-gradient(160deg,#eaf3f9 0%,#dbe9f2 100%);
}
.team_box2_pic picture.team_picture2{
  display:block; width:100%; height:100%; max-height:none; position:relative; z-index:1;
  transition:transform .5s var(--tm-ease);
}
.team_box2_pic img{
  width:100%; height:100%; object-fit:contain; display:block;
}
.team_box2:hover .team_picture2{ transform:scale(1.04); }
.team_content2{
  padding:18px 20px 20px; text-align:center; position:relative;
  margin-top:0 !important; box-shadow:none !important; background:#fff !important; width:auto !important;
}
.team_title2{
  font-family:'Montserrat',sans-serif; font-weight:800; font-size:18px; color:var(--tm-ink); line-height:1.25;
}
.team_position2{
  font-size:13.5px; color:var(--tm-blue); font-weight:600; margin-top:4px; text-transform:none;
}
.team_content2 .tm-view{
  display:inline-flex; align-items:center; gap:5px; margin-top:12px;
  font-family:'Montserrat',sans-serif; font-weight:600; font-size:12.5px; letter-spacing:.5px;
  color:var(--tm-muted); opacity:0; transform:translateY(6px);
  transition:opacity .3s ease, transform .3s var(--tm-ease), color .2s ease;
}
.team_box2:hover .tm-view{ opacity:1; transform:none; color:var(--tm-blue); }
.tm-view i{ font-size:16px; transition:transform .3s var(--tm-ease); }
.team_box2:hover .tm-view i{ transform:translateX(3px); }
[dir="rtl"] .team_box2:hover .tm-view i{ transform:translateX(-3px); }

/* ================= single member (bio) page ================= */
.bio-page{ padding:34px 0 10px; }
.bio-wrap{ max-width:1120px; }
.bio-back{
  display:inline-flex; align-items:center; gap:6px; margin-bottom:24px;
  font-family:'Montserrat',sans-serif; font-weight:600; font-size:14px; color:var(--tm-muted);
  text-decoration:none; transition:color .2s ease, gap .3s var(--tm-ease);
}
.bio-back:hover{ color:var(--tm-blue); gap:11px; }
.bio-grid{ display:grid; grid-template-columns:0.85fr 1.15fr; gap:52px; align-items:center; }
.bio-photo{
  position:relative; border-radius:22px; overflow:hidden;
  background:linear-gradient(160deg,#eaf3f9 0%,#d7e7f1 100%);
  display:flex; align-items:flex-end; justify-content:center; min-height:420px;
  box-shadow:0 24px 60px rgba(22,36,47,.14);
}
.bio-photo::before{
  content:''; position:absolute; top:-30px; right:-30px; width:200px; height:200px;
  border-radius:50%; background:rgba(51,153,209,.14);
}
.bio-photo img{ position:relative; z-index:1; max-width:100%; max-height:520px; width:auto; display:block; }
.bio-info .bio-eyebrow{
  display:inline-block; font-family:'Montserrat',sans-serif; font-weight:700; font-size:12px;
  letter-spacing:3px; text-transform:uppercase; color:var(--tm-blue); margin-bottom:10px;
}
.bio-name{
  font-family:'Montserrat',sans-serif; font-weight:800; font-size:clamp(28px,3.4vw,42px);
  color:var(--tm-ink); line-height:1.12; letter-spacing:-.6px; margin:0 0 14px;
}
.bio-position{
  display:inline-flex; align-items:center; gap:8px; margin-bottom:22px;
  background:#eef5fb; color:var(--tm-navy); border:1px solid #d5e6f4;
  border-radius:30px; padding:8px 18px; font-weight:600; font-size:14.5px;
}
.bio-position i{ font-size:18px; color:var(--tm-blue); }
.bio-text{
  font-size:16px; line-height:1.75; color:#43566a;
}
.bio-text p{ margin:0 0 14px; }

/* share heading (bio page has no page_v2.css) */
.page_share_head{
  font-family:'Montserrat',sans-serif; font-weight:700; font-size:13px; letter-spacing:2px;
  text-transform:uppercase; color:var(--tm-muted); margin:44px 0 4px; padding-top:26px;
  border-top:1px solid var(--tm-line);
}

/* reveal */
.tm-reveal{ opacity:0; transform:translateY(24px); transition:opacity .8s var(--tm-ease), transform .8s var(--tm-ease); transition-delay:var(--d,0ms); }
.tm-reveal.tm-in{ opacity:1; transform:none; }

@media all and (max-width:820px){
  .bio-grid{ grid-template-columns:1fr; gap:30px; }
  .bio-photo{ min-height:340px; }
}
@media (prefers-reduced-motion: reduce){
  .tm-reveal{ opacity:1 !important; transform:none !important; transition:none !important; }
  .team_box2,.team_picture2,.tm-view,.tm-view i{ transition:none !important; }
}
