.pp-accordion-item {
  padding-top: 0.5rem;
  display: grid;
  transition: grid-template-rows 0.3s ease-in-out;
  overflow: hidden;

  & .pp-accordion-title {
    padding: 0 0 0.5rem;
    text-align: left;
    display: flex;
    align-items: center;
  }

  & .pp-accordion-content {
    transition:
      visibility 0.3s ease-in-out,
      height 0.3s ease-in-out;
  }

  &.open {
    grid-template-rows: max-content 1fr;
    padding-bottom: 0.5rem;

    .pp-accordion-content {
      visibility: visible;
      min-height: fit-content;
    }

    .pp-accordion-title-text::after {
      content: "+";
    }
  }

  &:not(.open) {
    grid-template-rows: max-content 0fr;

    .pp-accordion-title-text::after {
      content: "-";
    }

    .pp-accordion-content {
      visibility: hidden;
      min-height: 0;
    }
  }
}
