.reviews-section{position:relative;background:#101010;padding:92px 0 76px;border-top:1px solid #ffffff14;overflow:hidden}
.reviews-section:before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent)}
.reviews-heading{display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:56px;align-items:center;margin-bottom:42px}
.reviews-intro .eyebrow{margin-bottom:16px}
.reviews-intro h2{font-size:clamp(34px,3.3vw,52px);text-transform:uppercase;max-width:710px}
.reviews-intro h2 span{color:var(--accent)}
.reviews-intro p{margin:22px 0 0;max-width:540px;color:#b8b8b8;font-size:18px;line-height:1.6}
.reviews-google{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:206px;padding:23px 26px;background:#191919;border:1px solid #ffffff20;border-radius:3px;transition:border-color .25s,background .25s}
.reviews-google:hover{border-color:var(--accent);background:#202020}
.reviews-google-word{font:600 21px/1 var(--body);letter-spacing:-.65px;margin-bottom:15px}
.reviews-google-word .google-blue{color:#8ab4f8}.reviews-google-word .google-red{color:#f28b82}.reviews-google-word .google-yellow{color:#fdd663}.reviews-google-word .google-green{color:#81c995}
.reviews-score{color:#fff;font:700 56px/1 var(--heading);letter-spacing:-2px;display:flex;gap:5px;align-items:baseline}
.reviews-score small{font:400 19px/1 var(--body);letter-spacing:0;color:#a5a5a5}
.reviews-google .review-stars{margin:11px 0 7px;letter-spacing:3px;font-size:19px}
.reviews-count{font-size:14px;color:#b8b8b8;line-height:1.4;text-align:center}
.reviews-google .rating-stars{display:inline-block;position:relative;white-space:nowrap;color:#ffffff40}
.rating-fill{position:absolute;inset:0 auto 0 0;width:var(--google-rating-fill,98%);overflow:hidden;color:#ffb347}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.review-card{position:relative;display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:280px;background:#191919;border:1px solid #ffffff1c;border-radius:3px;padding:28px;transition:border-color .25s,transform .25s}
.review-card:hover{border-color:#ff7a0066;transform:translateY(-3px)}
.review-person{display:flex;gap:13px;align-items:center;min-width:0}
.review-person>div{min-width:0}
.review-avatar{display:grid;place-items:center;flex:0 0 45px;width:45px;height:45px;border-radius:50%;background:#ff7a0018;color:var(--accent);font:600 19px/1 var(--heading);border:1px solid #ff7a0036}
.review-person h3{font:600 18px/1.35 var(--body);color:#f5f5f5;overflow-wrap:anywhere}
.review-person h3 a:hover{color:var(--accent)}
.review-meta{display:block;margin-top:3px;font-size:13px;color:#a5a5a5;line-height:1.4}
.review-stars{display:block;color:#ffb347;font-size:18px;letter-spacing:2px;line-height:1.2}
.review-card>.review-stars{margin:24px 0 17px}
.review-quote{margin:0 0 27px;font-size:17px;line-height:1.65;color:#dedede;overflow-wrap:anywhere}
.review-quote p{margin:0 0 15px}
.review-quote p:last-child{margin-bottom:0}
.review-source{align-self:flex-start;display:inline-flex;align-items:center;gap:7px;margin-top:auto;padding-top:6px;font-size:13px;color:#b8b8b8;line-height:1.4}
.review-source:after{content:'↗';color:var(--accent);font-size:17px}
.review-source:hover{color:#fff}
.reviews-footer{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:34px;padding-top:30px;border-top:1px solid #ffffff20}
.reviews-all{display:inline-flex;align-items:center;gap:15px;color:#fff;font:600 16px/1.5 var(--heading);text-transform:uppercase;border-bottom:1px solid var(--accent);padding:6px 0}
.reviews-all:after{content:'↗';color:var(--accent);font-size:23px;line-height:1}
.reviews-all:hover{color:var(--accent)}
.reviews-section .reviews-contact{color:#101010;background:var(--accent);border-color:var(--accent);white-space:nowrap;gap:16px}
.reviews-contact:after{content:'→';font-size:22px;line-height:1}
.reviews-section .reviews-contact:hover{background:#fff;border-color:#fff;color:#101010}
.reviews-checked{margin:22px 0 0;color:#9b9b9b;font-size:12px;line-height:1.5}
@media(min-width:1500px){.reviews-heading{grid-template-columns:minmax(0,1fr) 280px}.reviews-grid{gap:26px}.review-card{padding:32px}}
@media(max-width:1050px){.reviews-heading{gap:35px;grid-template-columns:minmax(0,1fr) 235px}.review-card{padding:23px}.review-person{gap:10px}.review-avatar{width:39px;height:39px;flex-basis:39px}.review-person h3{font-size:16px}}
@media(max-width:760px){.reviews-section{padding:65px 0 58px}.reviews-heading{grid-template-columns:1fr;gap:28px;margin-bottom:28px}.reviews-intro h2{font-size:34px}.reviews-intro p{font-size:17px;margin-top:18px}.reviews-google{display:grid;grid-template-columns:auto auto;align-items:center;justify-content:space-between;gap:5px 20px;min-height:0;padding:23px 25px;text-align:left}.reviews-google-word{grid-column:1;margin:0}.reviews-score{grid-column:2;grid-row:1/4;font-size:50px;align-self:center}.reviews-google .review-stars{grid-column:1;margin:7px 0 2px;font-size:17px;letter-spacing:2px}.reviews-count{grid-column:1;text-align:left;font-size:13px}.reviews-grid{grid-template-columns:1fr;gap:16px}.review-card{padding:26px;min-height:0}.review-avatar{width:43px;height:43px;flex-basis:43px}.review-person h3{font-size:18px}.review-card>.review-stars{margin-top:21px}.review-quote{margin-bottom:23px}.reviews-footer{align-items:flex-start;flex-direction:column;gap:23px;margin-top:28px;padding-top:24px}.reviews-all{font-size:14px}.reviews-contact{width:100%;min-height:55px}.reviews-checked{margin-top:23px}}
@media(max-width:360px){.reviews-google{padding:21px 20px;gap:5px 12px}.reviews-score{font-size:43px}.reviews-intro h2{font-size:31px}.review-card{padding:22px}}
@media(prefers-reduced-motion:reduce){.review-card:hover{transform:none}}
