:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#23362f;background:#f5f6f2;font-size:16px;line-height:1.5;--green:#245441;--muted:#5f6e66;--line:#dce2dc}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #b56817;outline-offset:3px}[hidden]{display:none!important}.masthead{max-width:1180px;margin:auto;padding:44px 28px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.eyebrow{font-size:.8rem;font-weight:750;letter-spacing:.22em;color:var(--green);margin:0 0 8px}h1{font-size:clamp(1.85rem,4vw,2.65rem);letter-spacing:-.045em;line-height:1.15;margin:0}.intro{color:var(--muted);margin:12px 0 0}.badge{font-size:.8rem;background:#e7ede5;color:var(--green);padding:8px 14px;border-radius:24px;white-space:nowrap}main{max-width:1124px;margin:0 auto;background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;min-height:440px}.tabs{display:flex;background:#edf1eb;border-bottom:1px solid var(--line);padding:8px;gap:8px}.tabs button{flex:1;border:0;border-radius:8px;padding:13px 10px;background:transparent;font-weight:650;color:#44584c;min-height:48px}.tabs button[aria-selected=true]{background:var(--green);color:white;box-shadow:0 2px 5px #1632231c}.toolbar{padding:24px 26px 0}.toolbar label{display:block;font-size:.85rem;font-weight:650;margin-bottom:8px}.search-wrap{display:flex;gap:10px}.search-wrap input{width:100%;min-width:0;min-height:48px;border:1px solid #bfcac0;border-radius:8px;padding:11px 14px;background:#fcfdfb}.search-wrap button,#retry{border:1px solid var(--line);border-radius:8px;padding:8px 14px;background:white;color:var(--green);min-height:44px}.summary{padding:0 26px;display:flex;align-items:center;gap:14px;color:var(--muted);font-size:.85rem;min-height:62px}.summary p{margin:16px 0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left}th{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;font-weight:650;color:var(--muted);padding:12px 22px;background:#f6f8f4;border-block:1px solid var(--line)}td{padding:15px 22px;border-bottom:1px solid #eef1eb;font-size:.9rem;overflow-wrap:anywhere}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcf9}td:first-child{font-weight:700;color:var(--green);white-space:nowrap}a{color:var(--green);text-underline-offset:3px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px;padding:0 26px 28px}.person-card{border:1px solid var(--line);border-radius:12px;overflow:hidden}.portrait{aspect-ratio:1/1;background:#e8eee5;display:grid;place-items:center;overflow:hidden}.portrait img{width:100%;height:100%;min-width:0;min-height:0;object-fit:contain}.initials{font-size:2.3rem;color:#53715c}.card-body{padding:16px}.card-body h2{font-size:1rem;margin:0 0 6px}.card-body p{font-size:.85rem;color:var(--muted);margin:3px 0}.groups{padding:0 26px 28px;display:grid;gap:12px}.groups details{border:1px solid var(--line);border-radius:9px;overflow:hidden}.groups summary{padding:15px 18px;font-weight:650;cursor:pointer;min-height:48px;background:#f7f9f4}.count{font-size:.8rem;border-radius:20px;background:#e2eadf;padding:3px 9px;margin-left:8px;font-weight:500}.empty{text-align:center;padding:40px 24px;color:var(--muted)}footer{max-width:1180px;margin:auto;padding:22px 28px;display:flex;justify-content:space-between;gap:16px;font-size:.75rem;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(max-width:640px){.masthead{padding:28px 16px 24px}.badge{display:none}main{margin:0 10px;border-radius:12px}.tabs{gap:3px;padding:5px}.tabs button{font-size:.8rem;padding:11px 6px}.toolbar{padding:20px 16px 0}.summary{padding:0 16px}.cards{padding:0 16px 20px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.groups{padding:0 16px 20px}.card-body{padding:12px}.card-body h2{font-size:.9rem}table,tbody,tr,td{display:block}thead{display:none}tr{padding:12px 16px;border-bottom:1px solid var(--line)}td{border:0;padding:4px 0;display:grid;grid-template-columns:70px minmax(0,1fr);gap:10px}td:before{content:attr(data-label);font-size:.78rem;font-weight:500;color:var(--muted)}.groups tr{padding:12px}footer{padding:20px 16px;flex-direction:column;gap:4px}}

.brand-logo{display:inline-block;background:var(--green);padding:14px 20px;border-radius:10px;margin-bottom:20px;max-width:100%}.brand-logo img{display:block;width:240px;max-width:100%;height:auto}
@media(max-width:640px){.brand-logo img{width:200px}}

/* Contact content stays readable on phones and wide screens. */
[hidden] { display: none !important; }
.info-panel { max-width: 48rem; padding: 1.25rem; line-height: 1.65; }
.info-panel h2, .info-panel h3 { line-height: 1.3; }
.info-panel li { margin-block: .65rem; }
.info-panel a { overflow-wrap: anywhere; }
.tabs { flex-wrap: wrap; }
