/* Local registry styles only. Portraits stay compact at every viewport size. */
.akcm { --akcm-accent:#1d6270; --akcm-ink:#183741; --akcm-border:#e0e8eb; width:100%; margin:0 0 28px; color:#263b43; font-family:inherit; font-size:15px; line-height:1.55; }
.akcm, .akcm * { box-sizing:border-box; }
.akcm.akcm--group { padding:24px; background:#f5f8f9; border:1px solid var(--akcm-border); border-radius:16px; }
.akcm .akcm__group-heading { display:flex; align-items:flex-start; gap:14px; margin:0 0 22px; padding:0; }
.akcm .akcm__number { flex:0 0 38px; min-height:38px; display:flex; align-items:center; justify-content:center; background:var(--akcm-accent); border-radius:9px; color:#fff; font-size:15px; font-weight:700; padding:7px; }
.akcm .akcm__group-title { margin:0; padding:3px 0 0; color:var(--akcm-ink); font-family:inherit; font-size:22px; line-height:1.4; font-weight:700; text-transform:none; overflow-wrap:anywhere; }
.akcm .akcm__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:0; }
.akcm.akcm--cols-1 .akcm__grid { grid-template-columns:minmax(0,1fr); }
.akcm.akcm--cols-2 .akcm__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.akcm.akcm--cols-4 .akcm__grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.akcm .akcm__card { display:flex; align-items:flex-start; gap:16px; min-width:0; margin:0; padding:20px; background:#fff; border:1px solid var(--akcm-border); border-radius:12px; box-shadow:0 2px 8px #18374104; }
.akcm .akcm__portrait { flex:0 0 72px; display:block; width:72px; height:90px; margin:0; padding:0; border-radius:8px; background:#eaf0f2; overflow:hidden; text-decoration:none; }
.akcm .akcm__photo { display:block; width:100%; height:100%; max-width:100%; margin:0; padding:0; border:0; border-radius:0; object-fit:cover; object-position:center top; }
.akcm .akcm__placeholder { display:flex; height:100%; align-items:center; justify-content:center; color:#697d87; font-size:36px; }
.akcm .akcm__body { flex:1 1 0; padding:0; min-width:0; }
.akcm .akcm__name { margin:0 0 7px; padding:0; color:var(--akcm-ink); font-family:inherit; font-size:17px; font-weight:700; line-height:1.4; overflow-wrap:anywhere; text-transform:none; }
.akcm .akcm__name a { color:inherit; text-decoration:none; border:0; }
.akcm .akcm__name a:hover { color:var(--akcm-accent); text-decoration:underline; }
.akcm a:focus-visible { outline:3px solid var(--akcm-accent); outline-offset:3px; }
.akcm p.akcm__role { margin:0 0 8px; padding:0; color:var(--akcm-accent); font-size:12px; font-weight:600; line-height:1.5; }
.akcm p.akcm__job { margin:0; padding:0; color:#52656e; font-size:13px; font-weight:400; line-height:1.6; overflow-wrap:anywhere; }
.akcm .akcm__card--leader { grid-column:1/-1; align-items:center; padding:20px 24px; background:#fff; border-left:4px solid var(--akcm-accent); }
.akcm .akcm__card--leader .akcm__portrait { flex-basis:88px; width:88px; height:110px; }
.akcm .akcm__card--leader .akcm__name { font-size:21px; }
.akcm .akcm__card--leader .akcm__job { max-width:820px; font-size:14px; }
.akcm.akcm--chair { margin-bottom:36px; padding:28px; background:#edf4f5; border:1px solid #d3e3e7; border-radius:16px; }
.akcm.akcm--chair .akcm__grid { grid-template-columns:minmax(0,1fr); }
.akcm.akcm--chair .akcm__card { align-items:center; padding:0; gap:26px; border:0; border-radius:0; background:transparent; box-shadow:none; }
.akcm.akcm--chair .akcm__portrait { flex-basis:112px; width:112px; height:140px; border-radius:10px; }
.akcm.akcm--chair .akcm__name { font-size:26px; }
.akcm.akcm--chair .akcm__role { font-size:14px; }
.akcm.akcm--chair .akcm__job { font-size:15px; }
.akcm .akcm__languages { display:flex; flex-wrap:wrap; gap:16px; margin:0 0 24px; }
.akcm .akcm__languages a { color:var(--akcm-accent); text-decoration:underline; }
.akcm .akcm__languages a[aria-current] { font-weight:700; }
.akcm .akcm__profile-layout { display:flex; align-items:flex-start; gap:28px; padding:28px; border:1px solid var(--akcm-border); border-radius:14px; background:#f5f8f9; }
.akcm.akcm--profile .akcm__portrait { flex-basis:128px; width:128px; height:160px; border-radius:10px; }
.akcm.akcm--profile .akcm__name { font-size:23px; }
.akcm.akcm--profile .akcm__role, .akcm.akcm--profile .akcm__job { font-size:15px; }
@media(max-width:1100px) { .akcm .akcm__grid, .akcm.akcm--cols-4 .akcm__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) {
 .akcm.akcm--group, .akcm.akcm--chair { padding:18px; border-radius:12px; }
 .akcm .akcm__grid, .akcm.akcm--cols-2 .akcm__grid, .akcm.akcm--cols-4 .akcm__grid { grid-template-columns:minmax(0,1fr); }
 .akcm .akcm__group-title { font-size:18px; }
 .akcm .akcm__group-heading { gap:10px; margin-bottom:16px; }
 .akcm .akcm__number { flex-basis:32px; min-height:32px; font-size:13px; }
 .akcm .akcm__card, .akcm .akcm__card--leader { padding:16px; gap:14px; align-items:flex-start; }
 .akcm .akcm__portrait { flex-basis:64px; width:64px; height:80px; }
 .akcm .akcm__card--leader .akcm__portrait { flex-basis:72px; width:72px; height:90px; }
 .akcm .akcm__card--leader .akcm__name { font-size:18px; }
 .akcm.akcm--chair .akcm__portrait { flex-basis:80px; width:80px; height:100px; }
 .akcm.akcm--chair .akcm__card { gap:16px; align-items:flex-start; }
 .akcm.akcm--chair .akcm__name { font-size:20px; }
 .akcm.akcm--chair .akcm__role, .akcm.akcm--chair .akcm__job { font-size:13px; }
 .akcm .akcm__profile-layout { flex-direction:column; gap:20px; padding:20px; }
 .akcm.akcm--profile .akcm__portrait { flex:0 0 140px; width:112px; height:140px; }
}
