.toyota-rav4-upgrade-page { background: var(--bg); }
.rav4-breadcrumb { display: flex; align-items: center; gap: 10px; padding-top: 118px; color: var(--muted-text); font-size: 13px; }
.rav4-breadcrumb a { color: var(--secondary-text); transition: color .3s ease; }
.rav4-breadcrumb a:hover { color: var(--primary-text); }
.rav4-hero { padding-top: 50px; padding-bottom: clamp(84px, 9vw, 132px); }
.rav4-hero-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(44px, 7vw, 108px); align-items: center; }
.rav4-hero-copy { max-width: 600px; }
.rav4-hero-copy h1 { max-width: 12ch; }
.rav4-hero-copy .lead { margin: 22px 0 30px; }
.rav4-hero-image { min-height: 450px; aspect-ratio: 16 / 10; }
.rav4-type-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.rav4-type-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid var(--border); border-radius: var(--radius-image); background: var(--elevated); transition: border-color .3s ease, transform .3s ease; }
.rav4-type-card:hover { border-color: var(--brand-red); transform: translateY(-3px); }
.rav4-type-image { min-height: 228px; aspect-ratio: 16 / 10; border: 0; border-bottom: 1px solid var(--border); border-radius: 0; }
.rav4-type-copy { display: flex; flex: 1; flex-direction: column; align-items: flex-start; gap: 12px; padding: 23px; }
.rav4-type-copy h3 { color: var(--primary-text); }
.rav4-type-copy p { color: var(--secondary-text); font-size: 14px; line-height: 1.55; }
.rav4-type-copy .text-link { margin-top: auto; padding-top: 3px; }
.rav4-rfq-section { padding-top: 84px; }
.rav4-rfq-panel { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 42px 48px; border: 1px solid var(--border); border-radius: var(--radius-image); background: var(--bg-secondary); }
.rav4-rfq-copy h2 { margin-bottom: 14px; }
.rav4-rfq-copy p:not(.eyebrow) { color: var(--secondary-text); }
.rav4-rfq-actions { display: flex; flex: 0 0 auto; flex-direction: column; align-items: flex-start; gap: 18px; }
.rav4-rfq-link { min-height: 44px; display: inline-flex; align-items: center; gap: 8px; color: var(--secondary-text); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; transition: color .3s ease; }
.rav4-rfq-link span { color: var(--brand-red-text); transition: transform .3s ease; }
.rav4-rfq-link:hover { color: var(--primary-text); }
.rav4-rfq-link:hover span { transform: translateX(4px); }
@media (max-width: 980px) {
  .rav4-hero-grid { grid-template-columns: 1fr; }
  .rav4-hero-copy { max-width: 720px; }
  .rav4-hero-copy h1 { max-width: 15ch; }
  .rav4-hero-image { min-height: 390px; }
  .rav4-type-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
  .rav4-breadcrumb { padding-top: 106px; font-size: 12px; }
  .rav4-hero { padding-top: 34px; }
  .rav4-hero-copy h1 { max-width: 12ch; font-size: clamp(40px, 10.5vw, 54px); }
  .rav4-hero-copy .lead { margin-top: 18px; font-size: 16px; }
  .rav4-hero-image { min-height: 270px; }
  .rav4-type-grid { grid-template-columns: 1fr; }
  .rav4-type-image { min-height: 220px; }
  .rav4-type-copy { padding: 22px; }
  .rav4-rfq-panel { align-items: flex-start; flex-direction: column; padding: 30px 24px; }
  .rav4-rfq-actions, .rav4-rfq-actions .btn { width: 100%; }
  .rav4-rfq-actions .btn { min-height: 52px; }
}
@media (prefers-reduced-motion: reduce) {
  .rav4-type-card { transition: none; }
  .rav4-type-card:hover { transform: none; }
}
