*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:'Poppins',sans-serif;
background:#faf8f4;
color:#222;
}

a{
text-decoration:none;
}

img{
width:100%;
display:block;
}


/* HEADER */

header{
display:flex;
justify-content:space-between;
align-items:center;
padding:25px 8%;
background:white;
}

.logo h2{
font-size:40px;
font-weight:800;
}

.logo span{
font-size:12px;
letter-spacing:1px;
}

nav{
display:flex;
gap:25px;
}

nav a{
color:#222;
font-weight:600;
text-transform:uppercase;
font-size:14px;
}

.btn{
padding:14px 28px;
border-radius:40px;
font-weight:600;
display:inline-block;
}

.yellow{
background:#f3b327;
color:black;
}

.green{
background:#36432b;
color:white;
}

.white{
background:white;
color:black;
}

/* Title */

.reviews-header{
    text-align:center;
    padding:60px 20px 30px;
}

.reviews-header h1{
    font-size:54px;
    font-weight:800;
    margin-bottom:10px;
}

.reviews-header p{
    color:#d8a028;
    font-size:20px;
}

/* Rating */

.rating-box{
    max-width:1100px;
    margin:auto;
    background:#fff;
    border:1px solid #e7e7e7;
    border-radius:12px;
    padding:40px;
    display:grid;
    grid-template-columns:300px 1fr;
    gap:50px;
}

.rating-left{
    text-align:center;
}

.rating-left h2{
    font-size:90px;
    line-height:1;
    font-weight:800;
}

.stars{
    color:#d8a028;
    font-size:28px;
    margin:10px 0;
}

.rating-left span{
    color:#666;
}

.rating-row{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:18px;
}

.rating-row span{
    width:70px;
    font-size:14px;
}

.progress{
    flex:1;
    height:8px;
    background:#ececec;
    border-radius:30px;
}

.fill{
    height:100%;
    background:#d8a028;
    border-radius:30px;
}

.fill-82{
    width:82%;
}

.fill-12{
    width:12%;
}

.fill-4{
    width:4%;
}

.fill-1{
    width:1%;
}

.rating-row strong{
    width:40px;
    font-size:13px;
}

/* Button */

.review-button-wrap{
    text-align:center;
    margin:25px 0 40px;
}

.review-btn{
    background:#d8a028;
    color:#000;
    padding:14px 28px;
    border-radius:8px;
    font-weight:700;
}

/* Cards */

.reviews-grid{
    max-width:1200px;
    margin:auto;
    padding:0 20px 60px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}

.review-card{
    background:#fff;
    border:1px solid #e5e5e5;
    border-radius:10px;
    padding:30px;
}

.review-card h3{
    margin:18px 0;
    font-size:20px;
}

.review-card p{
    color:#555;
    line-height:1.7;
}

.review-user{
    margin-top:25px;
    display:flex;
    align-items:center;
    gap:12px;
}

.review-user img{
    width:45px;
    height:45px;
    border-radius:50%;
    object-fit:cover;
}

/* Footer */

footer{
    background:#29331d;
    color:#fff;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
    padding:50px 5%;
}

.footer-item h4{
    color:#fff;
    margin-bottom:15px;
}

.footer-item p{
    color:#ddd;
    margin-bottom:8px;
}

.footer-item a{
    color:#d8a028;
    font-weight:600;
}

.call-btn{
    display:inline-block;
    margin-top:15px;
    background:#d8a028;
    color:#000 !important;
    padding:12px 20px;
    border-radius:6px;
}

.copyright{
    background:#222;
    color:#bbb;
    text-align:center;
    padding:15px;
    font-size:13px;
}

/* Responsive */

@media(max-width:992px){

    .rating-box{
        grid-template-columns:1fr;
    }

    .reviews-grid{
        grid-template-columns:1fr;
    }

    footer{
        grid-template-columns:1fr 1fr;
    }

    nav{
        display:none;
    }
}

@media(max-width:768px){

    footer{
        grid-template-columns:1fr;
    }

    .reviews-header h1{
        font-size:40px;
    }

    .rating-left h2{
        font-size:70px;
    }
}