.rv-hero {
  background: linear-gradient(135deg, var(--blue) 0%, var(--blue-mid) 55%, #1A2E6B 100%);
  padding: 48px 0 56px;
  position: relative;
  overflow: hidden;
}
.rv-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(255,255,255,.03) 39px, rgba(255,255,255,.03) 40px),
    repeating-linear-gradient(90deg, transparent, transparent 39px, rgba(255,255,255,.03) 39px, rgba(255,255,255,.03) 40px);
}
.rv-hero-inner { position: relative; display: grid; grid-template-columns: 1fr 300px; gap: 40px; align-items: center; }
.rv-hero-main { display: flex; gap: 24px; align-items: flex-start; }
.rv-hero-logo {
  background: #D8DCE5;
  border-radius: var(--r);
  width: 160px;
  height: 72px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 14px;
}
.rv-hero-logo img { max-width: 100%; max-height: 48px; object-fit: contain; }
.rv-hero h1 { font-family: 'Playfair Display', serif; font-size: clamp(1.75rem, 3.5vw, 2.5rem); color: #fff; line-height: 1.2; margin-bottom: 10px; }
.rv-hero-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.rv-hero-lead { color: rgba(255,255,255,.82); font-size: .95rem; line-height: 1.7; max-width: 560px; }
.rv-hero-card {
  background: var(--white);
  border-radius: 14px;
  padding: 24px;
  box-shadow: 0 8px 40px rgba(0,0,0,.25);
  text-align: center;
}
.rv-hero-score strong { display: block; font-size: 2.8rem; font-weight: 700; color: var(--blue); line-height: 1; }
.rv-hero-score .stars { color: #F59E0B; font-size: 1rem; letter-spacing: 2px; margin: 6px 0; }
.rv-hero-score span { font-size: .78rem; color: var(--gray-text); }
.rv-hero-card .btn-info { margin-top: 16px; }
.rv-hero-card .btn-outline { margin-top: 8px; }

.rv-pros-cons { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 16px; }
.rv-pros, .rv-cons { border-radius: var(--r); padding: 20px; border: 1px solid var(--gray-line); }
.rv-pros { background: #F0FDF4; border-color: #BBF7D0; }
.rv-cons { background: #FFF7ED; border-color: #FED7AA; }
.rv-pros h4, .rv-cons h4 { font-size: .88rem; font-weight: 700; margin-bottom: 12px; text-transform: uppercase; letter-spacing: .06em; }
.rv-pros h4 { color: #065F46; }
.rv-cons h4 { color: #9A3412; }
.rv-pros ul li::before { content: '+'; color: #059669; }
.rv-cons ul li::before { content: '−'; color: #EA580C; }

.rv-scores { display: flex; flex-direction: column; gap: 14px; margin-top: 16px; }
.rv-score-row { display: grid; grid-template-columns: 140px 1fr 40px; gap: 12px; align-items: center; }
.rv-score-row label { font-size: .82rem; font-weight: 600; color: var(--dark); }
.rv-score-bar { height: 8px; background: var(--gray-line); border-radius: 4px; overflow: hidden; }
.rv-score-bar span { display: block; height: 100%; background: linear-gradient(90deg, var(--blue), var(--blue-mid)); border-radius: 4px; }
.rv-score-row em { font-size: .82rem; font-weight: 700; color: var(--blue); font-style: normal; text-align: right; }

@media (max-width: 900px) {
  .rv-hero-inner { grid-template-columns: 1fr; }
  .rv-hero-card { max-width: 320px; }
  .rv-pros-cons { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .rv-hero-main { flex-direction: column; }
  .rv-hero-logo { width: 100%; }
  .rv-score-row { grid-template-columns: 1fr; gap: 4px; }
  .rv-score-row em { text-align: left; }
}
