/* ── Sub-service FAQ accordion — Figma arrow icon ──
   Draws the Figma "Arrow Icon With Circle" in Divi's icon slot (the title's ::before) and keeps it on
   the open question, where Divi hides it. It points down when closed and turns up as the question
   opens: js/sub-service.js sets is-opening / is-closing on click, so the turn runs with the slide.
   content: "" !important wins over any icon picked in the builder. */
.page-template-sub-service .et_pb_accordion .et_pb_accordion_item.et_pb_toggle > .et_pb_toggle_title::before {
  content: "" !important;
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 3.75rem;
  height: 3.75rem;
  margin: 0;
  background-color: var(--dark-blue);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23000' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='30' cy='30' r='28'/%3E%3Cpath d='M41.2 30 30 41.2 18.8 30M30 41.2V18.8'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23000' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='30' cy='30' r='28'/%3E%3Cpath d='M41.2 30 30 41.2 18.8 30M30 41.2V18.8'/%3E%3C/svg%3E") center / contain no-repeat;
  transform: translateY(-50%) rotate(0deg);
  transition: transform 0.4s ease;
}

.page-template-sub-service .et_pb_accordion .et_pb_accordion_item.et_pb_toggle_open:not(.is-closing) > .et_pb_toggle_title::before,
.page-template-sub-service .et_pb_accordion .et_pb_accordion_item.is-opening > .et_pb_toggle_title::before {
  transform: translateY(-50%) rotate(180deg);
}

/* Divi marks a question with no answer as empty; keep its icon hidden. */
.page-template-sub-service .et_pb_accordion .et_pb_accordion_item.et_pb_toggle_empty > .et_pb_toggle_title::before {
  display: none;
}

/* Keep long questions clear of the icon: icon width + gap. */
.page-template-sub-service .et_pb_accordion .et_pb_accordion_item > .et_pb_toggle_title {
  padding-right: 5.25rem;
}

/* The script holds the clicked question still while a panel above it closes. Browser scroll
   anchoring inside the accordion fights that and jumps the page once the arrow finishes turning. */
.page-template-sub-service .et_pb_accordion {
  overflow-anchor: none;
}

@media (max-width: 980px) {
  .page-template-sub-service .et_pb_accordion .et_pb_accordion_item.et_pb_toggle > .et_pb_toggle_title::before {
    width: 2.75rem;
    height: 2.75rem;
  }

  .page-template-sub-service .et_pb_accordion .et_pb_accordion_item > .et_pb_toggle_title {
    padding-right: 4rem;
  }
}

@media (max-width: 767px) {
  .page-template-sub-service .et_pb_accordion .et_pb_accordion_item.et_pb_toggle > .et_pb_toggle_title::before {
    width: 1.75rem;
    height: 1.75rem;
  }

  .page-template-sub-service .et_pb_accordion .et_pb_accordion_item > .et_pb_toggle_title {
    padding-right: 2.75rem;
  }
}
