/* Selected modern consultation design, in deep burgundy and charcoal. */
.page-team{--team-background:#181114;--team-surface:#271f22;--team-foreground:#f5f5f5;--team-muted:#c0c0c0;--team-accent:#c62828;--team-border:#2f2f2f}
.criminal-team-shell{max-width:1152px}
.criminal-team-feature{background:var(--team-background);color:var(--team-foreground);padding:0 0 72px}
.criminal-team-profile{position:relative;display:grid;grid-template-columns:380px minmax(0,1fr);align-items:center;gap:64px;max-width:1200px;padding:36px;margin-top:-48px;margin-inline:auto;background:var(--team-surface);border:1px solid var(--team-border);border-radius:18px;box-shadow:0 18px 44px #00000030}
.criminal-team-colleagues{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:1200px;margin:24px auto 0}
.criminal-team-colleague{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #393033;border-radius:12px;background:#21191c}
.criminal-team-colleague>img{display:block;flex:0 0 247px;width:100%;height:247px;min-height:0;object-fit:contain;object-position:center center;background:#d9e2ea;transform:scale(1.08);transform-origin:center center}
.criminal-team-colleague-copy{position:relative;z-index:1;display:flex;flex:0 0 136px;flex-direction:column;justify-content:center;min-width:0;padding:clamp(12px,1.7vw,22px);background:#21191c}
.criminal-team-colleague-identity{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px}
.criminal-team-colleague h3{margin:0 0 5px;color:#f5f5f5;font-size:clamp(19px,2vw,26px);line-height:1.45;letter-spacing:-.7px}
.criminal-team-colleague-role{margin:0;color:#ef4444;font-size:14px;line-height:1.5}
.criminal-team-colleague-fields{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:10px 0 0;padding:0}
.criminal-team-colleague-fields li{padding:4px 9px;border:1px solid var(--team-accent);border-radius:5px;background:var(--team-accent);color:#fff;font-size:12px;line-height:1.4;white-space:nowrap}
.criminal-team-portrait{position:relative;overflow:hidden;align-self:start;isolation:isolate;width:100%;margin:0;background:#322b2e;border-radius:9px}
.criminal-team-portrait>a{display:block}
.criminal-team-portrait img{display:block;width:100%;height:auto;aspect-ratio:800/974;object-fit:cover;object-position:center top;filter:brightness(.87) saturate(.78)}
.criminal-team-portrait figcaption{position:absolute;inset:auto 0 0;pointer-events:none;padding:60px 24px 22px;background:linear-gradient(transparent,#201719d9);color:#f5f5f5;font-size:12px;line-height:1.5;letter-spacing:.16em}
.criminal-team-copy{min-width:0;letter-spacing:-.025em}
.criminal-team-kicker{font-size:14px;line-height:1.6;color:#aeaeae;margin:0 0 12px}
.criminal-team-copy h2{font-size:48px;line-height:1.3;letter-spacing:-.045em;font-weight:700;color:#f5f5f5;margin:0}
.criminal-team-copy h2 a:hover{color:#ef4444}
.criminal-team-identity{display:flex;align-items:baseline;flex-wrap:wrap;gap:16px}
.criminal-team-role{font-size:18px;line-height:1.5;font-weight:500;color:#ef4444;margin:0}
.criminal-team-intro{font-size:18px;line-height:1.9;color:var(--team-muted);margin:26px 0 0}
.criminal-team-fields{margin-top:28px;padding-top:21px;border-top:1px solid #363636}
.criminal-team-fields h3{font-size:13px;line-height:1.5;font-weight:400;color:#ababab;margin:0 0 12px}
.criminal-team-fields ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.criminal-team-fields li{font-size:13px;line-height:1.5;padding:5px 13px;border:1px solid var(--team-accent);border-radius:5px;background:var(--team-accent);color:#fff}
.criminal-team-consult{display:flex;width:240px;max-width:100%;justify-content:space-between;align-items:center;gap:20px;min-height:56px;margin-top:28px;padding:15px 21px;border-radius:7px;background:var(--team-accent);color:#ffffff;font-size:16px;line-height:1.5;font-weight:600}
.criminal-team-consult:hover{background:#aa2020;color:#fff}
.criminal-team-consult svg{width:23px;height:23px;flex:none}
.criminal-team-contact{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:24px;padding:26px 36px;background:#271f22;border:1px solid #313131;border-radius:12px}
.criminal-team-contact>a{display:flex;align-items:center;gap:20px;min-width:0;min-height:52px;color:#f5f5f5}
.criminal-team-contact>a+a{border-left:1px solid #343434;padding-left:36px}
.criminal-team-contact>a:hover{color:#cfcfcf}
.criminal-team-contact svg{width:23px;height:23px;flex:none;color:#9c9c9c}
.criminal-team-contact span{display:flex;flex-direction:column;gap:6px;min-width:0}
.criminal-team-contact small{font-size:13px;line-height:1.5;color:#acacac}
.criminal-team-contact b{font-size:18px;line-height:1.5;font-weight:500;letter-spacing:0;overflow-wrap:anywhere}
.criminal-team-feature :is(a,button):focus-visible{outline-color:#b2b2b2}
.criminal-team-portrait>a:focus-visible{outline-offset:-5px}
.civil-member-roster{padding:72px 0 147px;background:#fff}
.civil-member-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:7px;background:#f5f5f5;border-radius:12px;margin:0 0 48px}
.civil-member-category{position:relative;min-width:0;text-align:center}
.civil-member-category>button{display:block;width:100%;min-height:52px;border:0;border-radius:8px;background:transparent;color:#494949;font-size:16px;font-weight:600;padding:12px 10px}
.civil-member-category>button:hover:not([aria-pressed=true]){background:#fff9;color:var(--footer-bar)}
.civil-member-category>button[aria-pressed=true]{background:var(--footer-bar);color:#fff}
.civil-member-category>button:focus-visible{outline:2px solid var(--brand-accent);outline-offset:1px}
.civil-member-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:52px 48px}
.civil-roster-card{min-width:0;display:block;background:#fff;scroll-margin-top:30px}
.civil-roster-card[hidden]{display:none}
.civil-roster-card .member-photo{width:100%;height:auto;aspect-ratio:800/974;background:#e3e3e3;overflow:hidden}
.civil-roster-card .member-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.civil-roster-card .member-meta{padding:22px 62px 0 0;position:relative;text-align:left}
.civil-roster-card .member-meta h3{font-size:24px;letter-spacing:-1px;line-height:1.4;color:#000;margin:0 0 8px;font-weight:700}
.civil-roster-card .member-meta h3 small{display:inline;font-size:14px;margin-left:6px;color:#c62828;font-weight:700}
.civil-roster-card .member-meta p{display:flex;flex-wrap:wrap;gap:3px 8px;font-size:14px;letter-spacing:-1px;line-height:1.7;color:#767676;margin:0;min-height:33px}
.civil-roster-card .member-field{display:inline-block;white-space:nowrap}
.civil-roster-card .member-meta>svg{position:absolute;display:block;right:4px;top:30px;width:30px;height:30px;color:#111}
.member-filter-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(min-width:768px) and (max-width:1360px){.criminal-team-shell{padding-right:112px}.criminal-team-profile{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:38px;padding:30px}.criminal-team-intro br{display:none}}
@media(max-width:991px){.criminal-team-profile{gap:26px;padding:26px}.criminal-team-copy h2{font-size:40px}.criminal-team-kicker{font-size:12px}.criminal-team-role{font-size:16px}.criminal-team-intro{font-size:16px;margin-top:20px}.criminal-team-contact{gap:20px;padding:24px 26px}.criminal-team-contact>a+a{padding-left:24px}.criminal-team-contact b{font-size:16px}.civil-member-grid{gap:40px 28px}.civil-roster-card .member-meta{padding-right:32px}.civil-roster-card .member-meta h3{font-size:22px}.civil-roster-card .member-meta h3 small{font-size:12px}.civil-roster-card .member-meta>svg{width:22px}}
@media(max-width:767px){
 .criminal-team-shell{padding-inline:20px}.criminal-team-feature{padding-bottom:44px}.criminal-team-profile{grid-template-columns:minmax(0,1fr);gap:30px;padding:24px;margin-top:-36px;border-radius:14px}.criminal-team-colleagues{grid-template-columns:1fr;gap:12px;margin-top:18px}.criminal-team-colleague{border-radius:10px}.criminal-team-colleague>img{flex:0 0 247px;width:100%;height:247px;aspect-ratio:auto}.criminal-team-colleague-copy{padding:18px}.criminal-team-colleague h3{font-size:21px}.criminal-team-colleague-role{font-size:13px}.criminal-team-colleague-fields{gap:5px;margin-top:8px}.criminal-team-colleague-fields li{padding:4px 8px;font-size:11px}.criminal-team-portrait{max-width:340px;justify-self:center}.criminal-team-portrait figcaption{font-size:10px;padding:46px 18px 18px}.criminal-team-copy{width:100%;max-width:400px;justify-self:center}.criminal-team-kicker{font-size:12px;margin-bottom:10px}.criminal-team-copy h2{font-size:36px}.criminal-team-role{font-size:16px}.criminal-team-identity{gap:12px}.criminal-team-intro{font-size:16px;margin-top:21px}.criminal-team-intro br{display:none}.criminal-team-fields{padding-top:20px;margin-top:23px}.criminal-team-fields h3{font-size:12px}.criminal-team-fields li{font-size:12px}.criminal-team-consult{font-size:15px;margin-top:24px;min-height:54px;padding:15px 17px}.criminal-team-contact{grid-template-columns:minmax(0,1fr);padding:24px;gap:22px;margin-top:18px}.criminal-team-contact>a{gap:17px}.criminal-team-contact>a+a{border-left:0;border-top:1px solid #343434;padding:22px 0 0}.criminal-team-contact small{font-size:12px}.criminal-team-contact b{font-size:16px}.civil-member-roster{padding:44px 0 70px}.civil-member-roster>.container{padding-inline:20px}.civil-member-categories{margin-bottom:35px;gap:3px;padding:5px;border-radius:10px}.civil-member-category>button{font-size:11px;min-height:46px;padding:8px 1px;white-space:nowrap;border-radius:7px}.civil-member-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 16px}
 .civil-roster-card .member-photo{border-radius:8px}
 .civil-roster-card .member-meta{padding:12px 0 0;text-align:left}
 .civil-roster-card .member-meta h3{display:flex;align-items:baseline;gap:6px;font-size:18px;letter-spacing:-.04em;margin-bottom:6px;white-space:nowrap}
 .civil-roster-card .member-meta h3 small{display:inline;font-size:12px;line-height:1.5;margin:0}
 .civil-roster-card .member-meta p{font-size:12px;letter-spacing:-.025em;line-height:1.7;min-height:0;white-space:normal;overflow:visible;gap:3px 6px}
 .civil-roster-card .member-field{display:inline}
 .civil-roster-card .member-field-detail{display:none}
 .civil-roster-card .member-meta>svg{display:none}
}

.criminal-team-colleague:focus-visible { outline: 3px solid #ef4444; outline-offset: 3px; }
