.block-accordion {
  .item-content {
    padding-top: 3em;
    max-width  : 1000px;
    margin     : auto;
  }

  .divider {
    padding-block: 2em;
  }

  .divider::before {
    max-width: min(1000px, 100% - 2em);
  }

  .item-title .icon {
    rotate    : -90deg;
    width     : 16px;
    height    : 16px;
    position  : absolute;
    right     : .1em;
    transition: rotate .2s ease-in-out;
    path {
      stroke: currentColor;
      stroke-width: 2;
    }
  }

  .item-title.active .icon {
    rotate: 0deg;
  }

  .item-section {
    max-width: 800px;
    margin: auto;
    margin-bottom: 2em;

    &.has-image {
      max-width: 1000px;
    }
  }

  .faq-style {
    max-width: 880px;
    margin   : auto;

    .divider::before {
      max-width: min(1000px, 100%);
    }

    .item-content {
      padding-top: 1.5em;
    }
  }
}

.block-accordion .icon,
.block-accordion .item-title span {
  pointer-events: none;
}

@media screen and (min-width: 52em) {
  .block-accordion .item-title .icon {
    width : 20px;
    height: 20px;
    right : 1.5em;
  }

  .block-accordion .faq-style .item-title .icon {
    right: .25em;
  }
}