.voice-section .section-head{gap:20px}
.voice-section .section-head h2{font-size:clamp(1.9rem,3.6vw,2.6rem);line-height:1.15}
.voice-videos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.voice-card{min-width:0;overflow:hidden;border:1px solid #ffffff20;border-radius:12px;background:#111216;scroll-snap-align:start}
.voice-player{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#050506}
.voice-play{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:#050506;color:#fff;cursor:pointer}
.voice-play img{display:block;width:100%;height:100%;object-fit:cover}
.voice-play:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#000b);pointer-events:none}
.voice-play-icon{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:42px;border:1px solid #ffffff60;border-radius:12px;background:#17181ddd}
.voice-play-icon svg{width:27px;height:27px;fill:currentColor}
.voice-play:hover .voice-play-icon{background:#b0004b;border-color:#d4558b}
.voice-play-label{position:absolute;z-index:1;left:14px;bottom:12px;font:600 .875rem/1.3 Inter,system-ui,sans-serif}
.voice-play:focus-visible{outline:3px solid #ef91b8;outline-offset:-4px}
.voice-player iframe{display:block;width:100%;height:100%;border:0}
.voice-card-copy{padding:18px}
.voice-card-copy h3{margin:0 0 10px;color:#f3f3f5;font:600 1.05rem/1.4 Inter,system-ui,sans-serif}
.voice-card-copy a{display:inline-flex;align-items:center;min-height:38px;color:#bfc1c8;font-size:.875rem;text-decoration:none}
.voice-card-copy a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){.voice-videos{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(280px,86%);overflow-x:auto;scroll-snap-type:x proximity;scroll-padding-inline:1px;padding-bottom:12px;gap:16px}.voice-section .section-head{align-items:flex-start;flex-wrap:wrap}.voice-card-copy{padding:16px}}

/* Thumbnails navigate to a chapter; playback lives only on its own page. */
.voice-thumbnail{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:#050506;color:#fff}
.voice-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}
.voice-thumbnail:focus-visible{outline:3px solid #ef91b8;outline-offset:-4px}
.voice-duration{position:absolute;right:10px;bottom:10px;padding:3px 6px;border-radius:4px;background:#08090de8;color:#fff;font-size:.8125rem;line-height:1.4}
.voice-card-copy h3>a{display:block;min-height:0;color:inherit;font:inherit;text-decoration:none}
.voice-card-copy h3>a:hover{color:#f0b9d1;text-decoration:underline;text-underline-offset:4px}
.voice-watch{max-width:1100px;margin:0 auto;padding-block:24px}
.voice-watch .voice-player{border-radius:12px}
.voice-watch .voice-play-icon{width:78px;height:56px}
.voice-watch .voice-play-icon svg{width:34px;height:34px}
.voice-source-link{display:inline-flex;align-items:center;min-height:44px;margin-top:12px;color:#bfc1c8;font-size:.875rem;text-decoration:none}
.voice-source-link:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.voice-previous .section-head{align-items:center;gap:20px}
.voice-previous .section-head h2{font:600 clamp(1.4rem,2.6vw,2rem)/1.3 Inter,system-ui,sans-serif;text-transform:none}
.voice-previous-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.voice-previous-grid .voice-card-copy{padding:14px}
.voice-previous-grid h3{font-size:.9375rem}
.voice-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.voice-episode .page-hero h1{max-width:1100px;line-height:1.12}
@media(max-width:1050px){.voice-previous-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.voice-previous-grid,.voice-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.voice-watch{padding-top:16px}.voice-previous .section-head{align-items:flex-start}.voice-previous-grid .voice-card-copy{padding:12px}}
@media(max-width:450px){.voice-catalog{grid-template-columns:minmax(0,1fr)}.voice-previous-grid h3{font-size:.875rem}.voice-watch .voice-play-icon{width:62px;height:46px}}
