/* Team-only editorial layout. No homepage or article selectors. */
.covenant-home.team-page > nav,
.covenant-home.team-page > nav.scrolled { background: #0e1012; border-bottom: none; box-shadow: 0 8px 30px rgba(0, 0, 0, 0.24); backdrop-filter: none; -webkit-backdrop-filter: none; }
.covenant-home.team-page main > section { min-height: 0; display: block; text-align: left; }
.team-page { background: #f7f8fa; }
.team-page main { color: #0d0f12; }
.team-page .team-intro { max-width: 1080px; margin: auto; padding: 125px 32px 40px; }
.team-intro h1 { max-width: 720px; font-size: clamp(36px,4vw,54px); line-height: 1.08; letter-spacing: -2px; font-weight: 500; margin: 18px 0; color: #0d0f12; }
.team-intro > p { max-width: 680px; font-size: 15px; line-height: 1.75; color: #5e646e; }
.covenant-home.team-page main > section.team-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; max-width: 1080px; padding: 0 32px 48px; gap: 28px; margin: auto; }
.team-person { display: flex; flex-direction: column; min-width: 0; padding: 12px; }
.team-portrait { width: 100%; max-width: 340px; margin: 0 auto; overflow: hidden; border-radius: 8px; background: #eaecef; }
/* Preserve the source portraits: never crop faces into a landscape banner. */
.team-portrait img { display: block; width: 100%; height: auto; }
.team-person-body { display: flex; flex-direction: column; flex: 1; padding: 20px 14px 12px; }
.team-person h2 { font-size: 25px; font-weight: 500; margin: 0 0 7px; letter-spacing: -.7px; color: #0d0f12; }
.team-person small { font-size: 11px; color: #6e747e; }
.team-person p { font-size: 13px; line-height: 1.8; color: #5e646e; margin: 18px 0 24px; }
.team-person a { align-self: flex-start; color: #0d0f12; font-size: 12px; text-decoration: none; padding-bottom: 3px; margin-top: 16px; }
.team-person a:hover { text-decoration: underline; text-underline-offset: 4px; }
.team-experience { margin-top: auto; padding-top: 18px; min-height: 84px; }
.team-experience > small { display: block; font-size: 9px; letter-spacing: 1.2px; margin-bottom: 16px; color: #6e747e; }
.team-company-logos { display: flex; align-items: center; gap: 24px; min-height: 38px; }
.team-company-logos > span { display: flex; align-items: center; }
.team-company-logos img { display: block; width: 95px; height: 30px; object-fit: contain; mix-blend-mode: multiply; }
.team-company-logos > span:first-child img { width: 58px; height: 36px; }
.team-background { display: flex; align-items: center; gap: 18px; min-height: 38px; }
.team-background > span:first-child { font-family: Georgia,serif; font-size: 22px; letter-spacing: -.6px; color: #0d0f12; }
.team-background > span:last-child { padding-left: 18px; font-size: 11px; line-height: 1.5; max-width: 135px; color: #5e646e; }
.team-page .team-close { max-width: 1016px; margin: 0 auto 48px; padding: 28px 32px; }
.team-close h2 { font-size: 29px; font-weight: 500; letter-spacing: -.8px; color: #0d0f12; }
.team-close p { max-width: 640px; font-size: 14px; line-height: 1.7; color: #5e646e; margin: 14px 0 22px; }
.team-page .team-close .btn-primary { background: #0d0f12; color: #f7f8fa; border-color: #0d0f12; }
.team-page .team-close .btn-primary:hover { background: #252930; color: #ffffff; border-color: #252930; }
@media(min-width:701px) {
 .team-person-body > p { min-height: 94px; }
 /* Keep experience rows aligned without inventing a second social profile. */
 .team-person-body { display: grid; grid-template-rows: auto auto 1fr auto 32px; align-content: start; }
 .team-person-body > a { grid-row: 5; }
 .team-person-body > .team-experience { grid-row: 4; }
}
@media(max-width:700px) {
 .team-page .team-intro { padding: 106px 24px 28px; }
 .team-intro h1 { letter-spacing: -1.3px; }
 .covenant-home.team-page main > section.team-grid { grid-template-columns: 1fr; padding: 0 24px 32px; gap: 24px; }
 .team-person-body { padding: 20px 8px 10px; }
 .team-company-logos { gap: 20px; flex-wrap: wrap; }
 .team-company-logos img { width: 80px; }
 .team-background { gap: 14px; }
 .team-background > span:first-child { font-size: 20px; }
 .team-background > span:last-child { padding-left: 14px; }
 .team-page .team-close { margin: 0 24px 32px; padding: 26px 0; }
}
