.episodes-section { background: #f5f7fa; }
.episodes-intro { max-width: 720px; margin-bottom: 26px; color: #657181; line-height: 1.7; }
.episodes-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.episode-card { overflow: hidden; border: 1px solid #e0e6ed; border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(17,45,74,.07); }
.episode-cover { position: relative; display: block; aspect-ratio: 16/9; overflow: hidden; background: #e8edf2; }
.episode-cover img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.episode-cover:hover img { transform: scale(1.04); }
.episode-cover > span { position: absolute; inset: 50% auto auto 50%; display: grid; width: 48px; height: 48px; place-items: center; border-radius: 50%; background: var(--red); color: #fff; transform: translate(-50%,-50%); box-shadow: 0 5px 18px rgba(0,0,0,.28); }
.episode-card > div { padding: 18px; }
.episode-meta { color: var(--red); font-size: 10px; font-weight: 800; letter-spacing: .06em; }
.episode-card h3 { margin: 7px 0 4px; color: var(--navy); font-size: 18px; line-height: 1.3; }
.episode-card strong { color: #536273; font-size: 12px; }
.episode-card p { min-height: 42px; margin: 10px 0 15px; color: #6b7785; font-size: 12px; line-height: 1.55; }
.episode-card > div > a { display: inline-flex; align-items: center; gap: 7px; color: var(--red); font-size: 12px; font-weight: 800; }
.episodes-empty { grid-column: 1/-1; border: 1px dashed #ccd4de; border-radius: 12px; padding: 40px 18px; color: #687483; text-align: center; }
@media (max-width: 900px) { .episodes-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .episodes-grid { grid-template-columns: 1fr; } }

.tv-episodes { margin-top: 52px; padding-top: 42px; border-top: 1px solid #dfe5ec; }
.tv-episodes .section-heading { margin-bottom: 8px; }
