/*=========================================
            FAQ SECTION
=========================================*/

.faq-section{

    position: relative;

    padding: 110px 0;

    background: #06152d;

    overflow: hidden;

}

/*================ Background Effect ================*/

.faq-section::before{

    content: "";

    position: absolute;

    inset: 0;

    background:
    radial-gradient(circle at top left,
    rgba(0,140,255,.08),
    transparent 40%),

    radial-gradient(circle at bottom right,
    rgba(255,193,7,.08),
    transparent 40%);

    pointer-events: none;

}

/* Decorative Dots */

.faq-section::after{

    content: "";

    position: absolute;

    inset: 0;

    background-image:
        radial-gradient(circle,#1d7cff 2px,transparent 2px);

    background-size:70px 70px;

    opacity:.08;

    pointer-events:none;

}

/*================ Container ================*/

.faq-section .container{

    width:90%;

    max-width:1400px;

    margin:auto;

    position:relative;

    z-index:2;

}

/*================ Heading ================*/

.faq-section .section-heading{

    text-align:center;

    margin-bottom:70px;

}

.faq-section .tag{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:12px 28px;

    border:1px solid #1e90ff;

    border-radius:40px;

    color:#58b7ff;

    font-size:16px;

    font-weight:600;

    margin-bottom:20px;

    background:rgba(255,255,255,.03);

}

.faq-section .tag i{

    font-size:18px;

}

.faq-section .section-heading h2{

    font-size:58px;

    font-weight:800;

    color:#ffffff;

    line-height:1.2;

    margin-bottom:20px;

}

.faq-section .section-heading h2 span{

    color:#ffc107;

}

.faq-section .section-heading p{

    max-width:720px;

    margin:auto;

    color:#c8d2e2;

    font-size:19px;

    line-height:1.8;

}

/*================ Main Layout ================*/

.faq-wrapper{

    display:grid;

    grid-template-columns:420px 1fr;

    gap:60px;

    align-items:center;

}

/*================ Left Illustration ================*/

.faq-image{

    position:sticky;

    top:120px;

    text-align:center;

}

.faq-image img{

    width:100%;

    max-width:420px;

    animation:floatImage 4s ease-in-out infinite;

    filter:drop-shadow(0 25px 50px rgba(0,0,0,.35));

}

/* Floating Animation */

@keyframes floatImage{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-10px);

    }

    100%{

        transform:translateY(0);

    }

}

/*================ FAQ Right ================*/

.faq-content{

    display:flex;

    flex-direction:column;

    gap:22px;

}

/*==================================================
            FAQ CARD
==================================================*/

.faq-item{

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.08);

    border-radius:18px;

    overflow:hidden;

    transition:.4s;

    box-shadow:
    0 10px 30px rgba(0,0,0,.15);

}

.faq-item:hover{

    transform:translateY(-6px);

    border-color:#0099ff;

    box-shadow:
    0 20px 40px rgba(0,153,255,.18);

}

/*================ Question =================*/

.faq-question{

    width:100%;

    padding:22px 28px;

    border:none;

    outline:none;

    background:transparent;

    color:#fff;

    display:flex;

    justify-content:space-between;

    align-items:center;

    cursor:pointer;

}

.faq-left{

    display:flex;

    align-items:center;

    gap:18px;

}

.faq-left h3{

    font-size:20px;

    font-weight:600;

    text-align:left;

    line-height:1.5;

}

/*================ Icon =================*/

.faq-icon{

    width:60px;

    height:60px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:linear-gradient(135deg,#008cff,#004aad);

    color:#fff;

    font-size:24px;

    flex-shrink:0;

    transition:.4s;

}

.faq-item:hover .faq-icon{

    transform:rotateY(360deg);

}

/*================ Arrow =================*/

.arrow{

    width:42px;

    height:42px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:rgba(255,255,255,.08);

    color:#58b7ff;

    transition:.4s;

    flex-shrink:0;

}

/*================ Active =================*/

.faq-item.active{

    border-color:#0099ff;

    background:rgba(0,140,255,.08);

}

.faq-item.active .arrow{

    transform:rotate(180deg);

    background:#0099ff;

    color:#fff;

}

.faq-item.active .faq-icon{

    background:linear-gradient(135deg,#ffc107,#ff9800);

}

/*================ Answer =================*/

.faq-answer{

    max-height:0;

    overflow:hidden;

    transition:max-height .45s ease;

}

.faq-answer p{

    padding:0 30px 25px 105px;

    color:#d8e2ef;

    font-size:16px;

    line-height:1.9;

}

/*================ Active Answer =================*/

.faq-item.active .faq-answer{

    max-height:250px;

}

/*================ Hover =================*/

.faq-item:hover h3{

    color:#58b7ff;

}

.faq-item.active h3{

    color:#ffc107;

}

/*================ Shine Effect =================*/

.faq-item{

    position:relative;

}

.faq-item::before{

    content:"";

    position:absolute;

    left:-120%;

    top:0;

    width:80px;

    height:100%;

    background:linear-gradient(

        90deg,

        transparent,

        rgba(255,255,255,.18),

        transparent

    );

    transform:skewX(-20deg);

}

.faq-item:hover::before{

    animation:faqShine .9s;

}

@keyframes faqShine{

0%{

left:-120%;

}

100%{

left:140%;

}

}

/*==================================================
                CONTACT CTA
==================================================*/

.faq-contact{

    margin-top:70px;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

.contact-box{

    display:flex;

    align-items:center;

    gap:18px;

    padding:25px;

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(12px);

    border:1px solid rgba(255,255,255,.08);

    border-radius:18px;

    transition:.4s;

}

.contact-box:hover{

    transform:translateY(-8px);

    border-color:#00a8ff;

    box-shadow:0 15px 35px rgba(0,170,255,.18);

}

.contact-box i{

    width:65px;

    height:65px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:linear-gradient(135deg,#008cff,#0056d6);

    color:#fff;

    font-size:24px;

}

.contact-box h3{

    color:#fff;

    font-size:19px;

    margin-bottom:6px;

}

.contact-box p{

    color:#d7e1ef;

    font-size:15px;

}

/*================ Button =================*/

.faq-btn{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:12px;

    text-decoration:none;

    background:linear-gradient(135deg,#ffc107,#ff9800);

    color:#111;

    font-weight:700;

    border-radius:18px;

    transition:.4s;

    font-size:18px;

}

.faq-btn:hover{

    transform:translateY(-8px);

    box-shadow:0 15px 35px rgba(255,193,7,.35);

}

/*==================================================
                SCROLL ANIMATION
==================================================*/

.faq-image,
.faq-item,
.contact-box,
.faq-btn{
    opacity:1;
    transform:none;
}

/*==================================================
                RESPONSIVE
==================================================*/

@media(max-width:1200px){

.faq-wrapper{

grid-template-columns:1fr;

gap:50px;

}

.faq-image{

position:relative;

top:0;

max-width:420px;

margin:auto;

}

.faq-contact{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.faq-section{

padding:80px 0;

}

.section-heading h2{

font-size:36px;

}

.section-heading p{

font-size:16px;

}

.faq-question{

padding:18px;

}

.faq-left{

gap:14px;

}

.faq-icon{

width:50px;

height:50px;

font-size:20px;

}

.faq-left h3{

font-size:17px;

}

.faq-answer p{

padding:0 20px 20px 82px;

font-size:15px;

}

.faq-contact{

grid-template-columns:1fr;

}

.contact-box{

padding:20px;

}

.faq-btn{

padding:22px;

}

}