.sa-section { padding-top:56px; scroll-margin-top:100px; }
.sa-heading { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:end; margin-bottom:32px; }
.sa-heading h2 { font-size:40px; line-height:1.2; letter-spacing:0; margin:14px 0 0; }
.sa-heading p { font-size:16px; line-height:1.8; margin:0; max-width:48ch; }
.sa-heading .sa-status { color:#8a8f98; font-size:12px; margin-top:16px; }
.sa-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:20px 0; border-top:1px solid #32353e; }
.sa-toolbar[hidden],.sa-agent[hidden] { display:none; }
.sa-filters { display:flex; flex-wrap:wrap; gap:4px; }
.sa-filters button { background:transparent; color:#a4a8b3; border:1px solid transparent; border-radius:6px; font:500 13px var(--font-sans); min-height:44px; padding:0 14px; cursor:pointer; }
.sa-filters button span { margin-left:6px; color:#8a8f98; font-size:11px; }
.sa-filters button[aria-pressed="true"] { background:#1b1e31; color:#d9ddff; border-color:#454c79; }
.sa-filters button:hover { color:#fff; }
.sa-filters button:focus-visible { outline:2px solid #939dff; outline-offset:3px; }
#sa-count { font:12px var(--font-mono); color:#8a8f98; white-space:nowrap; }
.sa-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.sa-agent { padding:28px; background:#111318; border:1px solid #30333f; border-radius:8px; display:flex; flex-direction:column; min-width:0; transition:border-color .2s ease; }
.sa-agent:hover { border-color:#626ba3; }
.sa-meta { display:flex; justify-content:space-between; gap:16px; color:#8a8f98; font:10px var(--font-mono); letter-spacing:0; }
.sa-meta>span:first-child { color:#939dff; }
.sa-agent h3 { font-size:25px; line-height:1.3; letter-spacing:0; margin:26px 0 8px; }
.sa-agent p { font-size:14px; line-height:1.85; color:#a4a8b3; margin:0 0 24px; }
.sa-agent .sa-role { color:#e1e4ed; font-size:14px; margin-bottom:18px; }
.sa-rule { margin-top:auto; padding-top:20px; border-top:1px solid #2b2e38; display:flex; flex-wrap:wrap; gap:8px; align-items:center; font:11px/1.8 var(--font-mono); color:#a4a8b3; }
.sa-rule span { color:#939dff; }
.sa-quartermaster { grid-column:1/-1; display:grid; grid-template-columns:1fr 1.5fr; gap:48px; border-color:#454c79; }
.sa-quartermaster .sa-meta { justify-content:flex-start; }
.sa-quartermaster h3 { margin-top:20px; }
.sa-quartermaster>div:last-child { display:flex; flex-direction:column; justify-content:center; }
.sa-quartermaster .sa-role { margin-bottom:0; }
/* Visa geometry: Simple Icons 11.15.0, icons/visa.svg; white display variant. */
.sayf-card-visa { position:absolute; right:7%; bottom:12%; width:15%; height:auto; }
@media(max-width:960px) { .sa-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .sa-heading { gap:32px; } }
@media(max-width:640px) {
  .sa-heading,.sa-grid,.sa-quartermaster { grid-template-columns:1fr; gap:20px; }
  .sa-heading h2 { font-size:32px; }
  .sa-toolbar { align-items:start; flex-direction:column; gap:10px; }
  .sa-filters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; }
  .sa-filters button { text-align:left; }
  .sa-agent { padding:24px; }
}
@media(prefers-reduced-motion:reduce) { .sa-agent { transition:none; } }
