.gf-summary{

text-align:center;

padding:40px;

margin-bottom:50px;

background:#fafafa;

border-radius:15px;

}

.gf-average{

font-size:72px;

font-weight:700;

color:#2E7D32;

line-height:1;

margin:15px 0;

}

.gf-stars{

font-size:26px;

margin:15px 0;

}

.gf-review-card{

background:#fff;

border-radius:18px;

padding:35px;

margin-bottom:25px;

box-shadow:0 8px 30px rgba(0,0,0,.08);

}

.gf-review-card h3{

margin-bottom:10px;

}

.gf-review-card small{

color:#777;

}

.gf-reviews hr{

display:none;

}
/* ===========================
   Review Summary
=========================== */

.gf-summary{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:50px;
    background:#fff;
    border-radius:20px;
    padding:35px;
    margin-bottom:40px;
    box-shadow:0 5px 20px rgba(0,0,0,.08);
}

.gf-summary-left{
    width:260px;
    text-align:center;
}

.gf-summary-left h2{
    margin-bottom:20px;
}

.gf-average{
    font-size:64px;
    font-weight:700;
    color:#2e7d32;
    line-height:1;
}

.gf-stars{
    margin:15px 0;
}

.gf-review-count{
    color:#666;
    font-size:16px;
}

.gf-summary-right{
    flex:1;
}

.gf-bar-row{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:14px;
}

.gf-bar-row span:first-child{
    width:40px;
}

.gf-bar{
    flex:1;
    height:12px;
    background:#e5e5e5;
    border-radius:20px;
    overflow:hidden;
}

.gf-fill{
    height:100%;
    background:#2e7d32;
    border-radius:20px;
}

/* ===========================
   Mobile
=========================== */

@media (max-width:768px){

.gf-summary{
    flex-direction:column;
    padding:25px;
}

.gf-summary-left,
.gf-summary-right{
    width:100%;
}

.gf-average{
    font-size:48px;
}

}
/* ==========================
   Premium Review Card
========================== */

.gf-review-card{

background:#fff;

border-radius:18px;

padding:28px;

margin-bottom:25px;

box-shadow:0 6px 24px rgba(0,0,0,.08);

transition:.25s;

}

.gf-review-card:hover{

transform:translateY(-3px);

box-shadow:0 10px 30px rgba(0,0,0,.12);

}

.gf-review-header{

display:flex;

align-items:center;

gap:18px;

margin-bottom:18px;

}

.gf-avatar{

width:60px;

height:60px;

border-radius:50%;

background:#2E7D32;

color:#fff;

display:flex;

align-items:center;

justify-content:center;

font-size:26px;

font-weight:700;

flex-shrink:0;

}

.gf-review-info h3{

margin:0;

font-size:20px;

}

.gf-date{

color:#888;

font-size:14px;

margin-top:6px;

}

.gf-review-content{

font-size:17px;

line-height:1.7;

color:#333;

}
.gf-verified{

display:inline-block;

margin-top:6px;

padding:4px 10px;

background:#e8f5e9;

color:#2e7d32;

border-radius:30px;

font-size:13px;

font-weight:600;

}

.gf-avatar{

background:linear-gradient(135deg,#2E7D32,#66BB6A);

box-shadow:0 6px 18px rgba(46,125,50,.25);

}

.gf-review-info h3{

margin-bottom:5px;

}

.gf-review-card{

border:1px solid #f1f1f1;

}

.gf-review-card:hover{

border-color:#2E7D32;

}
.gf-review-gallery{

display:flex;

gap:12px;

flex-wrap:wrap;

margin-top:20px;

}

.gf-review-gallery img{

width:110px;

height:110px;

object-fit:cover;

border-radius:12px;

cursor:pointer;

transition:.25s;

box-shadow:0 4px 12px rgba(0,0,0,.08);

}

.gf-review-gallery img:hover{

transform:scale(1.05);

}
/* Hide WooCommerce review list */
.gf-write-review .woocommerce-Reviews .commentlist{
    display:none;
}

/* Hide review title */
.gf-write-review .woocommerce-Reviews-title{
    display:none;
}

/* Add spacing */
.gf-write-review{
    margin-top:60px;
    padding-top:40px;
    border-top:1px solid #e5e5e5;
}