/* ===== FAQ SECTION ===== */
.faq-section {
  padding: 60px 0;
  background: #f7f9fc;
}

.faq-title {
  text-align: center;
  margin-bottom: 40px;
}

.faq-title h2 {
  font-weight: 700;
  color: #0b2545;
}

/* Accordion Card */
.accordion .card {
  border: none;
  border-radius: 14px;
  margin-bottom: 18px;
  box-shadow: 0 12px 30px rgba(0,0,0,0.07);
  overflow: hidden;
}

/* Header */
.accordion .card-header {
  padding: 0;
  background: #fff;
}

.accordion .card-header button {
  width: 100%;
  padding: 22px 26px;
  font-size: 16px;
  font-weight: 600;
  color: #0b2545;
  background: transparent;
  border: none;
  text-align: left;
  position: relative;
}

.accordion .card-header button:focus {
  outline: none;
  box-shadow: none;
}

/* Plus / Minus */
.accordion .card-header button::after {
  content: "+";
  position: absolute;
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 24px;
  font-weight: 700;
  color: #2f7d32;
}

.accordion .card-header button[aria-expanded="true"]::after {
  content: "−";
}

/* Active */
.accordion .card-header button[aria-expanded="true"] {
  background: #e9f7ef;
}

/* Body */
.accordion .card-body {
  padding: 22px 26px;
  font-size: 15px;
  color: #555;
  line-height: 1.7;
  background: #fff;
}