.accordion {
  // border: 1px solid rgba(0, 0, 0, 0.12);
  // border-radius: 12px;
  overflow: hidden;

  &__trigger {
    width: 100%;
    appearance: none;
    border: 0;
    border-bottom: 1.5px solid var(--tide-booking-color-primary-fade);
    background: transparent;
    text-align: left;
    padding: 15px 15px;
    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;

    font-size: 15px;
    font-weight: 600;

    &:focus-visible {
      outline: 2px solid currentColor;
      outline-offset: 2px;
    }
  }

  &__icon {
    display: flex;
    color: var(--tide-booking-color-primary);
    flex: 0 0 auto;
    transition: transform 300ms ease;
  }

  &__panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 350ms ease;
  }

  &__panelInner {
    overflow: hidden;
    padding: 0 15px;
    transition: padding 300ms ease;
  }

  &__content {
    padding: 0 0 15px;
    opacity: 0.95;
  }

  &--open {
    .accordion__icon {
      transform: rotate(90deg);
    }

    .accordion__panel {
      grid-template-rows: 1fr;
    }

    .accordion__panelInner {
      padding: 15px;
    }
  }
}
