.info-hero { background: var(--ink); color: white; padding-block: clamp(65px,5.5vw,105px); }
.info-hero h1 { color: var(--teal); font: 700 clamp(38px,4vw,74px)/1.12 var(--heading-font); margin: 0; max-width: 22ch; overflow-wrap: anywhere; }
.info-crumb { display: flex; flex-wrap: wrap; align-items: center; gap: 7px 10px; margin-bottom: 20px; font-size: .86rem; }
.info-crumb a { color: inherit; text-underline-offset: 4px; }
.info-content { padding-block: clamp(42px,5.5vw,100px); }
.info-prose { max-width: 900px; }
.info-prose.info-team-page { max-width: none; }
.info-team-page > p { max-width: 900px; }
.info-prose h2 { margin-top: 1.2em; }
.info-prose h3 { margin-top: 1em; }
.info-prose a:not(.pill) { color: inherit; text-underline-offset: 4px; }
.info-with-photo { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); gap: clamp(26px,5vw,85px); align-items: start; }
.info-photo { width: 100%; max-height: 420px; object-fit: cover; border-radius: 12px; }
.info-photo-full { height: auto; max-height: none; object-fit: contain; }
.info-table { width: 100%; border-collapse: separate; border-spacing: 0; border-radius: 10px; overflow: hidden; margin-bottom: 24px; }
.info-table th, .info-table td { padding: 11px clamp(10px,2vw,22px); border-bottom: 1px solid #d4e5e6; text-align: left; vertical-align: top; }
.info-table tbody tr:nth-child(odd) { background: var(--light); }
.info-table tbody th { font-weight: 500; }
.info-table thead { background: var(--ink); color: #fff; }
.info-table td { white-space: nowrap; }
.info-tiles { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 20px 0; padding: 0; list-style: none; }
.info-tiles a { display: flex; justify-content: space-between; align-items: center; gap: 10px; height: 100%; padding: 14px 16px; background: var(--light); border-radius: 9px; font-weight: 600; text-decoration: none; }
.info-tiles a::after { content: '→'; }
.info-tiles a:hover { text-decoration: underline; }
.info-logos { display: grid; grid-template-columns: repeat(auto-fit,minmax(145px,1fr)); gap: 16px; margin-top: 32px; }
.info-logos > div { display: grid; place-items: center; min-height: 130px; padding: 18px; background: white; border: 1px solid #d4e5e6; border-radius: 10px; }
.info-logos img { width: 100%; max-height: 110px; object-fit: contain; }
@media(max-width: 760px) { .info-with-photo { grid-template-columns: 1fr; } }
@media(max-width: 420px) { .info-tiles { grid-template-columns: 1fr; } }
.info-date { font-size: .9rem; color: #345762; }
.info-prose img { margin-block: 16px; max-width: 100%; height: auto; border-radius: 9px; }
.info-prose .info-logos img { margin: 0; }
.info-team { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; list-style: none; padding: 0; }
.info-team a { display: block; height: 100%; padding: 16px; background: var(--light); border-radius: 12px; text-align: center; text-decoration: none; }
.info-team a:hover h3 { text-decoration: underline; }
.info-team img { width: 100%; height: auto; aspect-ratio: 1 / 1.1; object-fit: contain; margin: 0; }
.info-team .team-portrait-blend { mix-blend-mode: multiply; }
.info-team h3 { font-size: clamp(16px,2vw,23px); }
.info-team p { margin-bottom: 0; }
.info-prose .info-note { padding: 14px 16px; margin-top: 24px; background: var(--light); border-radius: 8px; }
.info-map { display: block; width: 100%; max-width: 100%; height: clamp(260px,42vw,450px); margin-top: 28px; border: 0; border-radius: 12px; }
@media(max-width: 860px) { .info-team { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media(max-width: 630px) { .info-team { grid-template-columns: repeat(2,minmax(0,1fr)); } }
.partner-logos { grid-template-columns: repeat(auto-fit,minmax(150px,1fr)); }
.partner-logos a { display: grid; place-items: center; min-height: 146px; padding: 8px; overflow: hidden; background: white; border: 1px solid #d4e5e6; border-radius: 10px; }
.partner-logos a:hover { border-color: #648e94; box-shadow: 0 3px 12px #00384314; }
.partner-logos img { max-height: 132px; }
.partner-logos a:first-child img, .partner-logos a:last-child img { transform: scale(1.24); }
.staff-portrait { max-width: 420px; justify-self: center; }
.staff-specialties { padding-block: clamp(38px,5vw,78px); background: var(--light); }
.staff-specialty-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: clamp(12px,2vw,24px); margin: 28px 0 0; padding: 0; list-style: none; }
.staff-specialty-grid a { display: flex; flex-direction: column; height: 100%; overflow: hidden; border-radius: 10px; color: #fff; background: var(--ink); text-decoration: none; }
.staff-specialty-grid a:hover { text-decoration: underline; text-underline-offset: 4px; }
.staff-specialty-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.staff-specialty-grid a > span { display: flex; flex: 1; align-items: center; justify-content: center; gap: 6px; min-height: 60px; padding: 12px; text-align: center; font-weight: 700; line-height: 1.4; }
@media(max-width: 850px) { .staff-specialty-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 360px) { .staff-specialty-grid { grid-template-columns: 1fr; } }
