/* FAQ Section */
.cvm-faq { background: var(--cvm-white); }

.cvm-section-header__image { margin-bottom: 20px; }
.cvm-section-header__image img { max-width: 280px; height: auto; margin: 0 auto; display: block; border-radius: 12px; }

.cvm-faq__list { max-width: 700px; margin: 0 auto; display: flex; flex-direction: column; gap: 12px; }

.cvm-faq__item {
    border: 1.5px solid var(--cvm-gray-200); border-radius: var(--cvm-radius-sm);
    overflow: hidden; transition: border-color 0.2s;
}
.cvm-faq__item.open { border-color: var(--cvm-blue-400); }

body .cvm-faq__question {
    display: flex; align-items: center; justify-content: space-between;
    padding: 18px 22px; cursor: pointer;
    font-weight: 600 !important; font-size: 0.93rem !important; color: var(--cvm-blue-900) !important;
    user-select: none; transition: color 0.2s;
    font-family: var(--cvm-font-body) !important;
}
.cvm-faq__question:hover { color: var(--cvm-blue-500); }

.cvm-faq__icon {
    width: 26px; height: 26px; border-radius: 8px;
    background: var(--cvm-blue-50); flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    color: var(--cvm-blue-500); font-size: 1.1rem; font-weight: 700;
    transition: transform 0.3s, background 0.3s;
}
.cvm-faq__item.open .cvm-faq__icon {
    transform: rotate(45deg);
    background: var(--cvm-blue-500); color: #fff;
}

.cvm-faq__answer {
    max-height: 0; overflow: hidden;
    transition: max-height 0.35s ease, padding 0.35s;
    padding: 0 22px;
}
body .cvm-faq__answer p {
    font-size: 0.9rem !important; color: var(--cvm-gray-600) !important; line-height: 1.7 !important; margin: 0;
    font-family: var(--cvm-font-body) !important;
}
.cvm-faq__item.open .cvm-faq__answer { max-height: 300px; padding: 0 22px 18px; }

/* Mobile */
@media (max-width: 600px) {
    .cvm-faq__list { gap: 8px; }
    body .cvm-faq__question { padding: 14px 16px; font-size: 0.88rem !important; }
    .cvm-faq__answer { padding: 0 16px; }
    .cvm-faq__item.open .cvm-faq__answer { padding: 0 16px 14px; }
}
