
.esb-faq { width:100%; max-width: 900px; margin: 0 auto; }
.esb-faq-heading { margin: 0 0 16px; font-weight: 700; }

.esb-faq-search-wrap { margin-bottom: 16px; }
.esb-faq-search {
  position: relative; display:flex; align-items:center;
  border:1px solid #E5E7EB; border-radius:12px; background:#fff; height:44px;
  padding: 0 40px 0 14px;
}
.esb-faq-input { flex:1; border:0; outline:0; background:transparent; font-size:15px; }
.esb-faq-icon { position:absolute; right:12px; top:50%; transform: translateY(-50%); opacity: .7; }
.esb-faq-icon svg { stroke:#111; }

.esb-faq-list { display:grid; gap:10px; }
.esb-faq-item { border:1px solid #E5E7EB; border-radius:12px; background:#fff; overflow:hidden; }
.esb-faq-q {
  width:100%; text-align:left; display:flex; justify-content:space-between; align-items:center;
  padding:16px; border:0; background:transparent; cursor:pointer; font-weight:600;
}
.esb-faq-caret { margin-left:10px; transition: transform .2s ease; }
.esb-faq-item.open .esb-faq-caret { transform: rotate(180deg); }

.esb-faq-a { padding: 0 16px 16px; color:#444; }
.esb-faq-a[hidden] { display:none; }

.esb-faq-empty { padding: 16px; text-align:center; color:#666; border:1px dashed #e5e7eb; border-radius:12px; }
