.faq-section-title {
        font-size: 0.75rem;
        font-weight: 700;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: #005ea6;
        margin: 40px 0 16px;
        padding-bottom: 6px;
        border-bottom: 2px solid #e0ecf7;
    }
    .faq-section-title:first-child { margin-top: 0; }
    details {
        border: 1px solid #e5e5e5;
        border-radius: 6px;
        margin-bottom: 10px;
        background: #fafafa;
        transition: background 0.15s;
    }
    details[open] {
        background: #fff;
        box-shadow: 0 2px 8px rgba(0,0,0,0.07);
    }
    summary {
        padding: 16px 20px;
        cursor: pointer;
        font-weight: 600;
        font-size: 0.97rem;
        color: #1a1a1a;
        list-style: none;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 12px;
    }
    summary::-webkit-details-marker { display: none; }
    summary::after {
        content: '+';
        font-size: 1.3rem;
        font-weight: 400;
        color: #005ea6;
        flex-shrink: 0;
        line-height: 1;
    }
    details[open] summary::after { content: '−'; }
    .faq-answer {
        padding: 0 20px 18px;
        font-size: 0.95rem;
        color: #444;
        line-height: 1.7;
    }
    .faq-answer a {
        color: #005ea6;
        text-decoration: none;
    }
    .faq-answer a:hover { text-decoration: underline; }