/* Book Review page (round 3, 2026-11-07). Loaded only by /review/. */
.rv-cta { margin-top: 22px !important; }
.hero-intro .rv-cta a { text-decoration: none; color: #fff; }
.rv-cta .ico { width: 20px; height: 20px; }
.rv-cta-note { margin-top: 12px !important; font-size: 16px; color: #f3cfd9; }
.hero-intro .rv-cta-note b { overflow-wrap: anywhere; }

.rv-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.rv-steps li { display: grid; grid-template-columns: 44px 1fr; gap: 14px; padding: 22px; background: #fff; border: 1px solid var(--line); border-radius: 16px; }
.rv-steps .n { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--orange); color: #fff; font-weight: 900; font-size: 20px; }
.rv-steps div > b { display: block; font-size: 19px; margin: 8px 0 6px; color: var(--ink); }
.rv-steps p { margin: 0; }

.rv-letter.lift { margin-top: 0; }
.rv-from { margin: 0 0 12px !important; font-size: 16px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--orange-d); }
.rv-letter .letter a { color: var(--orange-d); }
.rv-sig { margin: 18px 0 0; line-height: 1.45; }
.rv-fn { padding-top: 14px; border-top: 1px dashed var(--line); }

.rv-topics { columns: 2; column-gap: 34px; margin: 0; padding: 0 0 0 30px; }
.rv-topics li { break-inside: avoid; padding: 7px 0 7px 6px; border-bottom: 1px dashed var(--line); }
.rv-topics li::marker { color: var(--orange-d); font-weight: 700; }

.rv-two { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.rv-list h3 { display: flex; align-items: center; gap: 10px; margin: 0 0 10px; font-size: 21px; }
.rv-list h3 .ico { width: 30px; height: 30px; padding: 6px; border-radius: 50%; flex: none; }
.rv-yes h3 .ico { background: #e6f3e8; color: var(--green); }
.rv-no h3 .ico { background: #fdeceb; color: var(--red); }
.rv-list ul { margin: 0; padding-left: 22px; }
.rv-list li { margin: 7px 0; }
.rv-more { margin: 14px 0 0; }
.rv-more a { color: var(--orange-d); font-weight: 700; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }
.rv-more .ico { width: 16px; height: 16px; }

.rv-short { display: flex; gap: 24px; align-items: center; justify-content: space-between; background: linear-gradient(135deg, #fff, #fff0f4); }
.rv-short h2 { font-size: 26px; font-weight: 900; margin: 0 0 6px; }
.rv-short p { margin: 0; }
.rv-short .btn { flex: none; }

@media (max-width: 960px) {
  .rv-steps { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .rv-topics { columns: 1; }
  .rv-two { grid-template-columns: 1fr; }
  .rv-short { flex-direction: column; align-items: flex-start; }
  .rv-cta .btn-lg { width: 100%; justify-content: center; }
  .rv-letter img { order: -1; max-width: 120px; justify-self: start; }
}
