/* Single project (Stage 2 foundation: structured header + body + previous/next). Figma composition in Stage 3. */
.ps-project { box-sizing: border-box; padding: 24px var(--ps-gutter) 64px; font-family: var(--ps-font-body); }
.ps-project__header { max-width: 720px; margin: 0 auto 40px; text-align: center; }
.ps-project__title { margin: 8px 0 24px; font-weight: 800; font-size: clamp(28px, 5vw, 40px); line-height: 1.15; }
.ps-project__media { display: block; width: 100%; max-width: 400px; height: auto; margin: 0 auto 20px; }
.ps-project__roles, .ps-project__type, .ps-project__year, .ps-project__credits { margin: 0 0 8px; font-size: 12px; line-height: 1.4; }
.ps-project__roles { font-weight: 700; }
.ps-project__summary { margin-top: 16px; font-size: 12px; line-height: 1.5; }
.ps-project__body { max-width: var(--ps-container); margin-inline: auto; overflow-x: clip; } /* Elementor-built bodies can never cause horizontal scrolling */
.ps-project-nav { display: flex; justify-content: space-between; gap: 16px; max-width: var(--ps-container); margin-inline: auto; font-family: var(--ps-font-brand); font-weight: 300; font-size: 15px; letter-spacing: 0.31em; }
.ps-project-nav a { display: inline-flex; align-items: center; min-height: 44px; color: #606060; text-decoration: none; }
.ps-project-nav a:hover { color: #000; }
.ps-project-nav__next { margin-left: auto; }
@media (max-width: 480px) { .ps-project-nav { letter-spacing: 0.12em; } }
