.festival-replay{padding:clamp(2.5rem,5vw,4.5rem) 0;background:var(--green);color:var(--cream)}
.replay-wrap{width:min(88%,80rem);margin:auto;display:grid;grid-template-columns:1fr 1.3fr;align-items:center;gap:clamp(1.5rem,4vw,4rem)}
.replay-copy h2{font:700 clamp(2rem,4vw,3.6rem)/1.1 'Mona Sans Wide Bold','Mona Sans',sans-serif;letter-spacing:-.03em;color:inherit;margin:.6rem 0 1.5rem}
.replay-copy p{line-height:1.6}.replay-kicker{font-size:.75rem;font-weight:700;letter-spacing:.1em}
.replay-button{display:inline-block;margin-top:.8rem;padding:.85rem 1.1rem;background:var(--yellow);color:var(--ink);font-size:.85rem;font-weight:700;line-height:1.5;text-decoration:none}
.replay-preview{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--ink);color:var(--cream);box-shadow:8px 8px 0 var(--red)}
.replay-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:inherit}
.replay-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.7rem;text-align:center;padding:1rem}.replay-fallback>span:first-child{font-size:2rem}.replay-fallback strong{font-size:clamp(1.4rem,3vw,2.5rem)}
.replay-2024{background:var(--archive-base);color:var(--archive-text);border-top:1px solid #ffe1b055;font-family:var(--archive-copy)}
.replay-2024 .replay-copy h2{font-family:var(--archive-heading);font-weight:var(--archive-heading-weight);letter-spacing:normal}
.replay-2024 .replay-kicker,.replay-2024 .replay-button,.replay-2024 .replay-fallback{font-family:var(--archive-label)}
.replay-2024 .replay-button{background:var(--archive-text);color:var(--archive-base)}
.replay-2024 .replay-preview{background:var(--archive-panel);color:var(--archive-text);box-shadow:8px 8px 0 #ffe1b044}
.festival-replay a:focus-visible{outline:3px solid currentColor;outline-offset:5px}.replay-button:hover{text-decoration:underline;text-underline-offset:.2em}
@media(max-width:700px){.replay-wrap{grid-template-columns:1fr}.replay-preview{box-shadow:5px 5px 0 var(--red)}.replay-2024 .replay-preview{box-shadow:5px 5px 0 #ffe1b044}}
