/* reviews section — scoped under .reviews-wrap (desktop) / .reviews-wrap-m (mobile).
   Skipped: *, html/body resets, img{display:block}, .fw-med — already in tokens.css / hero.css.
   Filter block (d-filter-title/label/row, m-filter-title/label/pill/cta-apply) removed entirely.
   card-more removed. Mobile offsets re-anchored −207 px: carousel 850, disclaimer 1215, cta-more 1298; root height 1412. */

/* ── desktop/mobile visibility ─────────────────────────────────────────── */
.reviews-wrap{width:100%;background:var(--surface);overflow-x:clip}
.reviews-wrap-m{display:none}
@media(max-width:767px){
  .reviews-wrap{display:none}
  .reviews-wrap-m{display:block}
}

/* ── shared: fw-med ─────────────────────────────────────────────────────── */
.reviews-wrap .fw-med,.reviews-wrap-m .fw-med{font-weight:500}

/* ── shared: review card ────────────────────────────────────────────────── */
.reviews-wrap .card,.reviews-wrap-m .card{background:var(--white);border-radius:var(--r-card);display:flex;flex-direction:column;gap:16px;flex:none}
.reviews-wrap .card-block,.reviews-wrap-m .card-block{display:flex;flex-direction:column;gap:12px}
.reviews-wrap .card-head,.reviews-wrap-m .card-head{display:flex;justify-content:space-between;align-items:center;gap:4px}
.reviews-wrap .card-name,.reviews-wrap-m .card-name{font-size:var(--fs-lead);line-height:var(--lh-lead);color:var(--ink)}
.reviews-wrap .card-date,.reviews-wrap-m .card-date{font-size:var(--fs-nav);line-height:var(--lh-nav);color:var(--ink);white-space:nowrap}
.reviews-wrap .card-service,.reviews-wrap-m .card-service{font-size:var(--fs-nav);line-height:var(--lh-nav);color:var(--muted)}
.reviews-wrap .card-text,.reviews-wrap-m .card-text{font-size:var(--fs-nav);line-height:var(--lh-nav);color:var(--ink);
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}
.reviews-wrap .card-source,.reviews-wrap-m .card-source{display:flex;align-items:center;gap:4px}
.reviews-wrap .card-source b,.reviews-wrap-m .card-source b{font-size:var(--fs-nav);line-height:var(--lh-nav);color:var(--ink)}

/* ── shared: dark rating plate ──────────────────────────────────────────── */
.reviews-wrap .rating,.reviews-wrap-m .rating{position:absolute;background:var(--ink);border-radius:var(--r-card);color:var(--white)}
.reviews-wrap .rating .r-score,.reviews-wrap-m .rating .r-score{position:absolute;font-size:16px;line-height:20.8px;color:var(--white)}
.reviews-wrap .rating .r-stars,.reviews-wrap-m .rating .r-stars{position:absolute;display:flex;gap:2px}
.reviews-wrap .rating .r-stars img,.reviews-wrap-m .rating .r-stars img{width:16px;height:16px}
.reviews-wrap .rating .r-note,.reviews-wrap-m .rating .r-note{position:absolute;font-size:10px;line-height:14px;color:var(--white)}

/* ── shared: cyan CTA ───────────────────────────────────────────────────── */
.reviews-wrap .cta,.reviews-wrap-m .cta{position:absolute;height:50px;background:var(--accent);border-radius:var(--r-pill);
  display:flex;align-items:center;justify-content:center;
  font-size:var(--fs-btn);line-height:var(--lh-btn);color:var(--ink)}

/* ── shared: big counter ────────────────────────────────────────────────── */
.reviews-wrap .counter,.reviews-wrap-m .counter{position:absolute;display:flex;align-items:center}
.reviews-wrap .counter .grp,.reviews-wrap-m .counter .grp{display:flex}
.reviews-wrap .digit,.reviews-wrap-m .digit{background:var(--white);display:flex;align-items:center;justify-content:center;color:var(--ink)}

/* ── shared: scroll carousel ────────────────────────────────────────────── */
.reviews-wrap .carousel,.reviews-wrap-m .carousel{position:absolute;display:flex;overflow-x:auto;scroll-snap-type:x proximity}
.reviews-wrap .carousel .card,.reviews-wrap-m .carousel .card{scroll-snap-align:start}

/* ══ DESKTOP «отзывы клиентов» (7828:62114) — fluid full-bleed ═══════════ */
.reviews-wrap .d-inner{max-width:1440px;margin-inline:auto;padding:110px 140px}

/* header: fluid left text + fixed 367px right stats */
.reviews-wrap .d-head{display:flex;justify-content:space-between;align-items:flex-start;gap:40px}
.reviews-wrap .d-head-left{max-width:686px}
.reviews-wrap .d-title{max-width:633px;font-size:var(--fs-h2);line-height:var(--lh-h2);color:var(--ink)}
.reviews-wrap .d-sub{margin-top:16px;max-width:496px;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink)}
.reviews-wrap .d-desc{margin-top:24px;max-width:686px;font-size:var(--fs-para);line-height:var(--lh-para);color:var(--ink)}
.reviews-wrap .d-head-right{flex:none;width:367px}

/* desktop overrides for shared components */
.reviews-wrap .rating{position:relative;width:367px;height:44.24px}
.reviews-wrap .rating .r-score{left:17px;top:13px}
.reviews-wrap .rating .r-stars{left:44px;top:14px}
.reviews-wrap .rating .r-note{left:155px;top:16px;width:195px}
.reviews-wrap .d-logos{margin-top:37px;width:367px;height:auto}
.reviews-wrap .counter{position:static;margin-top:26px;width:367px;height:74px;justify-content:center;gap:11.35px}
.reviews-wrap .counter .grp{gap:3.78px}
.reviews-wrap .digit{width:57px;height:74px;border-radius:7.57px;font-size:49.19px;line-height:59.02px}
.reviews-wrap .d-cap{margin-top:8px;text-align:center;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink)}

.reviews-wrap .d-seo{margin-top:32px;max-width:1161px;font-size:var(--fs-btn);line-height:var(--lh-btn);color:var(--muted)}

/* full-bleed carousel — same idiom as cleaners/06 */
.reviews-wrap .carousel{position:static;margin-top:32px;
  margin-inline:calc(50% - 50vw);
  padding-left:calc(50vw - 50%);
  gap:30px;overflow-x:auto;scroll-snap-type:none;scrollbar-width:none}
.reviews-wrap .carousel::-webkit-scrollbar{display:none}
.reviews-wrap .card{width:367px;padding:28px}

.reviews-wrap .d-disclaimer{margin:40px auto 0;max-width:614px;text-align:center;font-size:var(--fs-btn);line-height:var(--lh-btn);color:var(--muted)}
.reviews-wrap .cta-more{position:static;margin:24px auto 0;width:368px}

/* ══ MOBILE «Отзывы» (8068:5632, 375×1412 after filter removal) ══════════ */
.reviews-wrap-m{position:relative;width:375px;height:1412px;background:var(--surface)}

.reviews-wrap-m .m-title{position:absolute;left:28px;top:64px;max-width:319px;font-size:24px;line-height:26.4px;color:var(--ink)}
.reviews-wrap-m .m-sub{position:absolute;left:28px;top:140px;max-width:319px;font-size:var(--fs-para);line-height:var(--lh-para);color:var(--ink)}

.reviews-wrap-m .rating{left:28px;top:224px;width:319px;height:44px}
.reviews-wrap-m .rating .r-score{left:45px;top:12px}
.reviews-wrap-m .rating .r-stars{left:72px;top:13px}
.reviews-wrap-m .rating .r-note{left:176px;top:7px;width:98px}
.reviews-wrap-m .m-logos{position:absolute;left:28px;top:284px;width:319px;height:auto}
.reviews-wrap-m .m-desc{position:absolute;left:28px;top:337px;max-width:319px;font-size:var(--fs-para);line-height:var(--lh-para);color:var(--ink)}
.reviews-wrap-m .counter{left:28px;top:569px;width:318px;height:64px;justify-content:center;gap:9.84px}
.reviews-wrap-m .counter .grp{gap:3.28px}
.reviews-wrap-m .digit{width:49px;height:64px;border-radius:6.56px;font-size:42.62px;line-height:51.14px}
.reviews-wrap-m .m-cap{position:absolute;left:217px;top:637px;font-size:14px;line-height:20.72px;color:var(--ink)}

.reviews-wrap-m .m-seo{position:absolute;left:28px;top:682px;max-width:319px;font-size:var(--fs-micro);line-height:var(--lh-micro);color:var(--muted)}

/* carousel re-anchored: 1057 − 207 = 850 */
.reviews-wrap-m .carousel{left:28px;top:850px;width:347px;height:345px;gap:20px}
.reviews-wrap-m .card{width:304px;padding:20px}

/* disclaimer re-anchored: 1422 − 207 = 1215 */
.reviews-wrap-m .m-disclaimer{position:absolute;left:28px;top:1215px;max-width:319px;text-align:center;font-size:var(--fs-micro);line-height:var(--lh-micro);color:var(--muted)}

/* cta-more re-anchored: 1505 − 207 = 1298 */
.reviews-wrap-m .cta-more{left:28px;top:1298px;width:319px}
