.faq{
    padding:100px 20px;
    background:linear-gradient(to bottom, #f7faff, #ffffff);
}

.container{
    max-width:900px;
    margin:auto;
}

.section-header{
    text-align:center;
    margin-bottom:50px;
}

.section-header h2{
    font-size:42px;
    font-family:'Poppins',sans-serif;
    font-weight:800;
}

.section-header h2 span{
    color:#1f5eff;
}

.section-header p{
    margin-top:10px;
    color:#666;
    font-size:18px;
}

.faq-list{
    display:flex;
    flex-direction:column;
    gap:15px;
}

.faq-item{
    background:#fff;
    border:1px solid #e8f0ff;
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 10px 25px rgba(0,0,0,0.05);
    transition:.3s ease;
}

.faq-question{
    width:100%;
    padding:20px;
    background:none;
    border:none;

    display:flex;
    justify-content:space-between;
    align-items:center;

    font-size:16px;
    font-weight:600;
    cursor:pointer;

    color:#222;
    font-family:'Poppins',sans-serif;
}

.faq-question span{
    font-size:22px;
    color:#1f5eff;
    transition:.3s ease;
}

.faq-answer{
    max-height:0;
    overflow:hidden;
    transition:max-height .4s ease, padding .4s ease;
    padding:0 20px;
    color:#666;
    font-size:15px;
    line-height:1.6;
}

.faq-item.active .faq-answer{
    max-height:200px;
    padding:0 20px 20px;
}

.faq-item.active .faq-question span{
    transform:rotate(45deg);
}

.fade-up{
    opacity:0;
    transform:translateY(40px);
    transition:all .8s ease;
}

.fade-up.active{
    opacity:1;
    transform:translateY(0);
}

@media(max-width:768px){
    .section-header h2{
        font-size:30px;
    }
}