/* Static, fully readable list is the no-script/reduced-motion default. */
.site-footer { display:block; padding:0; color:var(--ink); background:var(--paper); }
.footer-links { margin:0 var(--gutter); padding:54px 0 42px; border-top:1px solid var(--line-light); display:grid; grid-template-columns:1fr 1fr 1fr; gap:32px; }
.footer-follow,.site-footer .footer-navigation { display:flex; flex-direction:column; align-items:flex-start; gap:0; grid-column:auto; }
.site-footer .footer-label { color:var(--muted-light); font-size:10px; letter-spacing:.12em; margin-bottom:20px; }
.footer-follow a,.site-footer .footer-navigation a { display:flex; align-items:center; min-height:44px; font-size:16px; }
.site-footer .footer-navigation { justify-self:end; min-width:160px; }
.footer-back { justify-self:center; align-self:end; font-size:12px; min-height:44px; display:flex; align-items:center; gap:12px; }
.footer-artists { color:var(--paper); background:var(--ink); padding:26px 0 18px; overflow:hidden; }
.footer-band-top { padding:0 var(--gutter); display:flex; align-items:center; justify-content:space-between; gap:24px; }
.footer-band-top h2 { font:400 10px/1.6 'Helvetica Neue',Helvetica,sans-serif; letter-spacing:.1em; }
.footer-pause { background:none; border:1px solid var(--line-dark); padding:10px 14px; font-size:11px; min-height:44px; white-space:nowrap; }
.footer-marquee { margin-top:24px; overflow:hidden; }
.footer-artist-list { margin:0; padding:0 var(--gutter); list-style:none; display:flex; flex-wrap:wrap; gap:14px 34px; }
.footer-artist-list li { font:400 clamp(24px,3vw,48px)/1.42 'San Display',Impact,sans-serif; }
.footer-track.is-animated { display:flex; width:max-content; will-change:transform; }
.is-animated .footer-artist-list { flex-wrap:nowrap; flex-shrink:0; align-items:baseline; padding:0; gap:0; }
.is-animated .footer-artist-list li { white-space:nowrap; font-size:clamp(72px,11vw,180px); padding-right:.55em; }
.is-animated .footer-artist-list li::after { content:'·'; margin-left:.55em; }
/* Required CC BY-SA attribution for the film's crowd sound. */
.footer-credit { margin:0 var(--gutter); padding:0 0 28px; font-size:11px; line-height:1.7; color:var(--muted-light); max-width:70ch; }
.footer-credit a { text-decoration:underline; text-underline-offset:2px; }
/* Maker line: last line of the page, bottom right, inside the dark band. */
.site-footer .footer-maker { max-width:none; margin:18px 0 0; padding:0 var(--gutter); text-align:right; }
.footer-maker a { color:var(--paper); text-decoration:underline; text-underline-offset:2px; }
@media(max-width:600px) {
 .footer-links { grid-template-columns:1fr 1fr; gap:26px; padding-top:36px; }
 .footer-back { grid-column:1/-1; grid-row:2; }
 .site-footer .footer-navigation { min-width:0; }
 .footer-follow a,.site-footer .footer-navigation a { font-size:14px; }
 .footer-band-top { align-items:flex-start; gap:16px; }
 .footer-band-top h2 { max-width:180px; }
 .footer-artist-list { gap:12px 24px; }
}
@media(prefers-reduced-motion:reduce) { .footer-pause { display:none; } }

.portrait-quote { grid-column:1/-1; margin:0; padding:60px var(--gutter) 70px; border-top:1px solid var(--line-light); }
.portrait-quote blockquote { margin:0; max-width:1100px; }
.portrait-quote blockquote p { font:400 clamp(28px,4vw,64px)/1.42 'San Display',Impact,sans-serif; text-wrap:balance; }
.portrait-quote figcaption { display:flex; flex-wrap:wrap; align-items:baseline; gap:14px 28px; margin-top:24px; font-size:11px; line-height:1.7; }
.portrait-quote figcaption > span { letter-spacing:.12em; }
.portrait-quote figcaption a { color:var(--muted-light); text-decoration:underline; text-underline-offset:4px; padding:10px 0; }
@media(max-width:600px) { .portrait-quote { padding:36px var(--gutter) 44px; } }
