#firm .lawyer-grid{display:flex;gap:28px;align-items:stretch}.team-member{flex:1 1 0;min-width:0;position:relative;display:flex;flex-direction:column;transform:none!important;border:0!important;padding:0}.team-portrait{min-width:0}.team-reveal{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;color:inherit}.team-reveal:focus-visible{outline:2px solid var(--olive);outline-offset:5px}.team-reveal img{display:block;width:100%;height:280px!important;object-fit:contain;margin-bottom:22px!important;pointer-events:none}.team-member h3{font-size:25px!important;line-height:1.4!important}.team-member .team-role{font-size:15px!important;line-height:1.7;margin:8px 0 0}.team-info{padding-top:24px}.team-info .eyebrow{font-size:12px;line-height:1.8;letter-spacing:1px;margin-bottom:20px}.team-info p{font-size:16px!important;line-height:1.85!important;margin:0 0 25px!important;color:var(--ink)!important}.team-info a{display:inline-block}.team-member img{filter:saturate(.7)}
@media(min-width:1001px) and (hover:hover) and (pointer:fine){
 #firm .lawyer-grid{gap:24px;min-height:440px}.team-member{overflow:hidden;transition:flex-grow .4s ease;flex-grow:1;display:grid;grid-template-columns:minmax(0,1fr);align-content:start}.team-info{display:none}.team-member.is-active{flex-grow:2.8;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;overflow:visible}.team-member.is-active .team-info{display:block;padding-top:28px;animation:teamCopyIn .32s ease}.team-member[data-info-side="left"].is-active .team-info{grid-column:1;grid-row:1}.team-member[data-info-side="left"].is-active .team-portrait{grid-column:2;grid-row:1}.team-member[data-info-side="right"].is-active .team-info{grid-column:2;grid-row:1}.team-member[data-info-side="right"].is-active .team-portrait{grid-column:1;grid-row:1}.lawyer-grid.has-active .team-member:not(.is-active){flex-grow:.8}.lawyer-grid.has-active .team-member:not(.is-active) h3{font-size:20px!important}.lawyer-grid.has-active .team-member:not(.is-active) .team-role{font-size:13px!important}.team-member.is-active .team-reveal img{filter:saturate(1)}
}
@keyframes teamCopyIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1000px),(hover:none),(pointer:coarse){#firm .lawyer-grid{display:grid;grid-template-columns:1fr;gap:54px;max-width:620px;margin:0 auto}.team-member{display:block}.team-reveal img{height:320px!important}.team-info{display:block;padding:25px 0 0;border-bottom:1px solid var(--line);padding-bottom:30px}.team-info .eyebrow{display:none}.team-scroll-ready .team-member:not(.is-in-view) .team-info{opacity:0;transform:translateY(12px)}.team-info{transition:opacity .4s ease,transform .4s ease}.team-member:focus-within .team-info{opacity:1!important;transform:none!important}}
@media(prefers-reduced-motion:reduce){.team-member,.team-info{transition:none!important;animation:none!important;transform:none!important}.team-info{opacity:1!important}}

/* Preserve the original portrait crop and align transparent cutouts. */
.team-reveal img{object-position:center bottom;filter:none}.team-member.is-active .team-reveal img{filter:none}

/* Keep portrait geometry stable as cards expand; shrink every inactive portrait equally. */
@media(min-width:1001px) and (hover:hover) and (pointer:fine){
 #firm .lawyer-grid{--team-portrait-size:clamp(180px,22vw,280px)}
 .team-reveal{display:flex;justify-content:center;align-items:flex-end;height:280px;margin-bottom:22px}
 .team-reveal img{flex:0 0 var(--team-portrait-size);width:var(--team-portrait-size);max-width:none;height:var(--team-portrait-size)!important;margin:0!important;transform:scale(1);transform-origin:center bottom;transition:transform .4s ease}
 .lawyer-grid.has-active .team-member:not(.is-active) .team-reveal img{transform:scale(.8)}
 .lawyer-grid.has-active .team-member.is-active .team-reveal img{transform:scale(1)}
}
@media(prefers-reduced-motion:reduce){.team-reveal img{transition:none!important}}
@media(min-width:1001px) and (hover:hover) and (pointer:fine){
 .team-member{overflow:visible}
 .team-reveal{height:300px}
}
