/*=========================================
        TESTIMONIAL SECTION
=========================================*/

.testimonial-section{
    width:100%;
    padding:40px 0;
    position:relative;
    overflow:hidden;

    background:
    radial-gradient(circle at left center,
    rgba(180,220,255,.45) 0%,
    transparent 42%),

    linear-gradient(180deg,#eef7ff,#f8fbff);
}


/* Container */

.testimonial-container{
    width:min(1320px,92%);
    margin:auto;
}


/*==============================
        HEADING
==============================*/

.testimonial-heading{
    text-align:center;
    margin-bottom:65px;
}

.testimonial-heading h2{

    font-size:44px;
    font-weight:700;
    color:#1f3158;
    margin-bottom:18px;
}

.heading-line{

    width:75px;
    height:4px;
    border-radius:30px;
    background:#2d82ff;
    margin:auto;
    margin-bottom:28px;
}

.testimonial-heading p{

    font-size:22px;
    font-weight:700;
    line-height:1.6;
    color:#3b3b3b;

    max-width:900px;
    margin:auto;
}



/*==============================
        SLIDER
==============================*/

.testimonial-slider{

    overflow:hidden;
    width:100%;
    position:relative;

}



/*==============================
        TRACK
==============================*/

.testimonial-track{

    display:flex;
    gap:28px;

}



/*==============================
        CARD
==============================*/

.testimonial-card{

    flex:0 0 calc((100% - 56px)/3);

    background:#ffffff;

    border-radius:18px;

    padding:24px;

    box-shadow:

    0 10px 28px rgba(20,70,150,.08);

    transition:.35s;

    min-height:230px;

    display:flex;

    flex-direction:column;

    justify-content:space-between;

}



/* Hover */

.testimonial-card:hover{

    transform:translateY(-10px);

    box-shadow:

    0 20px 45px rgba(40,95,180,.18);

}



/*==============================
        STARS
==============================*/

.testimonial-stars{

    display:flex;
    gap:6px;

    margin-bottom:10px;
}

.testimonial-stars i{

    color:#ffb400;

    font-size:18px;
}



/*==============================
        REVIEW
==============================*/

.testimonial-card p{

    font-size:15px;

    line-height:1.8;

    color:#555;

    font-style:italic;

    margin-bottom:13px;

}



/*==============================
        USER
==============================*/

.testimonial-user{

    display:flex;

    align-items:center;

    gap:18px;

}



/* User Icon */

.user-icon{

    width:50px;

    height:50px;

    display:flex;

    justify-content:center;

    align-items:center;

    flex-shrink:0;

}

.user-icon i{

    font-size:40px;

    color:#4b4b4b;

}



/*==============================
        NAME
==============================*/

.user-info h4{

    font-size:23px;

    font-weight:700;

    color:#233760;

    display:flex;

    align-items:center;

    gap:8px;

}



/* Verified */

.verify{

    color:#2d82ff;

    font-size:17px;

}



/*==============================
        DOTS
==============================*/

.testimonial-dots{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:10px;

    margin-top:45px;

}

.testimonial-dot{

    width:10px;

    height:10px;

    border-radius:50%;

    background:#cfcfcf;

    cursor:pointer;

    transition:.3s;

}

.testimonial-dot.active{

    width:28px;

    border-radius:50px;

    background:#2d82ff;

}

/*=========================================
            LARGE LAPTOP
=========================================*/

@media (max-width:1400px){

.testimonial-container{
    width:95%;
}

.testimonial-heading h2{
    font-size:40px;
}

.testimonial-heading p{
    font-size:20px;
}

.testimonial-card{
    padding:28px;
}

.testimonial-card p{
    font-size:18px;
}

.user-info h4{
    font-size:21px;
}

}


/*=========================================
                TABLET
=========================================*/

@media (max-width:991px){

.testimonial-section{
    padding:75px 0;
}

.testimonial-heading{
    margin-bottom:50px;
}

.testimonial-heading h2{
    font-size:34px;
}

.heading-line{
    width:70px;
    margin-bottom:20px;
}

.testimonial-heading p{
    font-size:19px;
    max-width:700px;
}

.testimonial-track{
    gap:20px;
}

.testimonial-card{

    flex:0 0 calc((100% - 20px)/2);

    min-height:270px;

    padding:24px;

}

.testimonial-stars{
    margin-bottom:18px;
}

.testimonial-stars i{
    font-size:18px;
}

.testimonial-card p{

    font-size:17px;

    line-height:1.7;

    margin-bottom:22px;

}

.user-icon{
    width:46px;
    height:46px;
}

.user-icon i{
    font-size:42px;
}

.user-info h4{
    font-size:19px;
}

.verify{
    font-size:15px;
}

.testimonial-dots{
    margin-top:35px;
}

}


/*=========================================
                MOBILE
=========================================*/

@media (max-width:767px){

.testimonial-section{

    padding:60px 0;

}

.testimonial-container{

    width:92%;

}

.testimonial-heading{

    margin-bottom:38px;

}

.testimonial-heading h2{

    font-size:28px;

    line-height:1.3;

}

.heading-line{

    width:60px;

    height:3px;

    margin-bottom:18px;

}

.testimonial-heading p{

    font-size:17px;

    line-height:1.7;

}

.testimonial-track{

    gap:16px;

}

.testimonial-card{

    flex:0 0 100%;

    min-height:auto;

    padding:22px;

    border-radius:16px;

}

.testimonial-stars{

    gap:5px;

    margin-bottom:18px;

}

.testimonial-stars i{

    font-size:17px;

}

.testimonial-card p{

    font-size:16px;

    line-height:1.8;

    margin-bottom:22px;

}

.testimonial-user{

    gap:14px;

}

.user-icon{

    width:44px;

    height:44px;

}

.user-icon i{

    font-size:40px;

}

.user-info h4{

    font-size:18px;

}

.verify{

    font-size:14px;

}

.testimonial-dots{

    gap:8px;

    margin-top:28px;

}

.testimonial-dot{

    width:9px;

    height:9px;

}

.testimonial-dot.active{

    width:24px;

}

}


/*=========================================
            SMALL MOBILE
=========================================*/

@media (max-width:480px){

.testimonial-section{

    padding:50px 0;

}

.testimonial-heading h2{

    font-size:24px;

}

.testimonial-heading p{

    font-size:15px;

}

.testimonial-card{

    padding:20px;

}

.testimonial-card p{

    font-size:15px;

}

.user-info h4{

    font-size:17px;

}

.testimonial-stars i{

    font-size:16px;

}

.user-icon i{

    font-size:36px;

}

}


















/*=========================================
        REVIEW SECTION
=========================================*/

.review-section{
    width:100%;
    padding:90px 0;
    background:#f6f9ff;
    position:relative;
}

.review-container{
    width:min(1320px,92%);
    margin:auto;
}

/*=========================================
        GRID
=========================================*/

.review-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:30px;

}

/*=========================================
        CARD
=========================================*/

.review-card{

    background:#ffffff;

    border-radius:18px;

    padding:32px;

    min-height:270px;

    display:flex;

    flex-direction:column;

    justify-content:space-between;

    box-shadow:
    0 12px 35px rgba(32,72,145,.08);

    transition:.35s ease;

}

/* Hover */

.review-card:hover{

    transform:translateY(-10px);

    box-shadow:
    0 20px 45px rgba(32,72,145,.16);

}

/*=========================================
        STARS
=========================================*/

.review-rating{

    display:flex;

    gap:6px;

    margin-bottom:18px;

}

.review-rating i{

    color:#FFC107;

    font-size:19px;

}

/*=========================================
        PARAGRAPH
=========================================*/

.review-text{

    font-size:18px;

    line-height:1.8;

    color:#444;

    margin-bottom:28px;

}

/*=========================================
        BOTTOM
=========================================*/

.review-bottom{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

/*=========================================
        USER
=========================================*/

.review-user{

    display:flex;

    align-items:center;

    gap:14px;

}

/*=========================================
        ICON
=========================================*/

.review-icon{

    width:50px;

    height:50px;

    border-radius:50%;

    border:3px solid #d6e3ff;

    display:flex;

    justify-content:center;

    align-items:center;

    flex-shrink:0;

}

.review-icon i{

    font-size:22px;

    color:#333;

}

/*=========================================
        NAME
=========================================*/

.review-name h4{

    font-size:29px;

    font-weight:700;

    color:#22355b;

    margin:0;

}

/*=========================================
        QUOTE ICON
=========================================*/

.review-quote{

    display:flex;

    align-items:center;

    justify-content:center;

}

.review-quote i{

    font-size:34px;

    color:#c7d8ff;

}

/*=========================================
        SCROLL ANIMATION
=========================================*/

.review-card{

    opacity:0;

    transform:translateY(60px);

}

.review-card.show{

    opacity:1;

    transform:translateY(0);

    transition:
    opacity .8s ease,
    transform .8s ease,
    box-shadow .35s ease;

}


/*=========================================
            LARGE LAPTOP
=========================================*/

@media (max-width:1400px){

.review-container{
    width:95%;
}

.review-grid{
    gap:26px;
}

.review-card{
    padding:28px;
}

.review-name h4{
    font-size:26px;
}

.review-text{
    font-size:17px;
}

}


/*=========================================
                TABLET
=========================================*/

@media (max-width:991px){

.review-section{
    padding:70px 0;
}

.review-container{
    width:94%;
}

.review-grid{

    grid-template-columns:1fr;

    gap:24px;

}

.review-card{

    min-height:auto;

    padding:26px;

}

.review-rating{

    margin-bottom:14px;

}

.review-rating i{

    font-size:18px;

}

.review-text{

    font-size:17px;

    line-height:1.7;

    margin-bottom:22px;

}

.review-icon{

    width:46px;

    height:46px;

}

.review-icon i{

    font-size:20px;

}

.review-name h4{

    font-size:22px;

}

.review-quote i{

    font-size:30px;

}

}


/*=========================================
                MOBILE
=========================================*/

@media (max-width:767px){

.review-section{

    padding:55px 0;

}

.review-container{

    width:92%;

}

.review-grid{

    gap:18px;

}

.review-card{

    padding:22px;

    border-radius:16px;

}

.review-rating{

    gap:5px;

    margin-bottom:12px;

}

.review-rating i{

    font-size:16px;

}

.review-text{

    font-size:15px;

    line-height:1.8;

    margin-bottom:20px;

}

.review-bottom{

    align-items:center;

}

.review-user{

    gap:10px;

}

.review-icon{

    width:42px;

    height:42px;

    border-width:2px;

}

.review-icon i{

    font-size:18px;

}

.review-name h4{

    font-size:18px;

}

.review-quote i{

    font-size:26px;

}

}


/*=========================================
            SMALL MOBILE
=========================================*/

@media (max-width:480px){

.review-section{

    padding:45px 0;

}

.review-card{

    padding:18px;

}

.review-rating i{

    font-size:15px;

}

.review-text{

    font-size:14px;

    line-height:1.7;

}

.review-icon{

    width:38px;

    height:38px;

}

.review-icon i{

    font-size:16px;

}

.review-name h4{

    font-size:16px;

}

.review-quote i{

    font-size:22px;

}

}