/* FAQ: centred two-tone heading, accordion with hairline separators, one screen tall.
   Owner: numbers+closing builder; design-system pass 2026-10-12. Frame and head from layout.css. */
.faq-list { max-width: 760px; width: 100%; margin-inline: auto; border-bottom: 1px solid var(--line); }
.faq-item { border-top: 1px solid var(--line); }
.faq-item h3 { margin: 0; font: inherit; }
/* title role */
.faq-q {
  display: flex; align-items: center; justify-content: space-between; gap: var(--sp-16); width: 100%; min-height: 72px;
  padding: var(--sp-16) 0; border: 0; background: none; text-align: left; cursor: pointer;
  font-family: var(--font-body); font-weight: var(--fw-title); font-size: var(--w-title); line-height: 1.3; letter-spacing: -.01em; color: var(--ink-2);
  transition: color var(--dur-fast) var(--ease-out);
}
.faq-q:hover, .faq-q[aria-expanded='true'] { color: var(--ink); }
.faq-q:focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; }
.faq-q .px-icon { flex: none; transition: transform var(--dur) var(--ease-out); color: var(--muted); }
.faq-q:hover .px-icon { color: var(--ink); }
.faq-q[aria-expanded='true'] .px-icon { transform: rotate(180deg); color: var(--ink); }
/* body role */
.faq-a { padding: 0 var(--sp-48) var(--sp-24) 0; }
.faq-a p { margin: 0; max-width: var(--measure); font-size: var(--w-body); line-height: 1.65; color: var(--muted); text-wrap: pretty; }
.faq-a a { color: var(--ink); font-weight: 600; text-decoration: underline; text-decoration-color: var(--line-strong); text-underline-offset: 4px; }
.faq-a a:hover { text-decoration-color: var(--ink); }
@media (max-width: 759px) {
  .faq-a { padding-right: var(--sp-8); }
}
