.builder_faq {
  padding: 180px 0 200px;
  background-color: #f9fafb;
}
.builder_faq .sub_title {
  margin-bottom: 80px;
  font-size: 72px;
  font-weight: 600;
  line-height: 130%;
  color: #000;
  text-align: center;
}
.builder_faq .faq_list {
  width: 1192px;
  margin: 0 auto;
  border-top: 1px solid #e5e7eb;
  opacity: 0;
  transform: translateY(120px);
  transition: 0.3s ease;
}
.builder_faq .faq_list.common-text-animation {
  opacity: 1;
  transform: translateY(0);
}
.builder_faq .faq_item {
  padding: 32px 0;
  border-bottom: 1px solid #e5e7eb;
}
.builder_faq .faq_title_wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}
.builder_faq .faq_title_wrap i {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
}
.builder_faq .faq_title_wrap i.opened {
  display: none;
}
.builder_faq .faq_title_wrap svg path {
  transition: 0.3s ease;
}
.builder_faq .faq_title {
  font-size: 24px;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: -0.24px;
  color: #374151;
  transition: 0.3s ease;
}
.builder_faq .faq_text {
  display: none;
  margin-top: 24px;
  padding-right: 48px;
  font-size: 18px;
  font-weight: 400;
  line-height: 160%;
  letter-spacing: -0.18px;
  color: #4b5563;
}
.builder_faq .faq_text .list-item.bullet {
  display: block;
  position: relative;
  padding-left: 24px;
}
.builder_faq .faq_text .list-item.bullet:before {
  content: '';
  position: absolute;
  left: 11px;
  top: 11px;
  width: 3px;
  height: 3px;
  border-radius: 3px;
  background-color: #4b5563;
}
.builder_faq .faq_item.active .faq_text {
  display: block;
}
.builder_faq .faq_item.active i.opened {
  display: flex;
}
.builder_faq .faq_item.active i.closed {
  display: none;
}

@media (hover: hover) {
  .builder_faq .faq_item:hover .faq_title {
    color: #05bc63;
  }
  .builder_faq .faq_item:hover svg path {
    fill: #05bc63;
  }
}

@media screen and (max-width: 1919px) {
  .builder_faq {
    padding: 160px 0 170px;
  }
  .builder_faq .sub_title {
    margin-bottom: 65px;
    font-size: 64px;
    letter-spacing: -1.28px;
  }
  .builder_faq .faq_list {
    width: 1006px;
  }
  .builder_faq .faq_item {
    padding: 24px 0;
  }
  .builder_faq .faq_title {
    font-size: 20px;
    letter-spacing: -0.2px;
  }
  .builder_faq .faq_text {
    margin-top: 20px;
    font-size: 16px;
    letter-spacing: -0.16px;
  }
}

@media screen and (max-width: 1599px) {
  .builder_faq {
    padding: 140px 0;
  }
  .builder_faq .sub_title {
    margin-bottom: 42.67px;
    font-size: 56px;
    letter-spacing: -1.12px;
  }
  .builder_faq .faq_list {
    width: 635.733px;
  }
  .builder_faq .faq_item {
    padding: 18px 0;
  }
  .builder_faq .faq_title {
    font-size: 18px;
    letter-spacing: -0.18px;
  }
  .builder_faq .faq_title_wrap i {
    width: 40px;
    height: 40px;
  }
  .builder_faq .faq_title_wrap i svg {
    width: 32px;
    height: 32px;
  }
  .builder_faq .faq_text {
    margin-top: 12.8px;
    font-size: 15px;
    letter-spacing: 0;
  }
}

@media screen and (max-width: 768px) {
  .builder_faq {
    padding: 80px 20px 107px;
  }
  .builder_faq .sub_title {
    font-size: 32px;
    letter-spacing: -0.32px;
    margin-bottom: 48px;
  }
  .builder_faq .faq_list {
    width: 100%;
  }
  .builder_faq .faq_title_wrap {
    gap: 16px;
  }
  .builder_faq .faq_title {
    font-size: 16px;
    letter-spacing: -0.16px;
    word-break: keep-all;
  }
  .builder_faq .faq_title_wrap i {
    width: 32px;
    height: 32px;
  }
  .builder_faq .faq_text {
    font-size: 14px;
    line-height: 150%;
  }
  .builder_faq .faq_text br {
    display: none;
  }
  .builder_faq .faq_text br.keep-break {
    display: block;
  }
  .builder_faq .faq_text .list-item.bullet {
    top: 9px;
  }
}
