.faq-wrapper { max-width:48rem; margin:0 auto; }
.faq-list { display:flex; flex-direction:column; gap:1rem; }
.faq-item { background:var(--card); border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; transition:border-color .3s; }
.faq-item.active { border-color:rgba(255,107,0,.5); }
.faq-question { font-size: 1rem; width:100%; display:flex; align-items:center; justify-content:space-between; padding:1.5rem; background:none; border:none; text-align:left; font-weight:600; color:var(--foreground); cursor:pointer; transition:color .3s; gap:1rem; }
.faq-question:hover { color:var(--primary); }
.faq-icon { width:1.5rem; height:1.5rem; flex-shrink:0; transition:transform .3s; }
.faq-item.active .faq-icon { transform:rotate(180deg); }
.faq-answer { max-height:0; overflow:hidden; transition:max-height .3s ease; }
.faq-item.active .faq-answer { max-height:500px; }
.faq-answer-content { padding:0 1.5rem 1.5rem; color:var(--muted-foreground); line-height:1.8; }
