:root{

/* =========================
   REVIEWS SECTION
========================= */


/* =========================
   REVIEWS SECTION (GARDENER)
========================= */

--reviews-padding:140px 0;

--reviews-bg:var(--exp-bg);

--reviews-color:var(--exp-white);



/* glow */

--reviews-glow:transparent;



/* head */

--reviews-head-margin:60px;

--reviews-head-padding:0 20px;

--reviews-title-size:clamp(34px,4vw,54px);

--reviews-title-spacing:-1px;

--reviews-title-margin:10px;

--reviews-title-color:rgba(245,245,245,0.88);

--reviews-text-size:16px;

--reviews-text-color:var(--exp-text-soft);



/* google badge */

--google-gap:10px;

--google-padding:10px 14px;

--google-margin:20px;

--google-bg:rgba(159,216,176,0.06);

--google-border:1px solid rgba(159,216,176,0.18);

--google-color:var(--exp-accent);

--google-size:12px;

--google-spacing:2px;

--google-radius:10px;

--google-transition:.25s ease;

--google-hover-transform:translateY(-2px);

--google-hover-bg:rgba(159,216,176,0.10);

--google-hover-border:rgba(159,216,176,0.28);

--google-hover-color:var(--exp-accent-soft);

--google-glow:
radial-gradient(
circle at 30% 30%,
rgba(159,216,176,0.14),
transparent 60%
);

--google-glow-radius:12px;

--google-icon-size:18px;

--google-icon-scale:scale(1.08);



/* grid */

--reviews-row-width:min(1100px,92%);

--reviews-columns:repeat(3,1fr);

--reviews-gap:22px;



/* card */

--review-padding:26px;

--review-bg:
linear-gradient(
180deg,
rgba(255,255,255,0.03),
rgba(10,18,12,0.35)
);

--review-border:1px solid var(--exp-card-border);

--review-border-left:2px solid rgba(159,216,176,0.40);

--review-radius:18px;

--review-transition:.3s ease;

--review-hover-transform:translateY(-6px);

--review-hover-left:var(--exp-accent);

--review-hover-shadow:var(--exp-shadow-hover);



/* stars */

--stars-color:var(--exp-accent-soft);

--stars-size:14px;

--stars-spacing:2px;

--stars-margin:12px;



/* review text */

--review-text-size:15px;

--review-text-line:1.7;

--review-text-color:var(--exp-text-soft);

--review-text-margin:18px;



/* author */

--author-size:13px;

--author-color:var(--exp-text-muted);

--author-weight:600;



/* mobile */

--review-mobile-padding:22px;

}




.reviews{

position:relative;

padding:var(--reviews-padding);

background:var(--reviews-bg);

color:var(--reviews-color);

overflow:hidden;
}

/* glow */

.reviews::before{

content:"";

position:absolute;

inset:0;

background:
radial-gradient(circle at 20% 30%,var(--reviews-glow-1),transparent 55%),
radial-gradient(circle at 80% 70%,var(--reviews-glow-2),transparent 60%);

pointer-events:none;
}

/* HEAD */

.reviews-head{

text-align:center;

margin-bottom:var(--reviews-head-margin);

padding:var(--reviews-head-padding);
}

.google-link{

display:inline-flex;

align-items:center;

gap:var(--google-gap);

padding:var(--google-padding);

margin-bottom:var(--google-margin);

background:var(--google-bg);

border:var(--google-border);

color:var(--google-color);

font-size:var(--google-size);

letter-spacing:var(--google-spacing);

text-transform:uppercase;

text-decoration:none;

border-radius:var(--google-radius);

transition:var(--google-transition);

position:relative;
}

.google-link::after{

content:"";

position:absolute;

inset:-2px;

border-radius:var(--google-glow-radius);

background:var(--google-glow);

opacity:0;

transition:.4s ease;

z-index:-1;
}

.google-link:hover{

transform:var(--google-hover-transform);

background:var(--google-hover-bg);

border-color:var(--google-hover-border);

color:var(--google-hover-color);
}

.google-link:hover::after{

opacity:1;
}

.google-link img{

width:var(--google-icon-size);

height:var(--google-icon-size);

transition:.3s ease;
}

.google-link:hover img{

transform:var(--google-icon-scale);
}

.reviews-head h2{

font-size:var(--reviews-title-size);

letter-spacing:var(--reviews-title-spacing);

margin-bottom:var(--reviews-title-margin);
}

.reviews-head p{

color:var(--reviews-text-color);

font-size:var(--reviews-text-size);
}

/* GRID */

.reviews-row{

width:var(--reviews-row-width);

margin:auto;

display:grid;

grid-template-columns:var(--reviews-columns);

gap:var(--reviews-gap);
}

/* CARD */

.review{

position:relative;

padding:var(--review-padding);

background:var(--review-bg);

border:var(--review-border);

border-left:var(--review-border-left);

border-radius:var(--review-radius);

transition:var(--review-transition);
}

.review:hover{

transform:var(--review-hover-transform);

border-left-color:var(--review-hover-left);

box-shadow:var(--review-hover-shadow);
}

.stars{

color:var(--stars-color);

font-size:var(--stars-size);

margin-bottom:var(--stars-margin);

letter-spacing:var(--stars-spacing);
}

.review p{

font-size:var(--review-text-size);

line-height:var(--review-text-line);

color:var(--review-text-color);

margin-bottom:var(--review-text-margin);
}

.author{

font-size:var(--author-size);

color:var(--author-color);

font-weight:var(--author-weight);
}

/* responsive */

@media(max-width:900px){

.reviews-row{

grid-template-columns:1fr;

}

.review{

padding:var(--review-mobile-padding);

}

}