/* PROJECT NO. 01 — only page-specific styling. General site CSS: css/style.css */
.project-intro { text-align: center; }
.project-intro .lead { max-width: 760px; margin: 0 auto; }
.project-leon__content { display: flex; align-items: center; gap: 48px; max-width: 950px; margin: auto; }
.project-leon__content img { width: 44%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 20px; }
.project-leon__content h2 { margin: 12px 0; }
.project-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.project-card { background: white; border: 1px solid #e6e9ee; border-radius: 18px; overflow: hidden; box-shadow: 0 10px 35px rgba(10, 26, 51, .07); }
.project-card > img, .project-card__placeholder { width: 100%; height: 240px; object-fit: cover; display: flex; justify-content: center; align-items: center; }
.project-card__placeholder { background: #e8edf3; color: #58677a; padding: 24px; text-align: center; }
.project-card__body { padding: 25px; }
.project-card__body h3 { margin: 10px 0; }
@media (max-width: 850px) { .project-grid { grid-template-columns: 1fr; } .project-leon__content { flex-direction: column; text-align: center; } .project-leon__content img { width: 100%; max-width: 520px; } }
