.seo-section{background: linear-gradient(180deg, rgba(126,190,85,.035), transparent);}
.seo-copy{display: grid; grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr); gap: clamp(36px, 6vw, 78px); align-items: start;}
.seo-copy h2{max-width: 520px; margin: 14px 0 0; font: 400 clamp(34px, 4.2vw, 56px)/1.08 Georgia, serif;}
.seo-columns{display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; max-width: 790px;}
.seo-columns p{margin: 0; color: #c7c4ba; font: 16px/1.78 Georgia, serif;}
.seo-columns a{color: var(--gold-soft); border-bottom: 1px solid rgba(126,190,85,.42);}
.catalog-tools{display: grid; grid-template-columns: minmax(0,1.45fr) minmax(0,1fr) minmax(0,1.3fr) auto; gap: 12px; padding: 18px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface);}
.catalog-tools > .btn{align-self:end;min-height:48px;}
.catalog-tools label{display: grid; gap: 8px;}
.catalog-tools label > span{margin-left: 4px; color: var(--muted); font-size: 10px; letter-spacing: .12em; text-transform: uppercase;}
.catalog-tools input, .catalog-tools select{width: 100%; height: 48px; padding: 0 14px; border: 1px solid var(--line); border-radius: 12px; background: #0d0f0e; color: var(--text);}
.catalog-summary{display: flex; justify-content: space-between; gap: 20px; align-items: center; margin: 28px 0 18px;}
.catalog-summary strong{font: 26px Georgia, serif;}
.catalog-grid{display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px;}
.catalog-episode{position: relative; min-height: 220px; display: flex; flex-direction: column; padding: 19px; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: radial-gradient(circle at 80% 5%, rgba(126,190,85,.13), transparent 28%), var(--surface); transition: transform .2s, border-color .2s;}
.catalog-episode:hover, .catalog-episode:focus-visible{transform: translateY(-4px); border-color: rgba(126,190,85,.58);}
.catalog-episode.has-image{background: #111311;}
.catalog-episode.has-image::after{content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(7,8,7,.27) 0%, rgba(7,8,7,.5) 44%, rgba(7,8,7,.97) 100%); pointer-events: none;}
.catalog-episode-image{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease, opacity .35s ease;}
.catalog-episode > picture{position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%;}
.catalog-episode > picture .catalog-episode-image{position: static; width: 100%; height: 100%; object-fit: cover;}
.catalog-episode.has-image:hover .catalog-episode-image, .catalog-episode.has-image:focus-visible .catalog-episode-image{transform: scale(1.035);}
.catalog-episode > :not(.catalog-episode-image):not(picture){position: relative; z-index: 2;}
.catalog-episode-code{color: var(--gold-soft); font-size: 10px; letter-spacing: .14em;}
.catalog-episode h2{margin: auto 0 7px; font: 25px/1.12 Georgia, serif;}
.catalog-episode > p{margin: 0 0 22px; color: var(--muted); font-size: 12px;}
.catalog-episode-meta{display: flex; flex-wrap: wrap; gap: 9px; color: #a9a79e; font-size: 10px;}
.catalog-episode.has-image > p{color: #d0cdc3;}
.catalog-episode.has-image .catalog-episode-meta{color: #c2bfb5;}
.catalog-episode > .watched-label{display: none; position: absolute; top: 13px; right: 13px; z-index: 3; width: auto; padding: 5px 9px; border: 1px solid rgba(147,204,170,.2); border-radius: 999px; background: rgba(27,70,48,.88); color: #e0f1e6; font-size: 9px; line-height: 1; text-transform: uppercase; letter-spacing: .06em; white-space: nowrap; backdrop-filter: blur(8px);}
.catalog-episode.is-watched .watched-label{display: block;}
.catalog-episode[hidden]{display: none;}
.catalog-empty{padding: 46px; text-align: center; color: var(--muted); border: 1px dashed var(--line); border-radius: 18px;}
.catalog-request-error{display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; margin-top: 18px; padding: 15px 18px; border: 1px solid rgba(240,197,65,.4); border-radius: 14px; background: rgba(240,197,65,.07);}
.catalog-request-error[hidden]{display: none;}
.catalog-request-error p{margin: 0; color: #d9d2bd; font-size: 12px;}
.catalog-progressive-footer, .catalog-noscript-nav{display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 22px; color: var(--muted); font-size: 12px;}
.catalog-noscript-nav a{color: var(--gold-soft); font-weight: 700;}
[data-all-episodes][aria-busy="true"] .catalog-grid{opacity: .55;}
@media (max-width: 980px){.catalog-tools{grid-template-columns: 1fr 1fr;}
.catalog-grid{grid-template-columns: repeat(3, 1fr);}}
@media (max-width: 680px){.seo-copy, .music-layout{grid-template-columns: 1fr; gap: 30px;}
.seo-columns{columns: 1;}
.catalog-tools{grid-template-columns: 1fr;}
.catalog-summary{align-items: stretch; flex-direction: column;}
.catalog-progressive-footer, .catalog-noscript-nav{align-items: stretch; flex-direction: column;}
.catalog-progressive-footer .btn{width: 100%;}
.catalog-grid{grid-template-columns: 1fr;}
.catalog-episode{min-height: 190px;}}