
.faqwrap{max-width:var(--maxw);margin:0 auto;display:grid;
  grid-template-columns:230px minmax(0,1fr);gap:var(--gap-xl)}
.rail{position:sticky;top:calc(var(--gap-xl) + var(--gap-md));align-self:start}
.rail h2{font-size:var(--t-label);letter-spacing:var(--ls-label);text-transform:uppercase;
  font-family:var(--f-body);font-weight:700;color:var(--ink-56);margin:0 0 var(--gap-sm)}
.rail ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.rail a{display:flex;align-items:center;gap:var(--gap-sm);padding:10px 0 10px var(--gap-sm);
  text-decoration:none;font-size:var(--t-ui);font-weight:600;color:var(--ink-84);
  border-left:2px solid var(--ink-hairline);
  transition:color var(--d-fast) var(--e-enter),border-color var(--d-fast) var(--e-enter)}
.rail a:hover{color:var(--cream);border-left-color:var(--ink-rim)}
.rail a[aria-current="true"]{color:var(--cream);border-left-color:var(--accent)}
.rail a .n{margin-left:auto;font-family:var(--f-mono);font-size:var(--t-label);
  font-weight:700;color:var(--ink-56)}
.rail .help{margin-top:var(--gap-lg);font-size:12.5px;color:var(--ink-56);line-height:1.5}
.rail .help a{display:inline;padding:0;border:0;font-size:12.5px;color:var(--ink-90);
  box-shadow:inset 0 -1px 0 0 var(--ink-hairline)}
.rail .help a:hover{color:var(--cream);box-shadow:inset 0 -1px 0 0 var(--cream)}
.grp{scroll-margin-top:var(--gap-xl)}
.grp + .grp{margin-top:var(--gap-xl)}
.grp > header{display:flex;align-items:center;gap:var(--gap-md);margin-bottom:var(--gap-sm)}
.grp > header h2{font-size:var(--t-display-sm)}
.grp > header p{margin:0;font-size:13px;color:var(--ink-56)}
.qa details[open] > summary h3{font-weight:600}
.qa summary:hover .chev,.qa summary:focus-visible .chev{color:var(--cream)}
@media (max-width:980px){
  .faqwrap{grid-template-columns:minmax(0,1fr);gap:var(--gap-lg)}
  .rail{position:static;min-width:0}
  .rail ul{grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto;gap:var(--gap-xs)}
  .rail a{border-left:0;padding:9px 14px;border-radius:var(--r-pill);
    box-shadow:inset 0 0 0 1.5px var(--ink-hairline)}
  .rail a:hover{box-shadow:inset 0 0 0 1.5px var(--ink-rim)}
  .rail a[aria-current="true"]{box-shadow:inset 0 0 0 1.5px var(--cream)}
  .rail .help{display:none}
}
@media (max-width:520px){
  .qa .ans{padding-right:0}
  .grp > header{flex-wrap:wrap;gap:var(--gap-xs)}
}
