/*====================================
FAQ
====================================*/

.faqPage{
    background:#f7fafc;
}

.faqContainer{
    width:min(1200px,calc(100% - 40px));
    margin:auto;
}

/*==========================
Intro
==========================*/

.faqIntro{
    padding:90px 0;
    background:#fff;
}

.faqIntroGrid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:center;
}

.faqEn{
    display:block;
    color:#0789c8;
    font-size:12px;
    font-weight:700;
    letter-spacing:.25em;
    margin-bottom:16px;
}

.faqIntroText h2{
    font-size:44px;
    color:#183241;
    line-height:1.3;
    margin-bottom:24px;
}

.faqIntroText p{
    color:#5c6d78;
    line-height:2;
    font-size:17px;
}

.faqIntroImage img{
    width:100%;
    display:block;
    border-radius:18px;
}


/*==========================
FAQ
==========================*/

.faqArea{
    padding:90px 0;
}

.faqGrid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
}

.faqItem{
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 12px 30px rgba(0,0,0,.06);
    transition:.35s;
}

.faqItem.active{
    box-shadow:0 20px 45px rgba(0,0,0,.10);
}

.faqQuestion{
    width:100%;
    display:flex;
    align-items:center;
    gap:20px;
    padding:28px;
    border:0;
    background:#fff;
    cursor:pointer;
    text-align:left;
    position:relative;
}

.faqQuestion::after{
    content:"+";
    position:absolute;
    right:28px;
    top:50%;
    transform:translateY(-50%);
    font-size:30px;
    color:#0789c8;
    transition:.35s;
}

.faqItem.active .faqQuestion::after{
    transform:translateY(-50%) rotate(45deg);
}

.faqQuestion span{
    min-width:58px;
    font-size:34px;
    font-weight:800;
    color:#d8e5ed;
    transition:.35s;
}

.faqItem.active .faqQuestion span{
    color:#0789c8;
}

.faqQuestion h3{
    flex:1;
    font-size:20px;
    color:#183241;
    line-height:1.5;
    padding-right:45px;
}

.faqAnswer{
    display:none;
    padding:0 28px 28px 106px;
}

.faqItem.active .faqAnswer{
    display:block;
}

.faqAnswer p{
    color:#5c6d78;
    line-height:2;
    font-size:16px;
}

.faqItem.active{
    border-left:5px solid #0789c8;
}


/*==========================
Responsive
==========================*/

@media(max-width:1024px){

    .faqIntroText h2{
        font-size:38px;
    }

    .faqGrid{
        gap:20px;
    }

}

@media(max-width:900px){

    .faqIntroGrid{
        grid-template-columns:1fr;
    }

    .faqGrid{
        grid-template-columns:1fr;
    }

}

@media(max-width:768px){

    .faqIntro{
        padding:70px 0;
    }

    .faqArea{
        padding:70px 0;
    }

    .faqIntroText h2{
        font-size:32px;
    }

    .faqQuestion{
        padding:24px;
        gap:16px;
    }

    .faqQuestion span{
        min-width:46px;
        font-size:28px;
    }

    .faqQuestion h3{
        font-size:18px;
        padding-right:40px;
    }

    .faqAnswer{
        padding:0 24px 24px 86px;
    }

}

@media(max-width:480px){

    .faqContainer{
        width:calc(100% - 30px);
    }

    .faqIntro{
        padding:60px 0;
    }

    .faqArea{
        padding:60px 0;
    }

    .faqIntroText h2{
        font-size:28px;
    }

    .faqIntroText p{
        font-size:15px;
    }

    .faqQuestion{
        padding:20px;
        gap:14px;
    }

    .faqQuestion span{
        min-width:38px;
        font-size:24px;
    }

    .faqQuestion h3{
        font-size:16px;
        padding-right:36px;
    }

    .faqQuestion::after{
        right:20px;
        font-size:26px;
    }

    .faqAnswer{
        padding:0 20px 20px 72px;
    }

    .faqAnswer p{
        font-size:15px;
    }

}