/* ===== Accordion (scoped) ===== */
.section-faq{
  width: 100%;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: 5%;
  padding-right: 5%;
  margin-top: 40px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}
.hj_faq{
  width: 100%;
  max-width: 1280px;
}

.hj-accordion {
  width: 100%;
  position: relative;
  z-index: 0;
}

.hj-accordion__title { 
  margin: 0 0 8px; 
  font-size: 26px;
  text-align: left; 
}

.hj-accordion__item { 
  border-top: 1px solid #e7e7e7; 
  width: 100%;
  position: relative;
  z-index: 0;
}
.hj-accordion__item:last-child { 
  border-bottom: 1px solid #e7e7e7; 
}

.hj-accordion__summary {
  position: relative;
  display: block;
  margin: 0;
  padding: 20px 40px 20px 0px;
  cursor: pointer;
  list-style: none;
  font-size: 16px;
  font-weight: 500;
  width: 100%;
  z-index: 0;
}
.hj-accordion__summary::-webkit-details-marker { display: none; }

.hj-accordion__summary::after {
  content: "";
  position: absolute;
  right: 12px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid #888;
  border-bottom: 2px solid #888;
  transform: translateY(-50%) rotate(-45deg);
  transition: transform .2s ease;
  opacity: .9;
  z-index: 0;
}
.hj-accordion__item[open] > .hj-accordion__summary::after {
  transform: translateY(-50%) rotate(45deg);
}

.hj-accordion__content { 
  margin-left: 8px;
  padding: 12px 12px 30px 12px; 
  width: 100%;
  position: relative;
  z-index: 0;
  font-size: 16px;
}
.hj-accordion__content p { margin: 6px 0 0; }
.hj-accordion__content ol,
.hj-accordion__content ul { margin: 6px 0 0 20px; padding-left: 4px; }

/* ===== Fix stacking issue (FAQ below header) ===== */
.hj-accordion,
.hj-accordion__item,
.hj-accordion__summary,
.hj-accordion__content {
  position: relative;
  z-index: 0;
}

.hj-accordion,
.hj-accordion * {
  transform: none !important;
  filter: none !important;
  will-change: auto !important;
}


/********************/