.public-leaders-heading{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:1.5rem}.public-leaders-heading span{color:#9c6b22;font-size:.7rem;letter-spacing:.06em}.public-leaders-heading h2{font-size:clamp(1.3rem,2.5vw,2rem);color:#70162f;margin:.5rem 0;line-height:1.7}.public-leaders-heading p{font-size:.85rem;line-height:1.9;color:#75636b;max-width:650px}.leaders-scope-filters{display:flex;gap:8px;flex-wrap:wrap;margin:1rem 0 1.5rem}.leaders-scope-filters .btn{font-size:.75rem;white-space:normal;min-height:44px}.public-leaders-search{display:grid;grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) auto auto;gap:12px;align-items:end;background:#fff9ef;border:1px solid #e8d7bf;padding:18px;border-radius:14px}.public-leaders-search label{display:grid;gap:7px;font-size:.75rem}.public-leaders-search input,.public-leaders-search select{width:100%;min-width:0;min-height:46px;border:1px solid #dfcbb3;border-radius:9px;background:white;padding:10px;font:inherit}.public-leaders-message{font-size:.76rem;color:#816b71;margin:1.2rem 0;min-height:1.8em}.public-leaders-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:20px}.public-leader-card{display:flex;gap:18px;align-items:flex-start;background:linear-gradient(145deg,#fff,#fffbf3);border:1px solid #eadbc7;border-top:3px solid #8c2040;border-radius:16px;box-shadow:0 10px 28px #5d18300a;padding:22px;min-width:0}.public-leader-card h3{font-size:1.05rem;color:#65132d;line-height:1.9;margin:0 0 10px;word-break:normal;overflow-wrap:normal}.public-leader-card ul{list-style:none;padding:0;margin:0;display:grid;gap:9px;font-size:.75rem;line-height:1.9}.public-leader-card li{border-left:2px solid #d9ad60;padding-left:9px}.public-leader-photo{width:88px;height:117px;flex-shrink:0;background:#f3e7d0;display:flex;align-items:center;justify-content:center;border-radius:11px;overflow:hidden;color:#8b2040;font-size:2rem;border:1px solid #e5cfa7}.public-leader-photo img{width:100%;height:100%;object-fit:cover}.public-leader-photo [hidden]{display:none!important}.leaders-empty{grid-column:1/-1;text-align:center;border:1px dashed #dbc7a8;border-radius:15px;padding:40px 20px;background:#fffaf2}.leaders-empty h3{color:#7a1a36;font-size:1rem}.leaders-empty p{font-size:.8rem;color:#78696c}
@media(max-width:650px){.public-leaders-heading{display:block}.public-leaders-heading>.btn{margin-top:10px}.public-leaders-search{grid-template-columns:1fr 1fr;gap:10px;padding:14px}.public-leaders-search label:first-child{grid-column:1/-1}.public-leaders-search .btn{font-size:.7rem;padding:10px}.public-leader-card{padding:18px;gap:14px}.public-leader-photo{width:70px;height:93px}.public-leader-card h3{font-size:1rem}.public-leader-card ul{font-size:.72rem}.leaders-scope-filters{gap:6px}.leaders-scope-filters .btn{font-size:.68rem}}
@media(prefers-reduced-motion:no-preference){.public-leader-card{animation:leader-reveal .25s ease-out}@keyframes leader-reveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}}

.public-leaders-grid{display:block}.public-leaders-group{margin:0 0 30px}.public-leaders-group-title{font-size:1.1rem;color:#721a36;border-bottom:1px solid #e0c99e;padding-bottom:12px;margin:0 0 18px}.public-leaders-appointments{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:18px}.public-leader-card h4{font-size:1.05rem;line-height:1.9;margin:8px 0 0;color:#65132d;overflow-wrap:anywhere}.public-leader-position{font-size:.75rem;color:#8a5a1e;line-height:1.9;margin:0}.public-leader-card>div:last-child{min-width:0}.public-leader-photo:has(img:not([hidden])){background:#f3e7d0}

/* Compact cards: name first, then designation. Do not stretch a lone card. */
.public-leaders-appointments{grid-template-columns:repeat(auto-fill,minmax(280px,330px));justify-content:start;align-items:start;gap:16px}.public-leader-card{padding:16px;gap:14px;min-height:132px;max-width:330px;width:100%;box-sizing:border-box}.public-leader-photo{width:74px;height:99px}.public-leader-photo img{object-fit:cover;object-position:center top}.public-leader-card h4{margin:0 0 6px;font-size:1rem;line-height:1.7}.public-leader-position{font-size:.72rem;line-height:1.9}.public-leaders-message[hidden]{display:none}.public-leaders-group-title{margin-top:22px}@media(max-width:650px){.public-leaders-appointments{grid-template-columns:minmax(0,1fr)}.public-leader-card{max-width:none;min-height:120px;padding:15px}.public-leader-photo{width:68px;height:91px}}

/* v54: four compact appointment cards per desktop row. */
.public-leaders-appointments{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.public-leader-card{max-width:none;width:100%;min-height:132px}.public-leader-photo{width:66px;height:88px}.public-leader-card h4{font-size:.94rem}.public-leader-position{font-size:.7rem}@media(max-width:1023px){.public-leaders-appointments{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.public-leaders-appointments{grid-template-columns:minmax(0,1fr)}.public-leader-photo{width:68px;height:91px}}

.public-leader-position .town-party-line,.public-leader-position .town-duty-line{display:block}.public-leader-position .town-party-line{margin-bottom:2px}

/* Distinct committee headings, separate from the individual member cards. */
.public-leaders-group-title{display:flex;align-items:center;min-height:52px;padding:13px 18px;margin:24px 0 16px;border:1px solid #68162d;border-left:6px solid #e0ad37;border-radius:10px;background:linear-gradient(110deg,#59152b,#861c40);color:#fff4d2;font-weight:800;font-size:1.05rem;line-height:1.65;box-shadow:0 5px 14px #51152b12;overflow-wrap:anywhere}
.public-leaders-group[data-leader-scope="ward"] .public-leaders-group-title{background:linear-gradient(110deg,#fff0c5,#fff8e8);color:#68172d;border-color:#e4c67b;border-left-color:#861c40}
.public-leaders-group[data-leader-scope="wing"] .public-leaders-group-title{background:linear-gradient(110deg,#65182f,#96314d);border-left-color:#ffd369}
@media(max-width:650px){.public-leaders-group-title{min-height:46px;padding:11px 13px;font-size:.94rem;margin:20px 0 12px;border-left-width:5px}.public-leaders-group{margin-bottom:24px}}
