/*=========================================
            Review Section
=========================================*/

.rvw-section{

    padding:100px 0;

    background:#f8f9fb;

}

/*=========================================
            Section Heading
=========================================*/

.rvw-heading{

    max-width:800px;

    margin:0 auto 60px;

}

.rvw-subtitle{

    display:inline-block;

    color:#FDB913;

    font-size:16px;

    font-weight:600;

    text-transform:uppercase;

    letter-spacing:1px;

    margin-bottom:15px;

}

.rvw-title{

    font-size:42px;

    font-weight:700;

    color:#222222;

    line-height:1.3;

    margin-bottom:20px;

}

.rvw-description{

    font-size:16px;

    color:#666666;

    line-height:1.9;

    margin:0;

}

/*=========================================
            Rating Summary
=========================================*/

.rvw-summary{

    background:#ffffff;

    border-radius:20px;

    padding:35px 40px;

    margin-bottom:60px;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:30px;

}

.rvw-summary-left h3{

    font-size:56px;

    font-weight:700;

    color:#222222;

    margin-bottom:10px;

}

.rvw-summary-left p{

    margin:10px 0 0;

    color:#666666;

    font-size:15px;

}

/*=========================================
            Stars
=========================================*/

.rvw-stars{

    display:flex;

    align-items:center;

}

.rvw-stars i{

    color:#FDB913;

    font-size:18px;

    margin-right:4px;

}

/*=========================================
        Google Review Button
=========================================*/

.rvw-google-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    background:#4285F4;

    color:#ffffff;

    text-decoration:none;

    padding:15px 28px;

    border-radius:50px;

    font-size:15px;

    font-weight:600;

    transition:.35s;

}

.rvw-google-btn i{

    font-size:20px;

    margin-right:10px;

}

.rvw-google-btn:hover{

    background:#2F6FDB;

    color:#ffffff;

    text-decoration:none;

    transform:translateY(-3px);

    box-shadow:0 10px 25px rgba(66,133,244,.30);

}

/*=========================================
            Review Card
=========================================*/

.rvw-card{

    background:#ffffff;

    border-radius:20px;

    padding:30px;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    transition:.4s;

    height:100%;

    position:relative;

}

.rvw-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 45px rgba(0,0,0,.14);

}

/*=========================================
            Top Area
=========================================*/

.rvw-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:20px;

}

/*=========================================
            User
=========================================*/

.rvw-user{

    display:flex;

    align-items:center;

}

.rvw-user img{

    width:65px;

    height:65px;

    border-radius:50%;

    object-fit:cover;

    margin-right:15px;

}

.rvw-user h4{

    font-size:20px;

    font-weight:600;

    color:#222222;

    margin:0 0 6px;

}

.rvw-user span{

    color:#777777;

    font-size:14px;

}

/*=========================================
        Google Icon
=========================================*/

.rvw-google-icon{

    font-size:30px;

    color:#4285F4;

}

/*=========================================
            Review Text
=========================================*/

.rvw-card p{

    margin-top:20px;

    color:#666666;

    line-height:1.9;

    font-size:15px;

}

/*=========================================
        Decorative Top Border
=========================================*/

.rvw-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:0;

    height:4px;

    background:#FDB913;

    transition:.4s;

}

.rvw-card:hover::before{

    width:100%;

}


/*=========================================
            Large Desktop
=========================================*/

@media (min-width:1400px){

    .rvw-title{

        font-size:46px;

    }

}

/*=========================================
                Laptop
=========================================*/

@media (max-width:1199px){

    .rvw-section{

        padding:90px 0;

    }

    .rvw-title{

        font-size:38px;

    }

    .rvw-summary{

        padding:30px 35px;

    }

    .rvw-summary-left h3{

        font-size:50px;

    }

    .rvw-card{

        padding:25px;

    }

}

/*=========================================
                Tablet
=========================================*/

@media (max-width:991px){

    .rvw-section{

        padding:80px 0;

    }

    .rvw-heading{

        margin-bottom:50px;

    }

    .rvw-title{

        font-size:34px;

    }

    .rvw-description{

        font-size:15px;

    }

    .rvw-summary{

        flex-direction:column;

        text-align:center;

        padding:30px;

    }

    .rvw-summary-left{

        width:100%;

    }

    .rvw-stars{

        justify-content:center;

    }

    .rvw-google-btn{

        width:100%;

        max-width:320px;

    }

    .rvw-card{

        padding:24px;

    }

    .rvw-user h4{

        font-size:18px;

    }

}

/*=========================================
                Mobile
=========================================*/

@media (max-width:767px){

    .rvw-section{

        padding:70px 0;

    }

    .rvw-heading{

        margin-bottom:40px;

    }

    .rvw-title{

        font-size:30px;

        line-height:1.4;

    }

    .rvw-subtitle{

        font-size:15px;

    }

    .rvw-description{

        font-size:15px;

        line-height:1.8;

    }

    .rvw-summary{

        margin-bottom:40px;

        padding:25px;

    }

    .rvw-summary-left h3{

        font-size:44px;

    }

    .rvw-summary-left p{

        font-size:14px;

    }

    .rvw-google-btn{

        width:100%;

        padding:14px;

        font-size:15px;

    }

    .rvw-google-btn i{

        font-size:18px;

    }

    .rvw-card{

        padding:22px;

    }

    .rvw-top{

        flex-direction:column;

        align-items:flex-start;

        gap:15px;

    }

    .rvw-google-icon{

        align-self:flex-end;

        font-size:28px;

    }

    .rvw-user img{

        width:60px;

        height:60px;

    }

    .rvw-user h4{

        font-size:18px;

    }

    .rvw-card p{

        font-size:15px;

        line-height:1.8;

    }

}

/*=========================================
            Small Mobile
=========================================*/

@media (max-width:575px){

    .rvw-section{

        padding:60px 0;

    }

    .rvw-heading{

        margin-bottom:35px;

    }

    .rvw-title{

        font-size:27px;

    }

    .rvw-description{

        font-size:14px;

    }

    .rvw-summary{

        padding:22px;

    }

    .rvw-summary-left h3{

        font-size:40px;

    }

    .rvw-stars i{

        font-size:16px;

    }

    .rvw-user img{

        width:55px;

        height:55px;

        margin-right:12px;

    }

    .rvw-user h4{

        font-size:17px;

    }

    .rvw-user span{

        font-size:13px;

    }

    .rvw-card{

        padding:20px;

    }

    .rvw-card p{

        font-size:14px;

    }

    .rvw-google-btn{

        font-size:14px;

        padding:13px;

    }

    .rvw-google-btn i{

        font-size:17px;

    }

}

/*=========================================
            Extra Small Mobile
=========================================*/

@media (max-width:420px){

    .rvw-section{

        padding:50px 0;

    }

    .rvw-title{

        font-size:24px;

    }

    .rvw-summary{

        padding:20px;

    }

    .rvw-summary-left h3{

        font-size:36px;

    }

    .rvw-stars i{

        font-size:15px;

    }

    .rvw-user{

        align-items:flex-start;

    }

    .rvw-user img{

        width:50px;

        height:50px;

    }

    .rvw-user h4{

        font-size:16px;

    }

    .rvw-user span{

        font-size:12px;

    }

    .rvw-google-icon{

        font-size:24px;

    }

    .rvw-card{

        padding:18px;

    }

    .rvw-card p{

        font-size:13px;

        line-height:1.7;

    }

    .rvw-google-btn{

        font-size:13px;

        border-radius:40px;

    }

}