/* ===== FAQ (без размеров шрифта) ===== */
.faq { padding: 48px 0; }
.faq__head { text-align: center; margin-bottom: 20px; position: relative; }
.faq__title { margin: 0 0 6px;  }
.faq__sub { margin: 0; color: var(--muted, #6b7280); }

.faq__tricolore {
  display: flex; height: 6px; width: 140px; margin: 14px auto 0;
  border-radius: 999px; overflow: hidden;
}
.faq__tricolore .it { flex: 1; }
.it--g { background:#009246 }
.it--w { background:#ffffff }
.it--r { background:#ce2b37 }

.faq-list { display: grid; gap: 12px; margin-top: 18px; }

.faq-item {
  background:#fff;
  border:1px solid #eef1f6;
  border-radius:16px;
  box-shadow: 0 10px 24px rgba(0,0,0,.06);
  overflow:hidden;
}

.faq-question {
  width:100%;
  padding: 16px 56px 16px 18px;
  text-align:left;
  background:#fff;
  border:none;
  cursor:pointer;
  font-weight:700;
  position:relative;
  display:flex;
  align-items:center;
  gap:10px;
}

.faq-icon {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 26px;
  height: 26px;
  border-radius: 8px;
  background: #f3f4f6;
  display: flex;
  align-items: center;
  justify-content: center;
}

.faq-icon::before,
.faq-icon::after {
  content: "";
  position: absolute;
  width: 12px;
  height: 2px;
  background: #111827;
  border-radius: 2px;
  transition: transform .2s ease, opacity .2s ease;
}

.faq-icon::after {
  transform: rotate(90deg);
}

/* когда открыто — только минус */
.faq-question.active .faq-icon::after {
  opacity: 0;
}


.faq-answer {
  max-height:0;
  overflow:hidden;
  padding: 0 18px;
  border-top:1px solid transparent;
  color:#374151;
  transition: max-height .35s ease, padding .25s ease, border-color .25s ease, opacity .25s ease;
  opacity:0;
}
.faq-answer.open {
  max-height: 260px;
  padding: 10px 18px 16px;
  border-top-color:#f1f5f9;
  opacity:1;
}

.faq-item:hover .faq-question { background:#fffef7; }
.faq-item:hover { box-shadow:0 14px 30px rgba(0,0,0,.08); }

@media (max-width: 640px) {
  .faq { padding: 36px 0; }
  .faq-icon { width:24px; height:24px; border-radius:7px; }
}
