/* ============================================================
   Trisha Web — Contact FAQ
============================================================ */

.tw-contact-faq{
    --tw-cfaq-bg:none;
    --tw-cfaq-overlay:.04;
    --tw-cfaq-position:center center;

    position:relative;
    overflow:hidden;
    isolation:isolate;
    padding:90px 0;

    background:
        radial-gradient(circle at 0 10%,rgba(13,110,253,.08),transparent 28%),
        #f7faff;
}

.tw-contact-faq__bg{
    position:absolute;
    inset:0;
    z-index:-2;
    background:var(--tw-cfaq-bg) center/cover no-repeat;
    background-position:var(--tw-cfaq-position);
}

.tw-contact-faq:after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:rgba(247,250,255,var(--tw-cfaq-overlay));
}

.tw-contact-faq>.container{
    position:relative;
    z-index:1;
}

.tw-contact-faq__header{
    max-width:760px;
    margin:0 auto 45px;
    text-align:center;
}

.tw-contact-faq__badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 15px;
    margin-bottom:15px;

    border:1px solid rgba(13,110,253,.16);
    border-radius:999px;

    background:#fff;
    color:#0d6efd;

    font-size:11px;
    font-weight:800;
    letter-spacing:1.5px;
    text-transform:uppercase;
}

.tw-contact-faq__header h2{
    margin:0;
    color:#071d49;

    font-size:clamp(32px,4vw,50px);
    line-height:1.1;
    font-weight:800;
    letter-spacing:-1px;
}

.tw-contact-faq__header p{
    max-width:680px;
    margin:16px auto 0;

    color:#697386;
    font-size:16px;
    line-height:1.8;
}

.tw-contact-faq__list{
    max-width:920px;
    margin:0 auto;
}

.tw-contact-faq__item{
    margin-bottom:13px;

    border:1px solid #e4eaf2;
    border-radius:17px;

    background:rgba(255,255,255,.96);
    box-shadow:0 8px 28px rgba(20,45,90,.05);

    overflow:hidden;
}

.tw-contact-faq__item summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;

    min-height:70px;
    padding:19px 23px;

    cursor:pointer;
    list-style:none;

    color:#071d49;
    font-size:15px;
    font-weight:800;
}

.tw-contact-faq__item summary::-webkit-details-marker{
    display:none;
}

.tw-contact-faq__item summary>span{
    display:flex;
    align-items:center;
    gap:13px;
}

.tw-contact-faq__item summary>span>i{
    color:#0d6efd;
    font-size:17px;
}

.tw-contact-faq__plus{
    flex:0 0 30px;

    width:30px;
    height:30px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;
    background:#edf4ff;
    color:#0d6efd;

    font-size:11px;

    transition:transform .2s ease,background .2s ease,color .2s ease;
}

.tw-contact-faq__item[open] .tw-contact-faq__plus{
    transform:rotate(45deg);
    background:#0d6efd;
    color:#fff;
}

.tw-contact-faq__answer{
    padding:0 23px 22px 55px;
}

.tw-contact-faq__answer p{
    margin:0;

    color:#697386;
    font-size:14px;
    line-height:1.8;
}

.tw-contact-faq__cta{
    max-width:920px;
    margin:28px auto 0;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;

    padding:21px 24px;

    border-radius:18px;
    background:linear-gradient(135deg,#071d49,#103e88);
    box-shadow:0 18px 40px rgba(7,29,73,.15);
}

.tw-contact-faq__cta>div{
    display:flex;
    align-items:center;
    gap:14px;
}

.tw-contact-faq__cta-icon{
    width:44px;
    height:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex:0 0 44px;

    border-radius:13px;
    background:rgba(255,255,255,.12);
    color:#fff;
}

.tw-contact-faq__cta strong,
.tw-contact-faq__cta div div span{
    display:block;
}

.tw-contact-faq__cta strong{
    color:#fff;
    font-size:15px;
}

.tw-contact-faq__cta div div span{
    margin-top:3px;
    color:rgba(255,255,255,.68);
    font-size:12px;
}

.tw-contact-faq__cta>a{
    display:inline-flex;
    align-items:center;
    gap:9px;

    flex-shrink:0;

    padding:12px 18px;
    border-radius:10px;

    background:#fff;
    color:#0d6efd;

    font-size:12px;
    font-weight:800;
    text-decoration:none;
}

.tw-contact-faq__cta>a:hover{
    color:#0757c9;
}

@media(max-width:767.98px){
    .tw-contact-faq{
        padding:65px 0;
    }

    .tw-contact-faq__header{
        margin-bottom:32px;
    }

    .tw-contact-faq__header h2{
        font-size:32px;
    }

    .tw-contact-faq__item summary{
        padding:17px;
        font-size:14px;
    }

    .tw-contact-faq__answer{
        padding:0 17px 20px 47px;
    }

    .tw-contact-faq__cta{
        flex-direction:column;
        align-items:flex-start;
    }

    .tw-contact-faq__cta>a{
        width:100%;
        justify-content:center;
    }
}

@media(max-width:420px){
    .tw-contact-faq__header h2{
        font-size:28px;
    }

    .tw-contact-faq__item summary>span{
        gap:9px;
    }
}
