.accordion {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.accordion-item {
  border-radius: 4px;
  overflow: visible;
}

.accordion-trigger {
  width: 100%;
  padding: 1rem;
  border: none;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition:
    background-color 0.3s ease,
    color 1s ease;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.accordion-trigger::after {
  content: "\25BC";
  font-size: 0.7em;
  transform: rotate(0deg);
  transition: transform 1s cubic-bezier(0.4, 0, 0.2, 1);
}

.accordion-trigger:hover {
  background-color: rgba(255, 255, 255, 0.05);
}

.accordion-trigger[aria-expanded="true"]::after {
  transform: rotate(180deg);
}

.accordion-content {
  letter-spacing: 2px;

  height: 0;
  opacity: 0;
  overflow: hidden;
  padding: 0 1rem;

  transition:
    height 1.5s cubic-bezier(0.4, 0, 0.2, 1),
    opacity 1.5s cubic-bezier(0.4, 0, 0.2, 1);

  will-change: height, opacity;
}

.accordion-content.open {
  opacity: 1;
}

.accordion-content .accordion {
  margin-top: 0.75rem;
  margin-left: 1rem;
  gap: 0.5rem;
}
