.mp-reviews { --mpr-blue: #23376e; --mpr-gold: #fcbc6b; --mpr-ink: #263248; --mpr-muted: #526078; color: var(--mpr-ink); }
.mp-reviews *, .mp-reviews *::before, .mp-reviews *::after { box-sizing: border-box; }
.mp-reviews__header { max-width: 800px; margin: 0 auto 28px; }
.mp-reviews__header h2, .mp-reviews h2 { color: var(--mpr-blue); line-height: 1.2; text-transform: none; }
.mp-reviews__header h2 { margin: 0 0 16px; font-size: clamp(30px, 3.7vw, 44px); }
.mp-reviews__intro { font-size: 18px; }
.mp-reviews__aggregate { display: inline-flex; align-items: center; gap: 8px; margin: 8px 0 0; color: var(--mpr-blue); font-weight: 600; }
.mp-reviews__aggregate strong { font-size: 28px; }
.mp-reviews__aggregate > span[aria-hidden] { color: #ba720b; font-size: 24px; }
.mp-reviews__filters { display: flex; flex-wrap: wrap; gap: 10px; max-width: 1140px; margin: 0 auto 24px; }
.mp-reviews__filter { padding: 9px 15px; border: 1px solid #c8d1e1; border-radius: 999px; background: #fff; color: var(--mpr-blue); cursor: pointer; font: inherit; font-weight: 600; }
.mp-reviews__filter.is-active, .mp-reviews__filter:hover { border-color: var(--mpr-blue); background: var(--mpr-blue); color: #fff; }
.mp-reviews__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; max-width: 1140px; margin: 0 auto; }
.mp-review { display: flex; flex-direction: column; min-width: 0; padding: 26px; border: 1px solid #dce2ed; border-radius: 14px; background: #fff; box-shadow: 0 4px 14px rgb(35 55 110 / 6%); }
.mp-review[hidden] { display: none; }
.mp-review__header { display: flex; align-items: center; gap: 14px; }
.mp-review__photo, .mp-review__initials { flex: 0 0 54px; width: 54px; height: 54px; border-radius: 50%; }
.mp-review__photo { object-fit: cover; }
.mp-review__initials { display: grid; place-items: center; background: #e7edf8; color: var(--mpr-blue); font-size: 19px; font-weight: 700; }
.mp-review__identity { min-width: 0; }
.mp-review__identity h2 { margin: 0 0 5px; font-size: 20px; }
.mp-review__service { display: inline-block; padding: 4px 8px; border-radius: 5px; background: #f3f5f9; color: var(--mpr-blue); font-size: 13px; font-weight: 600; }
.mp-review__rating { margin: 18px 0 10px; color: #b66d08; font-size: 22px; letter-spacing: 2px; }
.mp-review__text { line-height: 1.65; }
.mp-review__text > :last-child { margin-bottom: 0; }
.mp-review__meta { display: flex; flex-wrap: wrap; gap: 6px 12px; margin-top: 20px; color: var(--mpr-muted); font-size: 14px; }
.mp-review__meta span + span::before, .mp-review__meta time + span::before, .mp-review__meta time + a::before, .mp-review__meta span + a::before { content: '·'; margin-right: 12px; }
.mp-review__meta a { color: var(--mpr-blue); }
.mp-reviews__cta { max-width: 780px; margin: 38px auto 0; padding: 32px; border-radius: 14px; background: var(--mpr-blue); color: #fff; text-align: center; }
.mp-reviews__cta h2 { margin: 0 0 12px; color: #fff; font-size: clamp(24px, 2.7vw, 32px); }
.mp-reviews__cta-button { margin: 8px 0 0; }
.mp-reviews__phone { display: block; margin-top: 16px; color: #fff; font-size: 19px; font-weight: 700; }
.mp-reviews__phone:hover { color: #fff; }
.mp-reviews__contact { padding: 56px 0; background: #eef2f8; color: var(--mpr-ink); }
.mp-reviews__contact h2 { margin-top: 0; }
@media (max-width: 767px) { .mp-reviews__list { grid-template-columns: 1fr; } .mp-review { padding: 22px; } .mp-reviews__cta { padding: 26px 20px; } }