/* Heavenly Corruption — approved portrait gallery, 2026-10-25. */
.cast-grid{gap:18px;background:transparent;border:0;align-items:stretch}
.cast-card{position:relative;overflow:hidden;min-height:0;border:1px solid rgba(191,196,207,.22);background:linear-gradient(145deg,#15171d 0%,#090b0e 88%);box-shadow:0 12px 35px rgba(0,0,0,.22);transition:border-color .24s,transform .24s,box-shadow .24s}
.cast-card:hover{border-color:rgba(210,212,223,.55);transform:translateY(-3px);box-shadow:0 18px 48px rgba(0,0,0,.33)}
.cast-card.cast-portrait{padding:0 0 26px}
.cast-portrait .cast-avatar{position:relative;display:block;margin:0;width:100%;height:auto;aspect-ratio:2/3;border:0;border-radius:0;background:#090b0f;overflow:hidden}
.cast-portrait .cast-avatar img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .5s ease;filter:contrast(1.03)}
.cast-portrait:hover .cast-avatar img{transform:scale(1.018)}
.cast-portrait .cast-avatar::after{content:"";position:absolute;inset:0;border:1px solid rgba(219,222,230,.16);pointer-events:none}
.cast-portrait .cast-no{position:absolute;z-index:2;top:14px;left:14px;padding:7px 10px;background:rgba(7,9,12,.76);border:1px solid rgba(222,228,240,.25);color:#d5dbe5;font-size:10px;letter-spacing:.18em;backdrop-filter:blur(8px)}
.cast-portrait h3{margin:22px 24px 10px;font-family:Georgia,serif;font-size:23px;font-weight:400;letter-spacing:.14em;color:#f4f1eb}
.cast-portrait p{margin:0 24px;color:#bbc0c9;font-size:13px;line-height:1.7}
.cast-card:not(.cast-portrait){min-height:320px}
@media(max-width:600px){.cast-grid{gap:15px}.cast-portrait h3{font-size:22px}.cast-portrait .cast-avatar{aspect-ratio:2/3}}
@media(prefers-reduced-motion:reduce){.cast-card,.cast-portrait .cast-avatar img{transition:none}.cast-card:hover{transform:none}.cast-portrait:hover .cast-avatar img{transform:none}}


/* 2026-11-04 · Six canonical user-supplied portraits. A4, without cropping. */
.cast-grid{align-items:start}
.cast-grid .cast-portrait .cast-avatar{display:block!important;width:100%;height:auto!important;aspect-ratio:210/297!important;overflow:hidden;border:0!important;border-radius:0!important;background:#06070a}
.cast-grid .cast-portrait .cast-avatar img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important;filter:none!important}
.cast-grid .cast-portrait:hover .cast-avatar img{transform:none!important}
.cast-grid .cast-portrait h3{font-size:clamp(19px,2.2vw,25px);line-height:1.2;overflow-wrap:anywhere}
@media(max-width:720px){.cast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.cast-grid{grid-template-columns:1fr}}
