/* Shared navigation accommodates the team route without crowding the logo. */
@media (min-width: 851px) {
  .site-header #navigation { gap: clamp(18px, 2.05vw, 29px); }
  .site-header #navigation > a { white-space: nowrap; }
}
@media (max-width: 850px) {
  .site-header #navigation.open { max-height: calc(100svh - 105px); overflow-y: auto; }
}

/* Approved team portraits sit on quiet surfaces over the existing film. */
.team-page .hero:not(.home-hero) { min-height: 78svh; padding-bottom: 95px; }
.team-page .hero-intro { max-width: 530px; }
.team-page main > .team-founder {
  display: grid;
  grid-template-columns: minmax(240px, .85fr) minmax(0, 1.15fr);
  align-items: center;
  gap: clamp(35px, 5vw, 80px);
  padding: clamp(26px, 4.5vw, 65px);
}
.team-portrait {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 5;
  background: var(--stone);
  border-radius: 4px;
}
.team-portrait img { display: block; width: 100%; height: 100%; object-fit: cover; }
.founder-profile { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: center; gap: clamp(30px, 5vw, 70px); }
.founder-profile .team-portrait img { object-position: 50% 30%; }
.founder-profile .founder-copy { display: block; width: 100%; margin: 0; }
.team-portrait-pending { display: grid; place-items: center; background: var(--stone); }
.team-portrait-pending > span { font: 600 clamp(55px, 9vw, 100px)/1 var(--display); color: var(--blue); }
.team-founder .team-portrait { width: 100%; max-width: 465px; }
.team-founder-copy { min-width: 0; padding-block: 12px; }
.team-founder-copy h2 { font-size: clamp(36px, 4.2vw, 60px); line-height: 1.16; }
.team-founder-copy > p:not(.eyebrow) { color: var(--charcoal); font-size: 18px; line-height: 1.56; max-width: 580px; }
.team-founder-copy > .team-founder-intro { font-size: 20px; line-height: 1.56; color: var(--blue); }
.team-founder-copy .text-link { margin-top: 12px; }
.team-directory-heading { max-width: 650px; margin-bottom: 50px; }
.team-directory-heading h2 { margin-bottom: 25px; }
.team-directory-heading > p:last-child { color: var(--charcoal); max-width: 480px; margin-bottom: 0; }
.team-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 44px 28px; }
.team-card { min-width: 0; background: var(--white); }
.team-card-copy { padding: 22px 2px 0; }
.team-card h3 { color: var(--blue); font-size: clamp(20px, 1.8vw, 26px); line-height: 1.35; letter-spacing: -.4px; margin: 0 0 10px; text-wrap: balance; }
.team-role { font-size: 16px; line-height: 1.56; color: var(--charcoal); margin: 0; }
.team-secondary-name { color: var(--charcoal); font-size: 15px; line-height: 1.5; margin: -3px 0 10px; }

@media (max-width: 1000px) {
  .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 38px 25px; }
  .team-card h3 { color: var(--blue); font-size: 23px; }
}
@media (max-width: 850px) {
  .team-page main > .team-founder { gap: 30px; grid-template-columns: minmax(220px, .9fr) minmax(0, 1.1fr); }
  .team-founder-copy h2 { font-size: 36px; letter-spacing: -1.5px; }
  .team-founder-copy > .team-founder-intro { font-size: 18px; }
}
@media (max-width: 620px) {
  .founder-profile { grid-template-columns: 1fr; }
  .team-page .hero:not(.home-hero) { min-height: 76svh; padding-block: 145px 75px; }
  .team-page main > .team-founder { grid-template-columns: 1fr; padding: 25px; gap: 25px; }
  .team-founder .team-portrait { max-width: none; }
  .team-founder-copy { padding-block: 6px; }
  .team-founder-copy h2 { font-size: 38px; }
  .team-founder-copy > .eyebrow { margin-bottom: 18px; }
  .team-directory-heading { margin-bottom: 35px; }
  .team-grid { grid-template-columns: 1fr; gap: 38px; }
  .team-card h3 { color: var(--blue); font-size: 25px; }
  .team-card-copy { padding-top: 20px; }
  .team-role { font-size: 16px; }
}
