/* =========================
   MAIN REVIEW LATEST
========================= */

.main_review_latest{
    position:relative;
    width:100%;
    overflow:visible;
    padding:6px 0;
}

.mainReviewSwiper{
    overflow:hidden;
    padding:6px 0;
}

.mainReviewSwiper .swiper-wrapper{
    align-items:stretch;
}

.mainReviewSwiper .swiper-slide{
    height:auto;
    padding:0 1px;
    box-sizing:border-box;
}

.review_card{
    display:block;
    height:100%;
    border:1px solid var(--line);
    border-radius:30px;
    background:#fff;
    overflow:hidden;
    box-sizing:border-box;
    transition:transform .3s ease, border-color .3s ease;
}

.review_card:hover{
    transform:translateY(-6px);
    border-color:rgba(16,183,220,.28);
}

.review_img{
    position:relative;
    overflow:hidden;
    aspect-ratio:4 / 3;
    background:#F2F5FB;
}

.review_img img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .6s ease;
}

.review_card:hover .review_img img{
    transform:scale(1.06);
}

.review_txt{
    padding:30px;
}

.review_cate{
    display:block;
    margin-bottom:15px;
    color:var(--sub);
    font-size:14px;
    font-weight:800;
    letter-spacing:0.22em;
}

.review_txt h3{
    overflow:hidden;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;

    color:var(--main);
    font-size:24px;
    font-weight:800;
    line-height:1.45;
    letter-spacing:-0.02em;
}

.review_txt p{
    overflow:hidden;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;

    min-height:58px;
    margin-top:18px;

    color:var(--gray);
    font-size:17px;
    font-weight:400;
    line-height:1.7;
    letter-spacing:-0.02em;
}

.review_txt em{
    display:block;
    margin-top:25px;
    color:#94A3B8;
    font-size:15px;
    font-style:normal;
    font-weight:700;
    letter-spacing:-0.02em;
}

.review_control{
    position:absolute;
    left:0;
    bottom:0;

    display:flex;
    align-items:center;
    gap:20px;
}

.review_prev,
.review_next{
    width:52px;
    height:52px;
    border:1px solid var(--line);
    border-radius:50%;
    background:#fff;

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

    color:var(--main);
    font-size:16px;

    transition:all .25s ease;
}

.review_prev:hover,
.review_next:hover{
    border-color:var(--sub);
    background:var(--sub);
    color:#fff;
}

.review_pagination{
    position:relative !important;
    inset:auto !important;

    display:flex;
    align-items:center;
    gap:8px;
}

.review_pagination .swiper-pagination-bullet{
    width:9px;
    height:9px;
    margin:0 !important;
    border-radius:50px;
    background:#CBD5E1;
    opacity:1;
    transition:all .25s ease;
}

.review_pagination .swiper-pagination-bullet-active{
    width:32px;
    background:var(--sub);
}

.review_empty{
    display:flex;
    align-items:center;
    justify-content:center;

    min-height:420px;

    border:1px solid var(--line);
    border-radius:30px;
    background:#F8FAFD;

    color:var(--gray);
    font-size:17px;
    font-weight:600;
    text-align:center;
}

@media (max-width:1200px){

    .review_txt{
        padding:25px;
    }

    .review_txt h3{
        font-size:22px;
    }

    .review_txt p{
        font-size:16px;
    }

}

@media (max-width:768px){

    .review_txt{
        padding:22px;
    }

    .review_txt h3{
        font-size:20px;
    }

    .review_txt p{
        min-height:auto;
        margin-top:15px;
        font-size:15px;
        line-height:1.65;
    }

    .review_txt em{
        margin-top:20px;
        font-size:14px;
    }

    .review_control{
        gap:15px;
    }

    .review_prev,
    .review_next{
        width:46px;
        height:46px;
        font-size:14px;
    }

}