.text-page__main:has(.reviews-v2) {
  max-width: 1240px;
  padding-top: clamp(24px, 4vw, 44px);
}

.reviews-v2 { display: grid; gap: 16px; }

.reviews-v2__hero,
.reviews-v2__section,
.reviews-v2__cta {
  background: var(--white);
  border: 1px solid rgba(11, 37, 69, 0.08);
  border-radius: 24px;
  padding: clamp(18px, 3.5vw, 30px);
}

.reviews-v2__label {
  display: inline-block;
  margin: 0 0 10px;
  color: var(--mint-deep);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 12px;
  font-weight: 700;
}

.reviews-v2 h1, .reviews-v2 h2 { margin: 0; line-height: 1.16; }
.reviews-v2__lead { margin: 12px 0 0; color: var(--ink-soft); max-width: 760px; }

.reviews-v2__stats {
  margin-top: 14px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.reviews-v2__stats article {
  border: 1px solid rgba(11, 37, 69, 0.08);
  border-radius: 14px;
  padding: 12px;
  background: linear-gradient(145deg, var(--white), var(--cream));
}
.reviews-v2__stats b { display:block; font-size:1.15rem; }

.reviews-v2__grid {
  margin-top: 14px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.reviews-v2__card {
  border: 1px solid rgba(11, 37, 69, 0.08);
  border-radius: 14px;
  padding: 14px;
  background: var(--white);
}

.reviews-v2__card h3 { margin: 0; font-size: 1rem; }
.reviews-v2__meta { margin: 4px 0 0; color: var(--ink-soft); font-size: 13px; }
.reviews-v2__stars { margin: 8px 0; color: #f7a500; letter-spacing: .08em; font-weight: 700; }
.reviews-v2__text { margin: 0; font-size: 14px; color: var(--ink-soft); line-height: 1.55; }
.reviews-v2__tag {
  margin-top: 10px; display:inline-block; padding:4px 8px; border-radius:999px;
  background:#eef7f4; color:#0b5a3a; font-size:11px; font-weight:700;
}

.reviews-v2__platforms { margin-top: 14px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.reviews-v2__platform {
  border-radius: 14px; border:1px solid rgba(11,37,69,.08); padding: 14px; background: linear-gradient(150deg, var(--white), var(--cream));
}
.reviews-v2__platform b { display:block; font-size:1.05rem; }
.reviews-v2__platform small { color:var(--ink-soft); }

.reviews-v2__faq { margin-top: 12px; display: grid; gap: 8px; }
.reviews-v2__faq details { border:1px solid rgba(11,37,69,.1); border-radius:12px; padding:10px 12px; background:var(--white); }
.reviews-v2__faq summary { cursor:pointer; font-weight:700; }
.reviews-v2__faq p { margin: 8px 0 0; color: var(--ink-soft); font-size: 14px; }

.reviews-v2__cta {
  background: linear-gradient(145deg, #0b2545 0%, #2c4767 100%);
  color: #fff;
}
/* Override .text-page__article h2 { color: var(--ink) } — иначе тёмный заголовок на тёмном CTA */
.reviews-v2__cta h2 {
  color: #fff;
}
.reviews-v2__cta p { margin: 8px 0 0; color: rgba(255,255,255,.86); }
.reviews-v2__actions { margin-top: 14px; display:flex; gap:10px; flex-wrap:wrap; }
.reviews-v2__actions .btn-outline { border-color: rgba(255,255,255,.6); color:#fff; }
.reviews-v2__actions .btn-primary {
  background: var(--mint);
  color: #0b2545;
  border-color: transparent;
}

@media (max-width: 980px) {
  .reviews-v2__stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .reviews-v2__grid, .reviews-v2__platforms { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .reviews-v2__stats { grid-template-columns: 1fr; }
  .reviews-v2__actions .btn { width:100%; justify-content:center; }

  html[data-theme="dark"] .reviews-v2__hero {
    background: var(--white);
    border-color: rgba(232, 240, 255, 0.14);
  }

  html[data-theme="dark"] .reviews-v2__stats article {
    background: linear-gradient(145deg, var(--white), var(--cream));
    border-color: rgba(232, 240, 255, 0.14);
  }
}
