.faq-section { margin-top: 2rem; margin-bottom: 3rem; }
.faq-header { text-align: center; margin-bottom: 2.5rem; }
.faq-header h2 { color: var(--primary-color); font-weight: 700; margin-bottom: 0.5rem; }
.faq-header p { color: var(--text-muted-light); font-size: 1.1rem; }
.faq-search { max-width: 700px; margin: 0 auto 3rem; }
.faq-categories { margin-bottom: 2rem; text-align: center; }
.faq-categories .btn { margin: 0.3rem; }
.faq-accordion .accordion-item { border: 1px solid var(--border-color); border-radius: var(--border-radius-base) !important; margin-bottom: 1rem; overflow: hidden; }
.faq-accordion .accordion-button { font-weight: 600; color: var(--text-dark); background-color: var(--white-color); box-shadow: none !important; border-bottom: none; padding: 1.25rem 1.5rem; }
.faq-accordion .accordion-button:not(.collapsed) { color: var(--primary-color); background-color: rgba(46, 78, 173, 0.05); border-bottom: 1px solid var(--border-color); }
.faq-accordion .accordion-button::after { flex-shrink: 0; width: 1.25rem; height: 1.25rem; margin-left: auto; content: ""; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236c757d'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); background-repeat: no-repeat; background-size: 1.25rem; transition: transform .2s ease-in-out; }
.faq-accordion .accordion-button:not(.collapsed)::after { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%232e4ead'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); transform: rotate(-180deg); }
.faq-accordion .accordion-body { padding: 1.5rem; background-color: var(--white-color); line-height: 1.7; color: var(--text-muted-light); }
.faq-accordion .accordion-body p:last-child { margin-bottom: 0; }
.faq-accordion .accordion-body a { color: var(--primary-color); font-weight: 500; }