/* Scoped additions; established typography, galleries and viewer are reused. */
.previous-projects main{min-width:0}
.previous-projects h1{max-width:none;font-size:clamp(40px,5.5vw,82px);line-height:1.12}
.pp-heading{padding:85px 0 48px}
.pp-detail-heading{padding-top:65px}
/* Shared level for all Previous Projects detail titles, matching Workshop & Exhibition. */
.previous-projects .pp-detail-heading h1{font-size:clamp(36px,4vw,58px);max-width:880px;line-height:1.2}
.pp-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:76px 6%;margin:20px 0 135px}
.pp-project-card{display:block;min-width:0}
.pp-cover{aspect-ratio:1;overflow:hidden;display:flex;align-items:flex-end}
.pp-cover img{width:100%;height:100%;object-fit:contain;object-position:left bottom;transition:transform 450ms ease}
.voices .pp-project-grid h2{font-size:clamp(22px,2.3vw,33px);line-height:1.3;letter-spacing:-.025em;margin-top:22px}
.pp-project-card h2 span{font:18px Arial,sans-serif;margin-left:10px;display:inline-block;transition:transform 200ms ease}
.pp-project-card>p{font-size:14px;line-height:1.7;color:var(--muted);margin-top:9px}
.pp-project-card:hover h2,.pp-project-card:focus-visible h2{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.pp-project-card:hover h2 span{transform:translate(2px,-2px)}
.pp-project-placeholder{display:flex;align-items:flex-end;padding-bottom:33px;min-width:0}
.voices .pp-project-placeholder h2{margin-top:0}
@media(hover:hover){.pp-project-card:hover img{transform:scale(1.012)}}
.pp-hero img{width:100%;height:auto}
.pp-intro{max-width:880px;margin:70px 0 95px}
.pp-intro p+p,.pp-moving-intro p+p{margin-top:1.35em}
.pp-illusion-intro{margin-top:0;margin-bottom:85px}
.pp-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 6%;align-items:start}
.pp-overview .photo-button{width:100%}
.pp-overview figcaption{font-size:12px;line-height:1.85;color:var(--muted);margin-top:24px}
.pp-section{margin:130px 0 145px}
.pp-section>h2{font-size:clamp(32px,3.4vw,48px);line-height:1.2;margin-bottom:40px}
.pp-painting-gallery{margin-bottom:130px}
.pp-paintings .v-caption{font-size:12px;line-height:2.2;min-height:88px}
.pp-paintings .v-caption::first-line{font-size:15px;color:var(--ink)}
.pp-film-track{display:flex;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;padding:4px 0;cursor:grab;touch-action:pan-x pan-y}
.pp-film-track::-webkit-scrollbar{display:none}
.pp-film-track.is-dragging{cursor:grabbing;user-select:none}
.pp-film-track img{flex:0 0 auto;height:clamp(145px,18vw,235px);width:auto;max-width:none;scroll-snap-align:start}
.pp-film-strip .v-controls{justify-content:flex-end;gap:0}
.pp-moving-intro{max-width:880px;margin:60px 0 48px}
.pp-video{aspect-ratio:16/9;max-width:1100px}
.pp-video iframe{display:block;width:100%;height:100%;border:0}
.pp-video-info{color:var(--muted);margin-top:27px}
.pp-video-info>span:first-child{margin-bottom:8px}.pp-video-info>span:last-child{margin-top:8px}
@media(max-width:1000px){.pp-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:58px 6%}}
@media(max-width:900px){.pp-heading{padding-top:55px}}
@media(max-width:600px){
 .previous-projects h1{font-size:43px}
 .pp-heading{padding:45px 0 30px}.pp-detail-heading{padding-top:40px}
 .pp-project-grid{grid-template-columns:1fr;gap:48px;margin:10px 0 85px}
 .pp-cover{aspect-ratio:auto}.pp-cover img{height:auto;object-fit:contain}
 .voices .pp-project-grid h2{font-size:25px}.pp-project-card>p{font-size:13px}
 .pp-project-placeholder{padding-bottom:0}
 .pp-intro{margin:42px 0 60px}.pp-illusion-intro{margin-top:0}
 .pp-overview{grid-template-columns:1fr;gap:38px}.pp-overview figcaption{margin-top:18px;font-size:11px}
 .pp-section{margin:85px 0 95px}.pp-section>h2{font-size:31px;margin-bottom:28px}
 .pp-painting-gallery{margin-bottom:85px}.pp-moving-intro{margin:38px 0 32px}
 .pp-film-track{gap:10px}.pp-paintings .v-caption::first-line{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.pp-cover img,.pp-project-card h2 span{transition:none}}

/* Alzheimer’s Duality refinements; no other project uses these rules. */
.pp-alzheimers .pp-intro,.pp-alzheimers .pp-moving-intro{max-width:none;text-align:left;text-align-last:auto}
.pp-alzheimers .pp-overview .photo-button{position:relative}
.pp-alzheimers .pp-overview figure:nth-child(-n+2) .photo-button{aspect-ratio:5843 / 4000}
.pp-alzheimers .pp-overview figure:nth-child(n+3) .photo-button{aspect-ratio:3935 / 2754}
.pp-alzheimers .pp-overview .photo-button img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.pp-alzheimers .pp-overview figure:nth-child(4) .photo-button img{object-fit:cover;object-position:right center}
.pp-monoprint-gallery{min-width:0;position:relative}
.pp-monoprint-track{display:flex;gap:28px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px 0;cursor:grab;touch-action:pan-x pan-y}
.pp-monoprint-track::-webkit-scrollbar{display:none}
.pp-monoprint-track.is-dragging{cursor:grabbing;user-select:none}
.pp-monoprint-group{flex:0 0 100%;min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,2vw,28px);align-items:center;scroll-snap-align:start}
.pp-monoprint-group .photo-button{position:relative;width:100%;min-width:0;aspect-ratio:3 / 4}
.pp-monoprint-group img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
/* Reuse the unchanged Workshop filmstrip construction with a local dark variant. */
.pp-alzheimers .filmstrip-dark .strip-track{border:0;scroll-padding-inline:8px;background-color:#000;background-image:radial-gradient(ellipse at center,#f1f0eb 0 3px,transparent 3.5px),radial-gradient(ellipse at center,#f1f0eb 0 3px,transparent 3.5px)}
.pp-alzheimers .filmstrip-dark .strip-track img{height:160px;width:auto;max-width:none;object-fit:contain}
@media(min-width:601px){.pp-alzheimers .pp-overview{grid-template-columns:repeat(2,minmax(0,47%))}}
@media(max-width:700px){.pp-monoprint-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pp-monoprint-track{gap:20px}}
@media(max-width:700px){.previous-projects .pp-detail-heading h1{font-size:clamp(32px,8.5vw,42px)}.pp-alzheimers .filmstrip-dark .strip-track img{height:135px}}
