.staff-section-head{display:flex;align-items:center;justify-content:space-between;gap:40px}.staff-section-head .section-description{max-width:720px;margin-top:20px}.staff-region-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.staff-region-buttons a{border:1px solid var(--line);border-radius:4px;padding:8px 20px;color:var(--green);background:#fff}.staff-region-buttons a:hover{background:#eaf4ef}.staff-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:24px 0}.staff-card{border:1px solid var(--line);background:#fff;border-radius:4px;overflow:hidden}.staff-card .staff-photo{width:100%;height:320px;object-fit:cover;object-position:center 28%;background:#f1f5ef}.staff-card-body{padding:22px}.staff-card h3{font-family:var(--serif);font-size:24px}.staff-card p{margin:9px 0;color:var(--muted)}.staff-number{font:600 14px/1.5 ui-monospace,monospace;color:var(--green)}.staff-state{display:inline-block;background:#eaf4ef;color:#005640;border:1px solid #c8e0d2;border-radius:3px;padding:3px 10px;font-size:12px}.staff-state.inactive{background:#fff2ea;color:#924526;border-color:#edc9b7}.staff-card .staff-link{display:inline-block;color:var(--green);font-weight:600;margin-top:15px}.staff-empty{grid-column:1/-1;padding:30px;background:var(--warm);border:1px solid var(--line);color:var(--muted)}.staff-note{color:var(--muted);font-size:13px;max-width:950px}.staff-hero{background:var(--warm);padding:60px 0}.staff-check{max-width:760px;padding:28px;background:var(--warm);border:1px solid var(--line);border-radius:4px}.staff-check>label{display:block;font-weight:600;margin-bottom:10px}.staff-check>div{display:flex;gap:12px}.staff-check input,.staff-list-head select{min-width:0;border:1px solid var(--line);border-radius:4px;background:#fff;padding:12px 14px;font:inherit;color:var(--ink)}.staff-check input{flex:1;width:100%;text-transform:uppercase}.staff-check p{font-size:13px;color:var(--muted);margin-top:12px}.staff-check input:focus-visible,.staff-list-head select:focus-visible{outline:3px solid #bc8229;outline-offset:3px}.staff-list-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:60px}.staff-list-head label{display:flex;align-items:center;gap:12px}.staff-result{margin-top:24px;padding:28px;border:1px solid var(--line);background:#f8faf7}.staff-result .staff-card{max-width:360px;margin:20px 0}.staff-result h2{font-size:28px}.staff-result.error{border-color:#edc9b7;background:#fff8f2}.staff-result .staff-qr{width:150px;height:150px;background:white;padding:8px}.staff-result .checked-at{font-size:12px;color:var(--muted);margin-top:18px}.staff-verification-note{margin-top:45px;padding:26px;border-top:1px solid var(--line)}.staff-verification-note p{color:var(--muted);margin:14px 0;max-width:900px}.staff-verification-note a{color:var(--green);font-weight:600}
@media(max-width:1000px){.staff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-section-head{align-items:flex-start;flex-direction:column;gap:22px}}
@media(max-width:600px){.staff-grid{grid-template-columns:1fr;gap:20px}.staff-card .staff-photo{height:360px}.staff-list-head{align-items:flex-start;flex-direction:column}.staff-list-head h2{font-size:28px}.staff-check{padding:20px}.staff-check>div{flex-direction:column}.staff-check .button{justify-content:center}.staff-result{padding:20px}.staff-result h2{font-size:24px}.staff-hero{padding:42px 0}.staff-verification-note{padding:22px 0}.staff-section-head h2{font-size:30px}}
.staff-photo-placeholder{height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:linear-gradient(145deg,#f3f7f2,#e7efe8);color:#536662;border-bottom:1px solid var(--line)}.staff-photo-placeholder span{font-family:var(--serif);font-size:28px}.staff-photo-placeholder small{font-size:13px}.staff-state.pending{background:#f2f4f0;color:#596960;border-color:#dce6e1}@media(max-width:600px){.staff-photo-placeholder{height:360px}}

/* Compact regional directory: 5 columns x 3 rows on desktop. */
.staff-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.staff-card .staff-photo,.staff-photo-placeholder{height:150px}.staff-card-body{padding:14px}.staff-card h3{font-size:19px}.staff-card p{font-size:12px;margin:7px 0}.staff-state{font-size:10px;padding:2px 6px}.staff-number{font-size:11px}.staff-card .staff-link{font-size:12px;margin-top:10px}.staff-photo-placeholder span{font-size:21px}.staff-photo-placeholder small{font-size:11px}.staff-vacancy{border-style:dashed;background:#fbfcfa}.staff-vacancy .staff-photo-placeholder{background:#f3f6f1}.staff-vacancy svg{width:40px;height:40px;fill:none;stroke:#a4b9ad;stroke-width:1.5}.staff-vacancy h3{color:#6b7d73}.staff-vacancy p{color:#839087}.staff-list-pager{display:flex;align-items:center;justify-content:center;gap:18px;margin:24px 0}.staff-list-pager button{border:1px solid var(--line);border-radius:4px;background:#fff;padding:8px 18px;color:var(--green);font:inherit;cursor:pointer}.staff-list-pager button:disabled{opacity:.4;cursor:default}.staff-result .staff-card{max-width:320px}.staff-result .staff-photo,.staff-result .staff-photo-placeholder{height:280px}.staff-result .staff-card-body{padding:22px}.staff-result .staff-card h3{font-size:24px}
@media(max-width:1000px){.staff-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.staff-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.staff-card .staff-photo,.staff-photo-placeholder{height:130px}.staff-card-body{padding:12px}.staff-card h3{font-size:18px}.staff-card p{font-size:11px}.staff-state{font-size:9px;padding:2px 4px}.staff-number{font-size:10px}.staff-result .staff-photo,.staff-result .staff-photo-placeholder{height:260px}}
.staff-departments{margin:30px 0}.staff-department{margin-bottom:46px}.staff-department-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:14px}.staff-department-head h3{font-family:var(--serif);font-size:27px;color:var(--ink)}.staff-department-head p{color:var(--muted);font-size:12px}.staff-department .staff-grid{margin-top:20px}@media(max-width:600px){.staff-department-head{display:block}.staff-department-head h3{font-size:24px}.staff-department-head p{margin-top:8px}.staff-department{margin-bottom:35px}}
.staff-card .staff-dept{display:none}.staff-result .staff-card .staff-dept{display:block}
