.advisor-section { background: #f5f8fa; }
.advisor-intro { max-width: 850px; margin-bottom: 42px; }
.advisor-section-label { display: flex; align-items: center; gap: 16px; }
.advisor-section-label .eyebrow { margin: 0; }
.advisor-intro h2 { color: #10233d; margin: 12px 0 22px; }
.advisor-intro > p:last-child { font-size: 17px; line-height: 1.8; color: #40566b; }
.advisor-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; }
.advisor-card { min-width: 0; height: 100%; display: flex; flex-direction: column; background: #fff; border: 1px solid #dce5eb; border-radius: 8px; overflow: hidden; }
.advisor-portrait { position: relative; width: calc(100% - 24px); margin: 12px auto 0; aspect-ratio: 1; overflow: hidden; border-radius: 4px; background: #e5ebec; }
.advisor-portrait .advisor-photo { position: absolute; display: block; max-width: none; width: 100%; height: auto; left: 50%; top: 0; transform: translateX(-50%); }
/* Portraits deliberately extend beyond their clipped frame. Override the
   shared mobile image limit so the individual crops still fill the square. */
.about-page main .advisor-portrait .advisor-photo { max-inline-size: none !important; border-radius: 0; }
/* Match crown-to-chin size and eye line using each original portrait's framing. */
.advisor-portrait-sean .advisor-photo { width: 120%; top: -25%; }
.advisor-portrait-arvind .advisor-photo { width: 100%; top: 0; }
.advisor-portrait-samarendra .advisor-photo { width: 133%; top: -2%; }
.advisor-content { display: flex; flex-direction: column; flex: 1; padding: 26px; }
.about-page .advisor-content h3 { margin: 0 0 12px; font-size: 25px; line-height: 1.25; color: #10233d; }
.advisor-contact { display: flex; align-items: center; flex-wrap: wrap; gap: 0 10px; margin-top: auto; padding-top: 12px; border-top: 1px solid #e3e9ee; }
.advisor-location { margin: 0; color: #586d7d; font-size: 14px; line-height: 1.5; }
.advisor-contact-divider { color: #586d7d; }
.about-page .advisor-content .advisor-role { min-height: 3em; margin: 0 0 20px; color: #0f766e; font-size: 14px; font-weight: 700; line-height: 1.5; }
.advisor-bio { margin: 0 0 24px; color: #40566b; font-size: 15px; line-height: 1.8; }
.advisor-bio:has(+ .advisor-bio) { margin-bottom: 16px; }
.advisor-contact .advisor-link { margin-top: 0; align-self: center; }
.advisor-link { display: inline-flex; align-items: center; gap: 9px; align-self: flex-start; margin-top: auto; min-height: 44px; color: #126b8d; font-size: 14px; font-weight: 600; text-decoration: none; }
.advisor-link svg { width: 19px; height: 19px; fill: currentColor; }
.advisor-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.advisor-link:focus-visible { outline: 2px solid #0f766e; outline-offset: 5px; }
@media (min-width: 701px) and (max-width: 1100px) {
  .advisor-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .advisor-card:last-child { grid-column: 1 / -1; width: calc((100% - 26px) / 2); justify-self: center; }
  .advisor-content { padding: 24px; }
}
@media (max-width: 700px) {
  .advisor-grid { grid-template-columns: 1fr; max-width: 600px; margin-inline: auto; }
  .about-page .advisor-content .advisor-role { min-height: 0; }
  .advisor-content { padding: 24px; }
}
