.project-page{background:var(--cream)}
.project-intro{min-height:560px;padding:5.5rem 8vw 4rem;position:relative;display:flex;flex-direction:column;justify-content:flex-end;border-bottom:1px solid var(--line)}
.back-link{position:absolute;top:2.2rem;left:8vw;text-underline-offset:5px;font-size:.9rem}
.project-number{position:absolute;right:8vw;top:1rem;font:italic 1.2rem var(--serif)}
.project-intro h1{font:clamp(5rem,12vw,11rem)/.75 var(--serif);letter-spacing:-.055em;margin:.12em 0 .2em;max-width:1100px}
.project-description{font-size:1.1rem;line-height:1.6;max-width:580px;margin:0 0 0 auto}
.project-hero{margin:0;background:#111;position:relative}
.project-hero img{display:block;width:100%;height:min(82vw,920px);object-fit:cover}
.project-hero figcaption{position:absolute;left:2rem;bottom:1.5rem;color:#fff;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;text-shadow:0 2px 12px #000}
.project-gallery{padding:1.25rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;background:var(--cream)}
.project-gallery figure{margin:0;min-height:42vw;background:#d8cebc;overflow:hidden}
.project-gallery figure:nth-child(3n){grid-column:1/-1;min-height:56vw}
.project-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.project-gallery figure:hover img{transform:scale(1.018)}
.project-notes{padding:7rem 8vw;display:grid;grid-template-columns:1fr 3fr;gap:3rem;border-bottom:1px solid var(--line)}
.project-notes>p:last-child{font:clamp(2rem,4vw,4rem)/1.05 var(--serif);margin:0;max-width:900px}
.next-project{padding:4rem 8vw;display:grid;grid-template-columns:1fr 3fr auto;align-items:end;gap:2rem;text-decoration:none;background:var(--pink);transition:background .2s}
.next-project:hover{background:#e8b9c1}
.next-project span{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}
.next-project strong{font:clamp(2.8rem,6vw,6rem)/.9 var(--serif);font-weight:400}
.next-project b{font-size:2.5rem;font-weight:400}
@media(max-width:800px){.project-intro{min-height:500px;padding:5rem 18px 3rem}.back-link{left:18px}.project-number{right:18px}.project-intro h1{font-size:4.8rem}.project-description{margin-left:0}.project-hero img{height:125vw}.project-hero figcaption{left:18px;bottom:1rem}.project-gallery{padding:10px;display:block}.project-gallery figure,.project-gallery figure:nth-child(3n){min-height:0;height:auto;margin-bottom:10px}.project-gallery img{height:auto}.project-notes{padding:5rem 18px;display:block}.project-notes>p:last-child{font-size:2.5rem;margin-top:2rem}.next-project{padding:3rem 18px;grid-template-columns:1fr auto}.next-project span{grid-column:1/-1}.next-project strong{font-size:3.3rem}}

/* Keep photographs comfortably within the viewport, with their full composition. */
.project-hero{max-width:1120px;margin:2rem auto;background:transparent;padding:0 24px}
.project-hero img{width:100%;height:auto;max-height:70svh;object-fit:contain}
.project-hero figcaption{position:static;color:var(--ink);text-shadow:none;padding:1rem 0 0}
.project-gallery{max-width:1120px;margin:auto;padding:1.5rem 24px;gap:2rem;align-items:center}
.project-gallery figure,.project-gallery figure:nth-child(3n){grid-column:auto;min-height:0;height:auto;background:transparent}
.project-gallery img{width:100%;height:auto;max-height:560px;object-fit:contain}
@media(max-width:800px){.project-hero{padding:0 20px;margin:1.5rem auto}.project-hero img{height:auto;max-height:65svh}.project-gallery{padding:1rem 20px}.project-gallery figure,.project-gallery figure:nth-child(3n){margin-bottom:2rem}.project-gallery img{height:auto;max-height:65svh}}
