/* Alphabet navigation and grouped result headings shared by glossary and companies. */
.on-alphabet { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,44px),1fr)); grid-auto-rows:minmax(44px,auto); gap:6px; min-width:0; padding:14px; margin:14px 0 0; background:var(--on-soft,#f4f6f7); border-block:1px solid var(--on-line,#f4e5d9); }
.on-alphabet>a,.on-alphabet>span { display:flex; box-sizing:border-box; justify-content:center; align-items:center; min-width:0; width:100%; min-height:44px; padding:7px 4px; text-decoration:none; font:600 12px/1.4 var(--on-font,system-ui,sans-serif); white-space:nowrap; border:1px solid var(--on-line,#f4e5d9); background:var(--on-accent,#fab900); color:var(--on-ink,#002d5e); }
.on-alphabet [aria-current] { color:#fff; background:var(--on-ink,#002d5e); border-color:var(--on-ink,#002d5e); }
.on-alphabet .is-unavailable { opacity:.45; background:transparent; }
.on-alphabet>a:hover { border-color:var(--on-ink,#002d5e); }
.on-index-group { margin-top:24px; }
.on-index-group>h2 { display:flex; align-items:center; gap:14px; margin:0 0 12px; font:var(--on-heading-weight,700) var(--on-heading-current-size,var(--on-heading-size,24px))/1 var(--on-heading,system-ui,sans-serif); }
.on-index-group>h2::after { content:''; height:1px; flex:1; background:var(--on-line,#f4e5d9); }
.on-index-group>h2>span { display:grid; place-items:center; min-width:42px; height:42px; padding:8px; background:var(--on-accent,#fab900); }
.on-index-items { display:grid; gap:10px; }
@media(min-width:540px) { .on-alphabet { padding:20px; gap:8px; } }
