.accordion {
  --_space: var(--space, 1rem);
  --_color-accent: var(--color-accent, currentColor);
}

.accordion p { margin-top:0; } /* @todo: revise p more generally to only have bottom margin */

.accordion details            { border-top: 1px solid var(--_color-accent); }
.accordion details:last-child { border-bottom: 1px solid var(--_color-accent); }
.accordion details[open]      { padding-bottom: var(--_space); }

.accordion summary {
  display: flex;
  align-items: center;
  gap: var(--_space);
  font-weight: 600;
  cursor: pointer;
  padding: var(--_space) 0;
}

.accordion summary *:is(h1, h2, h3, h4, h5, h6) { margin: 0; }

.accordion summary::after {
  content: var(--read-more, '\e92f');
  color: var(--_color-accent, currentColor);
  font-size: 1rem;
  font-weight: normal;
  flex: 1;
  min-width: fit-content;
  text-align: right;
  font-family: 'feather-icons' !important;
}
.accordion details[open] > summary::after {
  content: var(--read-less, '\e912');
}
