/* =========================================================
   Trisha Web - Digital Marketing FAQ
   Premium / Fully Dynamic
   Unique prefix: dm-faq-premium
   ========================================================= */

.dm-faq-premium{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    padding:88px 0 78px;
    background:#f8fbff;
    background-size:cover;
    background-repeat:no-repeat;
    color:#10234a;
}
.dm-faq-premium__shape{
    position:absolute;
    z-index:-1;
    border-radius:50%;
    pointer-events:none;
}
.dm-faq-premium__shape--one{
    width:510px;height:510px;
    top:-350px;left:-230px;
    background:rgba(23,105,255,.065);
}
.dm-faq-premium__shape--two{
    width:450px;height:450px;
    right:-250px;bottom:-300px;
    background:rgba(0,190,255,.055);
}

.dm-faq-premium__header{
    max-width:930px;
    margin:0 auto 38px;
    text-align:center;
}
.dm-faq-premium__badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 16px;
    border:1px solid #dce7f7;
    border-radius:999px;
    background:#fff;
    color:#1769ff;
    box-shadow:0 8px 24px rgba(16,35,74,.06);
    font-size:10px;
    font-weight:900;
    letter-spacing:1px;
}
.dm-faq-premium__header h2{
    margin:17px 0 12px;
    color:#091d45;
    font-size:clamp(34px,4.2vw,55px);
    line-height:1.08;
    font-weight:900;
    letter-spacing:-1.8px;
}
.dm-faq-premium__header p{
    max-width:800px;
    margin:0 auto;
    color:#68778f;
    font-size:15px;
    line-height:1.7;
}

.dm-faq-premium__layout{
    display:grid;
    grid-template-columns:310px minmax(0,1fr);
    gap:24px;
    align-items:start;
}
.dm-faq-premium__intro{
    position:sticky;
    top:95px;
    padding:25px 23px;
    border:1px solid #dfe8f6;
    border-radius:19px;
    background:#fff;
    box-shadow:0 12px 32px rgba(23,54,105,.065);
}
.dm-faq-premium__intro-icon{
    width:55px;height:55px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:19px;
    border-radius:15px;
    background:#1769ff;
    color:#fff;
    font-size:21px;
    box-shadow:0 10px 23px rgba(23,105,255,.2);
}
.dm-faq-premium__intro>span{
    color:#1769ff;
    font-size:9px;
    font-weight:900;
    letter-spacing:1px;
}
.dm-faq-premium__intro h3{
    margin:8px 0 9px;
    color:#10244b;
    font-size:21px;
    line-height:1.25;
    font-weight:900;
}
.dm-faq-premium__intro p{
    margin:0 0 20px;
    color:#718097;
    font-size:11px;
    line-height:1.65;
}
.dm-faq-premium__call{
    min-height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border-radius:9px;
    background:#eef5ff;
    color:#1769ff;
    text-decoration:none;
    font-size:10.5px;
    font-weight:900;
    transition:.2s ease;
}
.dm-faq-premium__call:hover{
    background:#1769ff;
    color:#fff;
}

.dm-faq-premium__list{
    display:flex;
    flex-direction:column;
    gap:10px;
}
.dm-faq-premium__item{
    overflow:hidden;
    border:1px solid #dfe8f6;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 25px rgba(23,54,105,.045);
    transition:border-color .2s ease,box-shadow .2s ease;
}
.dm-faq-premium__item.is-open{
    border-color:#bfd4f8;
    box-shadow:0 13px 30px rgba(23,54,105,.08);
}
.dm-faq-premium__question{
    width:100%;
    min-height:76px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:12px 18px;
    border:0;
    background:transparent;
    color:#10244b;
    text-align:left;
    cursor:pointer;
}
.dm-faq-premium__q-left{
    min-width:0;
    display:flex;
    align-items:center;
    gap:13px;
}
.dm-faq-premium__q-icon{
    flex:0 0 41px;
    width:41px;height:41px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:11px;
    background:#edf4ff;
    color:#1769ff;
    font-size:15px;
}
.dm-faq-premium__q-content{
    min-width:0;
}
.dm-faq-premium__q-content small{
    display:block;
    margin-bottom:3px;
    color:#1769ff;
    font-size:7px;
    font-weight:900;
    letter-spacing:.8px;
    text-transform:uppercase;
}
.dm-faq-premium__q-content strong{
    display:block;
    color:#142850;
    font-size:13px;
    line-height:1.4;
    font-weight:820;
}
.dm-faq-premium__plus{
    position:relative;
    flex:0 0 31px;
    width:31px;height:31px;
    border:1px solid #dce7f7;
    border-radius:50%;
    background:#f8fbff;
}
.dm-faq-premium__plus:before,
.dm-faq-premium__plus:after{
    content:"";
    position:absolute;
    left:50%;top:50%;
    width:10px;height:1.5px;
    background:#1769ff;
    transform:translate(-50%,-50%);
    transition:.2s ease;
}
.dm-faq-premium__plus:after{
    transform:translate(-50%,-50%) rotate(90deg);
}
.dm-faq-premium__item.is-open .dm-faq-premium__plus{
    background:#1769ff;
    border-color:#1769ff;
}
.dm-faq-premium__item.is-open .dm-faq-premium__plus:before,
.dm-faq-premium__item.is-open .dm-faq-premium__plus:after{
    background:#fff;
}
.dm-faq-premium__item.is-open .dm-faq-premium__plus:after{
    transform:translate(-50%,-50%) rotate(0deg);
}
.dm-faq-premium__answer{
    display:none;
    padding:0 65px 20px 72px;
}
.dm-faq-premium__answer>div{
    padding-top:14px;
    border-top:1px solid #edf1f7;
    color:#6c7b91;
    font-size:11.5px;
    line-height:1.75;
}

.dm-faq-premium__cta{
    display:flex;
    align-items:center;
    gap:16px;
    margin-top:20px;
    padding:20px 23px;
    border-radius:18px;
    background:linear-gradient(105deg,#09285f,#1769ff);
    box-shadow:0 19px 42px rgba(23,105,255,.17);
}
.dm-faq-premium__cta-icon{
    flex:0 0 50px;width:50px;height:50px;
    display:flex;align-items:center;justify-content:center;
    border-radius:14px;
    background:rgba(255,255,255,.13);
    color:#fff;
    font-size:20px;
}
.dm-faq-premium__cta-copy{
    flex:1;
    min-width:0;
}
.dm-faq-premium__cta-copy h3{
    margin:0 0 4px;
    color:#fff;
    font-size:19px;
    font-weight:850;
}
.dm-faq-premium__cta-copy p{
    margin:0;
    color:rgba(255,255,255,.74);
    font-size:10.5px;
}
.dm-faq-premium__cta-btn{
    min-height:43px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:0 17px;
    border-radius:9px;
    background:#fff;
    color:#125bd5;
    text-decoration:none;
    font-size:10.5px;
    font-weight:900;
    transition:.2s ease;
}
.dm-faq-premium__cta-btn:hover{
    color:#125bd5;
    transform:translateY(-2px);
}

@media(max-width:991.98px){
    .dm-faq-premium{padding:70px 0}
    .dm-faq-premium__layout{
        grid-template-columns:1fr;
    }
    .dm-faq-premium__intro{
        position:relative;
        top:auto;
    }
    .dm-faq-premium__intro-icon{
        display:none;
    }
    .dm-faq-premium__intro{
        padding:20px;
    }
    .dm-faq-premium__intro p{
        margin-bottom:15px;
    }
    .dm-faq-premium__cta{flex-wrap:wrap}
    .dm-faq-premium__cta-copy{flex:1 1 60%}
}
@media(max-width:575.98px){
    .dm-faq-premium{padding:55px 0}
    .dm-faq-premium__header h2{
        font-size:31px;
        letter-spacing:-.8px;
    }
    .dm-faq-premium__header p{font-size:14px}
    .dm-faq-premium__question{
        min-height:70px;
        padding:11px 12px;
    }
    .dm-faq-premium__q-left{
        gap:9px;
    }
    .dm-faq-premium__q-icon{
        flex-basis:36px;
        width:36px;height:36px;
        font-size:13px;
    }
    .dm-faq-premium__q-content strong{
        font-size:11.5px;
    }
    .dm-faq-premium__answer{
        padding:0 17px 17px 57px;
    }
    .dm-faq-premium__answer>div{
        font-size:10.5px;
    }
    .dm-faq-premium__cta{
        padding:19px;
        align-items:flex-start;
    }
    .dm-faq-premium__cta-copy{
        flex:1 1 calc(100% - 66px);
    }
    .dm-faq-premium__cta-btn{
        width:100%;
    }
}
