.main-nav a[aria-current="page"] { color: #fff; }

.team-hero {
  min-height: 720px;
  padding: 180px 0 110px;
  color: #fff;
  background: radial-gradient(circle at 78% 38%, #0a3a75 0, #001d47 32%, #001638 68%);
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
}

.team-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(167,196,236,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(167,196,236,.055) 1px, transparent 1px);
  background-size: 84px 84px;
  mask-image: linear-gradient(to right, transparent, #000);
}

.team-hero-glow {
  position: absolute;
  width: 560px;
  height: 560px;
  border-radius: 50%;
  right: 8%;
  top: 18%;
  border: 1px solid rgba(167,196,236,.18);
  box-shadow: 0 0 0 80px rgba(167,196,236,.025), 0 0 0 160px rgba(167,196,236,.018);
}

.team-hero-inner { position: relative; z-index: 1; }
.team-hero h1 {
  max-width: 980px;
  margin: 30px 0 32px;
  font-size: clamp(3.5rem, 7vw, 7.2rem);
  line-height: .98;
  letter-spacing: -.065em;
  font-weight: 500;
}
.team-hero h1 em { color: #a7c4ec; font-style: normal; }
.team-hero-inner > p:last-child { max-width: 700px; color: rgba(255,255,255,.68); font-size: 19px; line-height: 1.75; }

.team-intro-grid { display: grid; grid-template-columns: .75fr 1.25fr; gap: 10%; align-items: start; }
.team-intro-grid h2, .team-section-heading h2, .team-closing h2 {
  font-size: clamp(2.7rem, 4.8vw, 5rem);
  line-height: 1.04;
  letter-spacing: -.055em;
  font-weight: 500;
  margin: 0 0 34px;
}
.team-intro-grid > div > p { color: #52627a; font-size: 18px; line-height: 1.8; max-width: 760px; }

.team-members { background: #001638; color: #fff; }
.team-section-heading { margin-bottom: 62px; }
.team-section-heading h2 { max-width: 760px; margin-top: 26px; }
.team-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 22px; }
.team-card { border: 1px solid rgba(167,196,236,.18); border-radius: 24px; overflow: hidden; background: #001d47; }
.team-photo { aspect-ratio: 16 / 9; overflow: hidden; background: #0b315e; }
.team-photo img { width: 100%; height: 100%; object-fit: cover; display: block; filter: saturate(.86) contrast(1.02); transition: transform .7s ease; }
.team-card:hover .team-photo img { transform: scale(1.025); }
.team-card-body { padding: 34px 36px 40px; }
.team-number { color: #7299d1; font-size: 11px; letter-spacing: .14em; }
.team-card h3 { font-size: 34px; letter-spacing: -.045em; margin: 28px 0 7px; }
.team-role { color: #a7c4ec !important; font-size: 12px !important; text-transform: uppercase; letter-spacing: .12em; margin-bottom: 28px !important; }
.team-card-body > p { color: rgba(255,255,255,.62); font-size: 15px; line-height: 1.78; margin: 0 0 18px; }

.team-closing { padding: 130px 0; color: #fff; background: linear-gradient(135deg, #001d47, #0a376d); }
.team-closing h2 { max-width: 900px; margin-top: 28px; }
.team-closing-inner > p:not(.eyebrow) { max-width: 680px; color: rgba(255,255,255,.65); font-size: 18px; line-height: 1.75; margin-bottom: 36px; }

@media (max-width: 980px) {
  .team-hero { min-height: 640px; }
  .team-intro-grid { grid-template-columns: 1fr; gap: 34px; }
}

@media (max-width: 720px) {
  .team-hero { min-height: auto; padding: 150px 0 90px; }
  .team-hero h1 { font-size: clamp(3.2rem, 14vw, 4.8rem); }
  .team-hero-inner > p:last-child { font-size: 16px; }
  .team-grid { grid-template-columns: 1fr; }
  .team-card-body { padding: 28px 24px 32px; }
  .team-card h3 { font-size: 29px; }
  .team-closing { padding: 90px 0; }
}

@media (prefers-reduced-motion: reduce) {
  .team-photo img { transition: none; }
}
