:root{--paper:#fffdf7}
.intro{grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:clamp(1.5rem,4vw,4rem);padding:3rem 0}
.intro h1{font-size:clamp(2.2rem,3.7vw,3.8rem)}
.intro figure{margin:0;max-width:none;min-width:0}
.intro figure a,.program-art a{display:block}
.intro figure img{display:block;width:100%;height:auto;border-radius:12px}
.intro figcaption{font-size:.75rem;color:var(--muted);line-height:1.6;margin-top:.7rem}
.program-row:has(figure){grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:clamp(1.5rem,4vw,4rem);padding:2.8rem 0}
.program-row:nth-of-type(even)>figure{order:2}
.program-row figure{max-width:none}
.program-row figure img{display:block;aspect-ratio:auto;object-fit:contain;background:transparent;border-radius:12px}
.program-row h3{font-size:clamp(1.5rem,2.1vw,2rem);text-wrap:balance}
.program-row figcaption{font-size:.75rem;margin-top:.7rem}
.program-art a:focus-visible{outline-offset:5px}
@media(max-width:800px){.intro{grid-template-columns:1fr}.intro h1{max-width:25ch}.intro figure{max-width:none}.program-row:has(figure){grid-template-columns:1fr;gap:1.1rem;padding:2rem 0}.program-row:nth-of-type(even)>figure{order:0}.program-row figure{max-width:none}.program-row h3{font-size:1.5rem}}
@media print{.intro{display:block}.program-row:has(figure){grid-template-columns:32% 1fr;gap:1rem}.program-row:nth-of-type(even)>figure{order:0}}
