/* ---------- Cerebis Accordion ---------- */

.cerAccord .cerAccordButton {
  cursor: pointer;
  user-select: none;
}

.cerAccord .cerAccordButton:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

/* Content starts collapsed. Height is driven by JS. */
.cerAccord .cerAccordContent {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
}

/* Icon rotation */
.cerAccord .cerAccordIcon {
  display: inline-flex;
  transition: transform 0.4s ease;
  transform: rotate(0deg);
}

.cerAccord .cerAccordHolder.is-open .cerAccordIcon {
  transform: rotate(90deg);
}

/* No animation before JS has initialised (prevents a flash of open content) */
.cerAccord:not(.cerAccord--ready) .cerAccordContent {
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .cerAccord .cerAccordContent,
  .cerAccord .cerAccordIcon {
    transition: none;
  }
}
