.rv-photo-section { padding-top: 2rem; }
.rv-photo-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; margin-top: 2rem; }
.rv-photo-card { margin: 0; overflow: hidden; background: #f7f5ef; border-radius: 10px; box-shadow: 0 5px 20px rgba(0,0,0,.08); }
.rv-photo-card a { display: block; }
.rv-photo-card img { display: block; width: 100%; height: 250px; object-fit: cover; transition: transform .2s ease; }
.rv-photo-card a:hover img { transform: scale(1.025); }
.rv-photo-card figcaption { padding: .85rem 1rem; font-weight: 650; color: #233b2d; }
@media (max-width: 850px) { .rv-photo-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 560px) { .rv-photo-grid { grid-template-columns: 1fr; } .rv-photo-card img { height: auto; aspect-ratio: 4 / 3; object-fit: cover; } }
