/* FAQ(토글/아코디언) + 태그 칩 — 최소 글자 16px */
.faq-wrap { padding:6.5vw var(--grid_pd3) 2.2vw; font-size:16px; }
.tagbar { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 18px; }
.tagchip {
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border:1px solid var(--line); border-radius:999px;
  background:#fff; color:var(--ink); text-decoration:none; font-weight:600;
  transition: background .2s, border-color .2s;
  font-size:16px;
}
.tagchip:hover { background:var(--primary-100); border-color:var(--primary); }
.tagchip.is-active { background:var(--primary); border-color:var(--primary); color:#fff; }

.faq { display:grid; gap:12px; }
.faq-item { border:1px solid var(--line); border-radius:12px; background:#fff; overflow:hidden; box-shadow: var(--shadow); }
.faq-q { list-style:none; display:flex; align-items:center; gap:12px; padding:16px 18px; cursor:pointer; font-weight:700; font-size:16px; }
.faq-q::-webkit-details-marker { display:none; }
.faq-q .badge { background:var(--primary-100); color:var(--primary); border-radius:999px; padding:2px 8px; font-weight:600; font-size:14px; }
.faq-q .meta { margin-left:auto; color:var(--muted); font-weight:500; font-size:14px; }
.faq-caret { width:18px; height:18px; margin-left:8px; flex:0 0 auto; transition: transform .2s ease; }
.faq-item[open] .faq-caret { transform: rotate(180deg); }
.faq-a { border-top:1px solid var(--line); padding:16px 18px; font-size:16px; color: var(--ink); background:#fff; }