.project-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; margin-top: 28px; }
.project-card { border: 1px solid var(--mv-line-dark); border-radius: var(--mv-radius-lg); background: var(--mv-bg-surface); transition: transform .2s ease, border-color .2s ease; }
.project-card:hover { transform: translateY(-4px); border-color: color-mix(in srgb, var(--mv-accent-sage) 45%, var(--mv-line-dark)); }
.project-photos { display: flex; gap: 2px; height: 200px; border-radius: var(--mv-radius-lg) var(--mv-radius-lg) 0 0; overflow: hidden; }
.project-photos img { flex: 1 1 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.project-card h3 { font-size: 1.05rem; padding: 18px 20px 0; margin: 0; color: var(--mv-text-primary); }
.project-card p { color: var(--mv-text-secondary); padding: 8px 20px 20px; margin: 0; font-size: .92rem; }

@media (max-width: 480px) {
  .project-grid { grid-template-columns: 1fr; }
}
