[data-accordion] {
    --accordion-duration: 260ms;
    --accordion-fade: 160ms;
    --accordion-ease: cubic-bezier(0.4, 0, 0.2, 1);
  }
  [data-accordion="fast"]    { --accordion-duration: 190ms; --accordion-fade: 120ms; }
  [data-accordion="stately"] { --accordion-duration: 340ms; --accordion-fade: 200ms; }
  [data-accordion] summary { cursor: pointer; list-style: none; }
  [data-accordion] summary::-webkit-details-marker { display: none; }
  [data-accordion] [data-accordion-trigger] { cursor: pointer; }
  [data-accordion] summary svg,
  [data-accordion] [data-accordion-trigger] svg {
    transition: transform var(--accordion-duration) var(--accordion-ease);
  }
  [data-accordion] details[open] summary svg,
  [data-accordion] [data-accordion-item].is-open [data-accordion-trigger] svg {
    transform: rotate(180deg);
  }
  @media (scripting: enabled) {
    [data-accordion] [data-accordion-item] [data-accordion-panel] {
      height: 0; overflow: hidden; visibility: hidden;
    }
    [data-accordion] [data-accordion-item].is-open [data-accordion-panel] {
      height: auto; overflow: visible; visibility: visible;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    [data-accordion] summary svg,
    [data-accordion] [data-accordion-trigger] svg { transition: none; }
  }
