/* Shared institutional photography; approved editorial montage and full portraits. */
.institutional-team { margin: clamp(24px, 3vw, 40px) 0 0; }
.institutional-team__image-link { display: block; border-radius: var(--ui-radius-card); background: #e9eef5; }
.institutional-team picture, .institutional-team img { display: block; width: 100%; }
.institutional-team img { height: auto; aspect-ratio: 3 / 2; object-fit: contain; border-radius: var(--ui-radius-card); }
.institutional-team__caption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; align-items: baseline; padding-block: 12px 0; color: var(--color-navy, #011655); font-size: .8125rem; line-height: 1.5; }
.institutional-team__caption a { display: inline-flex; gap: 5px; align-items: center; min-height: 44px; text-underline-offset: 4px; }
.institutional-team a:focus-visible, .institutional-portraits a:focus-visible { outline: 3px solid #4e90ff; outline-offset: 4px; }
.institutional-portraits__title { margin: clamp(32px, 4vw, 52px) 0 0; scroll-margin-top: 100px; }
.institutional-portraits {
  container: institutional-portraits / inline-size;
  --portrait-gap: clamp(16px, 2.5vw, 28px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(170px, 100%), 1fr));
  gap: var(--portrait-gap);
  max-width: 1100px;
  margin: clamp(28px, 3vw, 40px) auto 0;
}
.institutional-portraits__photo {
  min-width: 0;
  margin: 0;
  border-radius: var(--ui-radius-card);
  background: #f2f5fb;
}
.institutional-portraits__photo a { display: block; border-radius: inherit; }
.institutional-portraits--studio { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.institutional-portraits--studio img { border-radius: var(--ui-radius-card); }
.institutional-portraits__photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 4;
  object-fit: contain;
}
.home-team { background: var(--color-white); }
.home-team .section-head { margin-bottom: 0; }
.home-team__actions { margin-top: 28px; }
.home-team__story { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.3fr); align-items: center; gap: clamp(28px, 4vw, 56px); }
.home-team__story > * { min-width: 0; }
.home-team__story > .institutional-team { margin: 0; }
.home-team__copy .section-head { display: block; }
.home-team__copy .head-left, .home-team__copy .head-right { max-width: none; width: auto; }
.home-team__copy .head-right { margin-top: 20px; }
.about-team > .container > .institutional-team { max-width: 1000px; margin-inline: auto; }
.institutional-portrait-group { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: end; gap: clamp(5px, 1vw, 16px); min-width: 0; padding: clamp(10px, 1.5vw, 20px) 10px 0; background: #f2f5fb; border-radius: var(--ui-radius-card); }
.institutional-portrait-group__photo { min-width: 0; margin: 0; }
.institutional-portrait-group__photo a { display: block; }
.institutional-portrait-group img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: contain; }
.institutional-portrait-group a:focus-visible { outline: 3px solid #4e90ff; outline-offset: 3px; }
.institutional-presence-story { background: #f5f7fb; }
.institutional-presence-story__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: clamp(24px, 4vw, 56px); }
.institutional-presence-story__inner > * { min-width: 0; }
.institutional-presence-story .lead { margin-block: 20px 24px; }
.final-cta--catalog .final-cta__box--people { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); row-gap: 20px; }
.final-cta__box--people > :first-child { grid-area: 1 / 1; }
.final-cta__box--people > .final-cta__actions { grid-area: 2 / 1; align-self: start; }
.final-cta__box--people > .final-cta__people { grid-area: 1 / 2 / span 2 / 3; min-width: 0; align-self: center; }
.contact-aside > .institutional-portrait-group { margin-top: 28px; }
@media (max-width: 900px) {
 .final-cta--catalog .final-cta__box--people { grid-template-columns: minmax(0, 1fr); }
 .final-cta__box--people > :first-child, .final-cta__box--people > .final-cta__actions, .final-cta__box--people > .final-cta__people { grid-area: auto; }
}
@media (max-width: 860px) {
 .home-team__story, .institutional-presence-story__inner { grid-template-columns: minmax(0, 1fr); }
 .institutional-portraits--studio { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@container page-layout (max-width: 540px) {
  .institutional-portraits { grid-template-columns: repeat(2, minmax(0, 1fr)); --portrait-gap: 12px; }
}
@media (max-width: 540px) {
  .institutional-portraits { grid-template-columns: repeat(2, minmax(0, 1fr)); --portrait-gap: 12px; }
}
