.member-directory{padding:55px 0 80px;background:#fffdf7;min-height:55vh}
.member-directory-heading{text-align:center;margin:0 auto 40px;max-width:750px}
.member-directory-heading .eyebrow{color:#73283c;margin-bottom:10px}
.member-directory-heading h1{font-family:Georgia,serif;font-size:clamp(32px,4vw,48px);line-height:1.2;color:#642439;margin:0 0 14px}
.member-directory-heading p{margin:0;color:#555c52}
.member-directory-heading .member-date-key{font-size:13px;margin-top:10px}
.member-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:32px 18px;list-style:none;padding:0;margin:0}
.member-card{min-width:0;scroll-margin-top:140px}
.member-card figure{margin:0}
.member-portrait{aspect-ratio:4/5;border:2px solid #73283c;border-radius:12px;overflow:hidden;background:#eeeae0}
.member-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.member-photo-placeholder{height:100%;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(145deg,#f5f0e5,#dedbcc)}
.member-photo-placeholder svg{width:78%;height:86%;fill:#aaa897}
.member-card figcaption{text-align:center;padding:12px 3px 0}
.member-card h2{font-family:Georgia,serif;font-size:13px;font-weight:700;line-height:1.4;letter-spacing:0;margin:0;color:#28271f;overflow-wrap:anywhere}
.member-card time{display:block;font-family:Georgia,serif;font-size:15px;font-weight:700;color:#555044;margin-top:5px;line-height:1.4}
.members-empty{text-align:center;padding:45px 20px;border:1px solid #dfd9cb;border-radius:12px;color:#555c52}
@media(max-width:1100px){.member-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.member-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 14px}}
@media(max-width:540px){.member-directory{padding:35px 0 55px}.member-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.member-card h2{font-size:13px}.member-card time{font-size:14px}}
@media(max-width:300px){.member-grid{grid-template-columns:1fr}}

.member-search{max-width:720px;margin:0 auto 30px}
.member-search label{display:block;font-size:14px;font-weight:600;color:#484d43;margin-bottom:8px}
.member-search-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.member-search input{flex:1;min-width:180px;width:100%;padding:13px 14px;border:1px solid #bdbbad;border-radius:5px;background:white;color:#28271f;font:inherit}
.member-search input:focus-visible{outline:2px solid #73283c;outline-offset:2px}
.member-search button{padding:14px 22px}
.member-search-clear{font-size:14px;text-decoration:underline;text-underline-offset:3px}
.member-search-summary{text-align:center;margin:0 0 25px;color:#555c52;font-size:14px}
@media(max-width:400px){.member-search input{flex-basis:100%}}

.member-search-status{min-height:1.7em;text-align:center;color:#555c52;font-size:14px;margin:0 0 18px}
#member-results{transition:opacity .15s}
#member-results.is-loading{opacity:.5}

/* Compact directory header and live search toolbar. */
.member-directory{padding-top:24px}
.member-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) minmax(160px,.65fr) minmax(320px,1.3fr);align-items:center;gap:24px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #dfd9cb}
.member-directory-heading{text-align:left;max-width:none;margin:0}
.member-directory-heading .eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:4px;line-height:1.4}
.member-directory-heading h1{font-size:28px;margin:0 0 3px}
.member-directory-heading p{font-size:13px;line-height:1.5}
.member-toolbar>.member-date-key{font-size:12px;line-height:1.6;color:#555c52;margin:0}
.member-toolbar .member-search{max-width:none;width:100%;margin:0}
.member-toolbar .member-search label{font-size:12px;margin-bottom:5px}
.member-toolbar .member-search-controls{gap:8px}
.member-toolbar .member-search input{padding:9px 11px;font-size:13px;min-width:150px}
.member-toolbar .member-search button{padding:10px 15px;font-size:12px}
.member-search-status:empty{display:none}
.member-search-status:not(:empty){min-height:0;margin-bottom:12px}
.member-search-summary{margin-bottom:15px}
@media(max-width:1000px){.member-toolbar{grid-template-columns:1fr 1.4fr;gap:12px 24px}.member-toolbar>.member-date-key{grid-column:1;grid-row:2}.member-toolbar .member-search{grid-column:2;grid-row:1/3}}
@media(max-width:640px){.member-directory{padding-top:20px}.member-toolbar{grid-template-columns:1fr;gap:10px;margin-bottom:20px;padding-bottom:16px}.member-toolbar>.member-date-key,.member-toolbar .member-search{grid-column:auto;grid-row:auto}.member-directory-heading h1{font-size:26px}.member-toolbar .member-search input{flex-basis:0}.member-search-clear{font-size:12px}}
