/* One editorial plate: equal images, shared baseline, no individual card shells.
   Source portraits remain untouched. A replacement can use any aspect ratio;
   --team-portrait-position is the optional focal-point adjustment on a figure. */
.costello-system .team-portraits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.3vw,32px);padding-block:24px;border-block:1px solid var(--c-rule);margin:0 0 64px}
.costello-system .team-portrait{min-width:0;margin:0}
.costello-system .team-portrait__media{aspect-ratio:4/5;overflow:hidden;background:var(--c-canvas-alt)}
.costello-system .team-portrait__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--team-portrait-position,50% 15%);opacity:1;filter:none}
.costello-system .team-portrait figcaption{padding-top:18px;color:var(--c-ink)}
.costello-system .team-portrait__name{display:block;font:var(--fw-serif) var(--fs-card)/var(--lh-card) var(--ff-serif);letter-spacing:var(--ls-display)}
.costello-system .team-portrait__role{display:block;margin-top:8px;font:500 11px/1.6 var(--ff-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--c-ink-muted)}
/* About: image and copy belong to the same equal-width person track. */
.costello-system .leadership-grid{margin:40px 0 0;align-items:start}
.costello-system .leadership-person{scroll-margin-top:116px}
.costello-system .leadership-person .team-portrait__role{margin:20px 0 10px}
.costello-system .leadership-person .team-portrait__name{margin:0;color:var(--c-ink)}
.costello-system .leadership-person .about2-body{margin:20px 0 0;max-width:none;color:var(--c-ink-muted)}
.costello-system .leadership-person .proof-points{margin:24px 0 0;padding-left:18px;font:400 var(--fs-small)/var(--lh-body) var(--ff-sans);color:var(--c-ink-muted)}
.costello-system .leadership-person .proof-points li+li{margin-top:10px}
.costello-system .leadership-person .about2-link{margin-top:24px}
/* A small paired image break inside the existing attorney introduction. */
.costello-system .team-portraits--compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:340px;margin:24px 0 0;padding-block:16px}
.costello-system .team-portraits--compact .team-portrait__media{aspect-ratio:4/5}
.costello-system .team-portraits--compact figcaption{padding-top:10px}
.costello-system .team-portraits--compact .team-portrait__name{font-size:var(--fs-name)}
.costello-system .team-portraits--compact .team-portrait__role{font-size:10px;letter-spacing:.06em}
@media(min-width:1100px){
 .home-team-intro .home-team-grid{grid-template-columns:1fr 300px 1.1fr;gap:clamp(24px,3vw,48px);align-items:center}
 .home-team-intro .home-team-heading{display:contents}
 .costello-system .team-portraits--compact{margin:0}
}
@media(max-width:899px){
 .costello-system .leadership-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}
}
@media(max-width:600px){
 .costello-system .leadership-grid{grid-template-columns:1fr}
 .costello-system .leadership-person{width:100%;max-width:440px;margin-inline:auto}
}
