/*==================================================
    FAQ PREMIUM - L'Atelier ELF'IK
==================================================*/

.faq-hero{

    padding:120px 0 70px;

    background:linear-gradient(180deg,var(--color-background) 0%,var(--color-surface) 100%);

    text-align:center;

}

.faq-hero h1{

    font-size:clamp(2.2rem,5vw,3.5rem);

    margin-bottom:20px;

    color:var(--color-primary);

}

.faq-hero p{

    max-width:760px;

    margin:auto;

    line-height:1.8;

    color:var(--color-text-light);

}

.faq{

    padding:80px 0;

}

.faq-search{

    margin:0 auto 60px;

    max-width:700px;

}

#faqSearch{

    width:100%;

    padding:18px 24px;

    border-radius:50px;

    border:2px solid var(--color-border);

    background:var(--color-surface);

    font-size:16px;

    transition:.3s;

}

#faqSearch:focus{

    outline:none;

    border-color:var(--color-primary);

    box-shadow:0 10px 30px rgba(0,0,0,.08);

}

.faq-category{

    margin-bottom:60px;

}

.faq-category h2{

    margin-bottom:25px;

    color:var(--color-primary);

    font-size:1.8rem;

}

.faq-item{

    background:var(--color-surface);

    border-radius:18px;

    overflow:hidden;

    margin-bottom:18px;

    border:1px solid var(--color-border);

    box-shadow:0 8px 25px rgba(0,0,0,.05);

    transition:.3s;

}

.faq-item:hover{

    transform:translateY(-2px);

    box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.faq-question{

    width:100%;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:24px 30px;

    cursor:pointer;

    border:none;

    background:none;

    font-size:18px;

    font-weight:600;

    text-align:left;

}

.faq-question span:first-child{

    flex:1;

}

.faq-icon{

    width:34px;

    height:34px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:var(--color-primary);

    color:#fff;

    font-size:22px;

    transition:.35s;

    flex-shrink:0;

}

.faq-answer{

    max-height:0;

    overflow:hidden;

    transition:max-height .45s ease;

    background:var(--color-surface);

}

.faq-answer p{

    padding:0 30px 22px;

    line-height:1.9;

    color:var(--color-text-light);

}

.faq-answer ul{

    padding:0 50px 20px;

}

.faq-answer li{

    margin-bottom:8px;

    color:var(--color-text-light);

}

.faq-item.active .faq-answer{

    max-height:1000px;

}

.faq-item.active .faq-icon{

    transform:rotate(45deg);

}

.faq-contact{

    margin-top:90px;

    padding:60px;

    text-align:center;

    background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));

    color:#fff;

    border-radius:25px;

}

.faq-contact h2{

    margin-bottom:15px;

    color:#fff;

}

.faq-contact p{

    max-width:650px;

    margin:0 auto 30px;

    opacity:.9;

}

.faq-contact .btn{

    display:inline-block;

    padding:16px 34px;

    background:var(--color-background);

    color:var(--color-primary);

    border-radius:50px;

    font-weight:700;

    text-decoration:none;

    transition:.3s;

}

.faq-contact .btn:hover{

    transform:translateY(-3px);

    box-shadow:0 15px 35px rgba(0,0,0,.2);

}

@media(max-width:768px){

    .faq-hero{

        padding:90px 0 50px;

    }

    .faq-question{

        padding:20px;

        font-size:16px;

    }

    .faq-answer p{

        padding:0 20px 20px;

    }

    .faq-answer ul{

        padding:0 40px 20px;

    }

    .faq-contact{

        padding:40px 25px;

    }

}
