/* Canonical cast presentation: existing cast photographs, no new substitute faces.
   The young adults' source portraits are the storybook references; the older Keeper
   and the black carousel horse have their own unambiguous reference stills. */
.hero__art .cast-film-strip{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(0,.74fr);gap:7px;width:100%;align-items:stretch;min-width:0;background:#10191e;}
.hero__art .cast-film-strip__main{overflow:hidden;min-width:0;position:relative;background:#0e151a;}
.hero__art .cast-film-strip__main img{display:block;width:100%;height:100%;aspect-ratio:1.62;object-fit:cover;object-position:48% center;filter:brightness(1.055) contrast(1.045) saturate(.78);border:1px solid rgba(223,203,168,.25);}
.hero__art .cast-film-strip__evidence{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:7px;min-width:0;}
.hero__art .cast-film-strip__fragment{position:relative;min-width:0;min-height:0;overflow:hidden;background:#10181c;border:1px solid rgba(202,173,136,.34);}
.hero__art .cast-film-strip__fragment img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 37%;filter:brightness(1.065) contrast(1.035) saturate(.78);}
.hero__art .cast-film-strip__fragment:last-child img{object-position:54% 48%;}
.hero__art .cast-film-strip__label{position:absolute;bottom:0;left:0;right:0;z-index:1;background:linear-gradient(transparent,rgba(4,9,12,.92));font-size:clamp(.52rem,.67vw,.69rem);font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:#eee0c9;text-align:center;padding:20px 5px 8px;text-shadow:0 1px 5px rgba(0,0,0,.9);}
.hero__art>figcaption{font-size:.66rem;letter-spacing:.095em;line-height:1.45;padding:12px 5px 5px;color:#cbbb9f;}
/* This replaces the former hero image with one coherent archival group of recurring faces. */
.hero__art>img{display:none!important;}
@media (max-width:850px){
 .hero__art .cast-film-strip{grid-template-columns:minmax(0,2fr) minmax(0,.78fr);gap:5px;}
 .hero__art .cast-film-strip__evidence{gap:5px;}
 .hero__art .cast-film-strip__main img{aspect-ratio:1.68;}
 .hero__art .cast-film-strip__label{font-size:.54rem;letter-spacing:.04em;padding:16px 2px 5px;}
 .hero__art>figcaption{font-size:.61rem;letter-spacing:.06em;}
}
@media(max-width:390px){
 .hero__art .cast-film-strip{grid-template-columns:minmax(0,2.15fr) minmax(0,.8fr);gap:4px;}
 .hero__art .cast-film-strip__evidence{gap:4px;}
 .hero__art .cast-film-strip__label{font-size:.50rem;}
}
@media(prefers-reduced-motion:reduce){.hero__art .cast-film-strip img{animation:none!important;transition:none!important}}
