.pvt{display:block;width:100%;margin:4rem 0;color:rgb(var(--color-foreground));}
.pvt *{box-sizing:border-box;}
.pvt__heading{margin:0 0 1.5rem;font-family:var(--font-heading-family);font-size:2.2rem;font-weight:700;line-height:1.2;text-align:center;}
.pvt__viewport{position:relative;}
.pvt__track{display:flex;gap:2rem;margin:0;padding:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;list-style:none;}
.pvt__track::-webkit-scrollbar{display:none;}
.pvt__slide{flex:0 0 calc((100% - 4rem)/3);min-width:0;margin:0;scroll-snap-align:start;list-style:none;}
.pvt__card{position:relative;overflow:hidden;width:100%;aspect-ratio:3/5;border-radius:1.4rem;background:#242424;box-shadow:0 3px 12px rgba(0,0,0,.15);}
.pvt__preview-video,.pvt__open,.pvt__open picture,.pvt__poster{display:block;width:100%;height:100%;}
.pvt__preview-video,.pvt__poster{object-fit:cover;}
.pvt__open{position:absolute;inset:0;padding:0;border:0;background:transparent;color:#fff;cursor:pointer;}
.pvt__open:disabled{cursor:default;}
.pvt__poster,.pvt__shade,.pvt__play{transition:opacity .2s ease,transform .2s ease;}
.pvt__shade{position:absolute;inset:0;background:rgba(0,0,0,.12);}
.pvt__play{position:absolute;bottom:1.4rem;left:1.4rem;width:4.8rem;height:4.8rem;filter:drop-shadow(0 3px 10px rgba(0,0,0,.24));}
.pvt__play svg{display:block;width:100%;height:100%;}
.pvt__slide.is-previewing .pvt__poster,.pvt__slide.is-previewing .pvt__shade,.pvt__slide.is-previewing .pvt__play{opacity:0;}
.pvt__open:hover .pvt__play{transform:scale(1.06);}
.pvt__open:focus-visible{outline:.3rem solid #ef4a23;outline-offset:-.5rem;}
.pvt__caption{margin:1rem .4rem 0;font-size:1.4rem;line-height:1.4;}
.pvt__arrow{position:absolute;z-index:3;top:50%;display:grid;width:3.4rem;height:5.6rem;padding:0;place-items:center;border:0;border-radius:.6rem;background:rgba(255,255,255,.84);color:#282828;box-shadow:0 2px 12px rgba(0,0,0,.12);cursor:pointer;transform:translateY(-50%);}
.pvt__arrow svg{width:2.4rem;height:2.4rem;fill:currentColor;}
.pvt__arrow--previous{left:.4rem}.pvt__arrow--previous svg{transform:rotate(180deg)}.pvt__arrow--next{right:.4rem}
.pvt__arrow:disabled{opacity:.35;cursor:default}.pvt__arrow:focus-visible{outline:.3rem solid #ef4a23;outline-offset:.3rem}
.pvt__dialog{position:fixed;overflow:visible;width:min(900px,calc(90vw - 4rem));max-width:none;max-height:calc(100dvh - 4rem);padding:0;border:0;border-radius:1.6rem;background:#111;color:#fff;}
.pvt__dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(2px);}
.pvt__popup-player{display:grid;overflow:hidden;width:100%;max-height:calc(100dvh - 4rem);place-items:center;border-radius:1.6rem;background:#111;}
.pvt__popup-video{display:block;width:100%;max-height:calc(100dvh - 4rem);object-fit:contain;}
.pvt__close{position:absolute;z-index:4;top:1rem;right:1rem;display:grid;width:4.4rem;height:4.4rem;padding:0;place-items:center;border:0;border-radius:.8rem;background:#777;color:#fff;font-size:3.6rem;line-height:1;cursor:pointer;}
.pvt__popup-arrow{position:absolute;z-index:4;top:50%;display:grid;width:5.6rem;height:6.2rem;padding:0;place-items:center;border:0;border-radius:.8rem;background:#777;color:#fff;cursor:pointer;transform:translateY(-50%);}
.pvt__popup-arrow svg{width:2.6rem;height:2.6rem;fill:currentColor}.pvt__popup-arrow--previous{left:1rem}.pvt__popup-arrow--previous svg{transform:rotate(180deg)}.pvt__popup-arrow--next{right:1rem}
@media(max-width:989px){.pvt__slide{flex-basis:calc((100% - 2rem)/2)}}
@media(max-width:749px){.pvt{margin:3rem 0}.pvt__heading{margin-bottom:1.5rem;font-size:2rem}.pvt__track{gap:1.4rem;padding-right:14%}.pvt__slide{flex-basis:76%}.pvt__arrow{width:4rem;height:5.6rem}.pvt__dialog{width:calc(90vw - 2rem);max-height:calc(100dvh - 7rem)}.pvt__popup-video{max-height:calc(100dvh - 7rem)}.pvt__popup-arrow{width:4.4rem;height:5.2rem}.pvt__popup-arrow--previous{left:.5rem}.pvt__popup-arrow--next{right:.5rem}.pvt__close{top:-5rem;right:0}}
@media(hover:none){.pvt__slide.is-previewing .pvt__poster,.pvt__slide.is-previewing .pvt__shade,.pvt__slide.is-previewing .pvt__play{opacity:1}}
@media(prefers-reduced-motion:reduce){.pvt__poster,.pvt__shade,.pvt__play{transition:none}}
