.faq-wrap {
  max-width: 850px !important;
  margin: 80px auto !important;
  padding: 0 20px !important;
  text-align: center !important;
}

/* ITEM CARD */
.faq-item {
  margin-bottom: 16px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid #e6e9f0 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;
  transition: all 0.25s ease !important;
}

/* HOVER LIFT */
.faq-item:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(0,0,0,0.08) !important;
}

/* ACTIVE STATE */
.faq-item.active {
  border-color: #1a76c2 !important;
  box-shadow: 0 8px 24px rgba(26,118,194,0.12) !important;
}

/* QUESTION */
.faq-question {
  width: 100% !important;
  padding: 20px 50px 20px 20px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  background: #f9fbff !important;
  color: #111a33 !important;
  border: none !important;
  text-align: left !important;
  cursor: pointer !important;
  position: relative !important;
  transition: background 0.2s ease !important;
}

/* HOVER */
.faq-question:hover {
  background: #eef4ff !important;
}

/* ICON */
.faq-question::after {
  content: '+' !important;
  position: absolute !important;
  right: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) rotate(0deg) !important;
  font-size: 20px !important;
  color: #1a76c2 !important;
  transition: all 0.3s ease !important;
}

/* ROTATE ICON */
.faq-item.active .faq-question::after {
  transform: translateY(-50%) rotate(45deg) !important;
}

/* ANSWER (ANIMATED) */
.faq-answer {
  max-height: 0 !important;
  overflow: hidden !important;
  transition: all 0.35s ease !important;
  padding: 0 20px !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  text-align: left !important;
  color: #333 !important;
}

/* OPEN STATE */
.faq-item.active .faq-answer {
  max-height: 300px !important;
  padding: 15px 20px 20px 20px !important;
}

/* TITLE */
.faq-wrap h2 {
  text-align: center !important;
  margin-bottom: 30px !important;
  font-size: 18px !important;
}