/* Manual FAQ carousel: content stays readable without JavaScript. */
#faq .faq-carousel { position: relative; }
#faq .faq-slider:not(.swiper-initialized) > .swiper-wrapper { display: block; }
#faq .faq-slider:not(.swiper-initialized) .faq-slide { margin-bottom: 30px; }
#faq .faq-controls[hidden] { display: none; }
#faq .faq-controls {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;
    margin-bottom: 20px;
}
#faq .faq-controls button {
    width: 44px;
    height: 44px;
    border: 1px solid var(--divider-color);
    border-radius: 50%;
    background: var(--secondary-color);
    color: var(--primary-color);
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}
#faq .faq-controls button:hover:not(:disabled) { border-color: var(--accent-color); color: var(--accent-color); }
#faq .faq-controls button:disabled { opacity: .35; cursor: default; }
#faq .faq-controls button:focus-visible,
#faq .accordion-button:focus-visible { outline: 2px solid var(--accent-color); outline-offset: -3px; }
#faq .faq-position { font-size: 14px; font-variant-numeric: tabular-nums; }
#faq .faq-topic { font-size: 20px; line-height: 1.4; margin: 0 0 20px; }
#faq .accordion-item { margin-bottom: 14px; }
#faq .accordion-item:last-child { margin-bottom: 0; }
#faq .accordion-body { font-size: 15px; line-height: 1.75; }
#faq .accordion-body a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 991px) {
    #faq .faq-controls { margin-bottom: 14px; }
    #faq .faq-topic { font-size: 18px; margin-bottom: 16px; }
}
@media (prefers-reduced-motion: reduce) {
    #faq .swiper-wrapper, #faq .collapsing { transition-duration: 0s !important; }
}
