/* Shared disclosure motion; each page retains its own typography and surfaces. */
:is(.faq-list, .faq-panel) > details[data-faq-expanded] {
  box-sizing: border-box;
}

:is(.faq-list, .faq-panel) > details[data-faq-animating] {
  overflow: clip;
}

:is(.faq-list, .faq-panel) > details[data-faq-expanded] > summary {
  color: inherit;
  padding-inline-start: 0;
}

:is(.faq-list, .faq-panel) > details[data-faq-expanded] > summary > span {
  transform: rotate(0deg);
  transition: transform 380ms cubic-bezier(.22, 1, .36, 1);
}

:is(.faq-list, .faq-panel) > details[data-faq-expanded="true"] > summary > span {
  transform: rotate(45deg);
}

:is(.faq-list, .faq-panel) > details[data-faq-expanded] > :not(summary) {
  animation: none;
}

:is(.faq-list, .faq-panel) > details > summary:focus-visible {
  outline: 3px solid var(--accent, #326af6);
  outline-offset: 5px;
}

@media (prefers-reduced-motion: reduce) {
  :is(.faq-list, .faq-panel) > details[data-faq-expanded] > summary > span {
    transition: none;
  }
}
