/* Section 2 - FAQ Container Styles */
.section-2-content {
    width: 100%;
    max-width: 1920px;
    min-height: 1310px;
    margin: 0 auto;
    position: relative;
    padding: 0;
}

@media screen and (max-width: 1920px) {
    .section-2-content {
        min-height: 68.23vw; /* 1310/1920 */
    }
}

.faq-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 100px 20px 300px 20px; /* Increased bottom padding 3x (was 100px) */
    position: relative;
}

.faq-item {
    margin-bottom: 15px;
    background-image: url('../切图/FAQ页面/问题-1.png');
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% 100%; /* Stretch to fit content height */
    border-radius: 0;
    overflow: hidden;
    /* transition: all 0.3s ease; Removed to prevent background lag */
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    height: auto;
    min-height: auto;
    padding-bottom: 15px; /* Default bottom padding */
}

.faq-item.active {
    background-image: url('../切图/FAQ页面/问题-2.png');
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% 100%;
    padding-bottom: 40px; /* Extra padding when expanded */
}

.faq-question {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 20px 30px; /* Reduced top padding to move text up */
    padding-bottom: 25px;
    cursor: pointer;
    background: transparent;
    transition: all 0.3s ease;
    position: relative;
    z-index: 1;
}

.faq-question-text {
    font-family: 'JiYingHuiPianYuan', sans-serif;
    font-size: 38px;
    font-weight: normal;
    color: #000000;
    line-height: 1.5;
    position: relative;
    display: block; /* Changed from inline-block to block */
    text-align: left;
    flex: 1;
    max-width: calc(100% - 80px); /* Leave space for toggle button */
    word-wrap: break-word;
    overflow-wrap: break-word;
    margin-bottom: 0;
    padding-bottom: 15px; /* Add bottom padding for blue line space */
    user-select: text; /* Allow text selection */
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
}

/* Blue line under question text */
.faq-question-text::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0; /* Changed to 0, line sits at padding-bottom boundary */
    width: 150px;
    height: 3px;
    background: #0078D7;
}

.faq-toggle {
    width: 33px;
    height: 16px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
    flex-shrink: 0;
    cursor: pointer;
    margin-left: 20px;
    margin-top: 5px; /* Align with text */
}

/* Triangle pointing down (default - collapsed state) */
.faq-toggle::before {
    content: '';
    width: 0;
    height: 0;
    border-left: 16.5px solid transparent;
    border-right: 16.5px solid transparent;
    border-top: 16px solid #1E2543;
    transition: all 0.3s ease;
}

/* Triangle pointing up (expanded state) */
.faq-item.active .faq-toggle::before {
    border-top: none;
    border-bottom: 16px solid #1E2543;
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out, padding 0.2s ease-out, opacity 0.15s ease-out;
    background: transparent;
    position: relative;
    z-index: 1;
    opacity: 0;
}

.faq-item.active .faq-answer {
    max-height: 1000px;
    padding: 0 30px 25px 30px;
    opacity: 1;
    transition: max-height 0.3s ease-in, padding 0.3s ease-in, opacity 0.2s ease-in;
}

.faq-answer p {
    font-family: 'JiYingHuiPianYuan', sans-serif;
    font-size: 25px;
    font-weight: normal;
    color: #000000;
    line-height: 42px;
    margin: 0;
    padding-top: 20px;
}

/* Responsive */
@media screen and (max-width: 1600px) {
    .faq-container {
        padding: 5.21vw 1.04vw 15.63vw 1.04vw; /* Bottom padding 3x */
    }
    
    .faq-item {
        margin-bottom: 0.78vw; /* 15/1920 - reduced to half */
    }
    
    .faq-question {
        padding-top: 1.04vw; /* 20/1920 */
        padding-right: 1.56vw; /* 30/1920 */
        padding-bottom: 1.3vw; /* 25/1920 */
        padding-left: 1.56vw; /* 30/1920 */
    }
    
    .faq-question-text {
        font-size: clamp(28px, 1.98vw, 38px); /* Responsive with min/max */
        padding-bottom: 0.78vw; /* 15/1920 */
    }
    
    .faq-question-text::after {
        width: 7.81vw; /* 150/1920 */
        max-width: 150px;
        height: 0.16vw; /* 3/1920 */
        max-height: 3px;
        bottom: 0; /* Keep at 0 */
    }
    
    .faq-toggle {
        width: 33px;
        height: 16px;
    }
    
    .faq-item.active .faq-answer {
        padding: 0 1.56vw 1.3vw 1.56vw;
    }
    
    .faq-answer p {
        font-size: clamp(20px, 1.3vw, 25px); /* 25/1920 */
        line-height: clamp(34px, 2.19vw, 42px); /* 42/1920 */
        padding-top: 1.04vw;
    }
}

@media screen and (max-width: 768px) {
    .faq-container {
        padding: 40px 15px;
    }
    
    .faq-question-text {
        font-size: 28px;
    }
    
    .faq-answer p {
        font-size: 20px;
        line-height: 34px;
    }
}

