.rv-category-section { --rv-ink:#16181c; --rv-muted:#666d77; --rv-soft:#f5f6f8; --rv-line:#e5e8ec; --rv-action:#17191d; padding:clamp(68px,7vw,104px) max(28px,calc((100vw - 1440px)/2)); background:#ffffff; color:var(--rv-ink); }
.rv-category-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.rv-category-card { min-height:0; display:grid; grid-template-rows:auto 1fr; overflow:hidden; border:1px solid var(--rv-line); border-radius:12px; background:#ffffff; color:var(--rv-ink); transition:transform .22s ease,box-shadow .22s ease; }
.rv-category-card:hover { transform:translateY(-3px); box-shadow:0 16px 42px rgba(18,24,32,.07); }
.rv-category-card img { width:100%; height:auto; aspect-ratio:4 / 3; display:block; object-fit:cover; object-position:center; padding:0; background:#f5f6f8; }
.rv-category-card > div { padding:22px; background:#ffffff; border-top:1px solid var(--rv-line); }
.rv-category-card span { color:var(--rv-muted); font-size:11px; font-weight:800; }
.rv-category-card h3 { margin:9px 0 18px; font-size:clamp(22px,2vw,32px); letter-spacing:-.02em; line-height:1.15; }
.rv-category-card b { font-size:13px; }
@media (max-width:1100px) { .rv-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:900px) { .rv-category-grid { grid-template-columns:1fr; } }
@media (max-width:600px) { .rv-category-section { padding-inline:14px; } }
@media (prefers-reduced-motion: reduce) { .rv-category-card { transition:none; } }
