/* FAQ: native <details>, so it opens with the keyboard and without JavaScript. */
.faq__wrap { max-width: calc(820px + 2 * var(--gutter)); }
.faq__list { margin-top: 32px; border-top: 1px solid var(--line); }
.faq__item { border-bottom: 1px solid var(--line); }
.faq__item summary {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  min-height: 60px; padding: 14px 4px; cursor: pointer; list-style: none;
  font-size: 1.0625rem; font-weight: 700;
}
.faq__item summary::-webkit-details-marker { display: none; }
.faq__item summary::after {
  content: ""; flex: none; width: 10px; height: 10px; margin-right: 6px;
  border-right: 2px solid var(--teal); border-bottom: 2px solid var(--teal); transform: rotate(45deg) translateY(-3px);
}
.faq__item[open] summary::after { transform: rotate(-135deg) translateY(-2px); }
@media (prefers-reduced-motion: no-preference) { .faq__item summary::after { transition: transform 0.15s ease; } }
.faq__item p { padding: 0 4px 20px; max-width: 44em; color: var(--ink-2); }
