/* ══════════════════════════════════════════════════════════
   FAQ PAGE
   ══════════════════════════════════════════════════════════ */
.search-box {
  margin: var(--sp-4) var(--sp-5);
  position: relative;
}
.search-box input {
  width: 100%;
  padding: var(--sp-3) var(--sp-4) var(--sp-3) 40px;
  border: 1.5px solid var(--border);
  border-radius: var(--r-md);
  background: var(--section-bg);
  color: var(--text);
  font-size: var(--fs-sm);
  outline: none;
  transition: border-color .15s var(--ease);
}
.search-box input:focus { border-color: var(--btn-bg); }
.search-box input::placeholder { color: var(--hint); }
.search-box .search-icon {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--hint);
  width: 16px;
  height: 16px;
}

.faq-list { padding: 0 var(--sp-5) var(--sp-8); }
.faq-item {
  border-bottom: 1px solid var(--border);
  overflow: hidden;
}
.faq-item:last-child { border-bottom: none; }
.faq-q {
  width: 100%;
  display: flex;
  align-items: center;
  gap: var(--sp-3);
  padding: var(--sp-4) 0;
  cursor: pointer;
  background: transparent;
  font-size: var(--fs-sm);
  font-weight: var(--fw-medium);
  line-height: var(--lh-normal);
  color: var(--text);
  text-align: left;
}
.faq-q .faq-chevron {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  color: var(--hint);
  transition: transform var(--duration) var(--ease);
}
.faq-q .faq-text { flex: 1; }
.faq-item.open .faq-chevron { transform: rotate(180deg); }
.faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height .35s var(--ease), padding .35s var(--ease);
}
.faq-item.open .faq-a { max-height: 500px; }
.faq-a-inner {
  padding-bottom: var(--sp-4);
  font-size: var(--fs-sm);
  color: var(--hint);
  line-height: var(--lh-relaxed);
}

