.koc-cast-grid.koc-episode-layout { display:flex; flex-direction:column; gap:64px; }
.koc-episode-row { display:grid; grid-template-columns:minmax(0,740px) 420px; gap:3.4rem; align-items:start; width:100%; }
.koc-cast-grid .koc-episode-copy { min-width:0; grid-area:auto; }
.koc-episode-copy > h2:first-child { margin-top:0!important; }
.koc-episode-row .koc-cast-portrait { grid-area:auto; }
.koc-episode-row-solo { grid-template-columns:minmax(0,740px); } /* v6: 사진 칸 없이 글만 남은 줄 */
.koc-episode-photo { margin:12px 0 0!important; padding:12px 12px 20px; background:#fffefa; border:1px solid #e8e3d9; box-shadow:0 8px 24px #352b1710; transform:rotate(.7deg); }
.koc-episode-row:last-child .koc-episode-photo { transform:rotate(-.7deg); }
.koc-episode-photo img { display:block; width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; }
.koc-episode-photo figcaption { margin:16px 6px 0!important; font-size:15px!important; line-height:1.8!important; color:#655f55; }
@media(max-width:900px){
 .koc-episode-row { grid-template-columns:1fr; gap:32px; }
 .koc-cast-grid.koc-episode-layout { gap:48px; }
 .koc-episode-row:first-child .koc-cast-portrait { grid-row:1; }
 .koc-episode-photo { max-width:420px; width:calc(100% - 8px); box-sizing:border-box; justify-self:center; transform:none!important; }
}
