.yt{position:relative;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:8px;background:#103A5C}
.yt.short{aspect-ratio:9/16}
.yt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt-play{position:absolute;left:50%;top:50%;width:68px;height:48px;margin:-24px 0 0 -34px;border-radius:12px;background:#9B1D32;box-shadow:0 4px 14px rgba(0,0,0,.3);transition:transform .15s}
.yt-play::after{content:"";position:absolute;left:27px;top:14px;border-style:solid;border-width:10px 0 10px 17px;border-color:transparent transparent transparent #fff}
.yt:hover .yt-play,.yt:focus-visible .yt-play{transform:scale(1.08)}
.vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:1.8rem}
.vgrid.shorts{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:1.4rem}
.vgrid>*{min-width:0}
.vcard{margin:0;display:grid;gap:.7rem;align-content:start}
.vcard figcaption{display:grid;gap:.3rem}
.vcard b{font-family:var(--display);color:var(--ink);line-height:1.2}
.vcard span{color:var(--muted);font-size:.92rem}
.vguide{font-size:.9rem;font-weight:700}
.vinline{margin:.4rem 0 0;display:grid;gap:.5rem;max-width:42rem}
.vinline .yt.short{max-width:11rem}
.vinline figcaption{font-size:.9rem;color:var(--muted)}
