/* videos-slider.css */
.vs-wrap, .vs-wrap *{ box-sizing:border-box; }
.vs-wrap{
    width:100%;
    max-width:100%;
    overflow:hidden;
    font-family:inherit;
}
.vs-viewport{
    position:relative;
    overflow:hidden;
    width:100%;
    min-width:0;
}
.vs-track{
    display:flex;
    flex-wrap:nowrap;
    width: calc(var(--vs-count) / var(--vs-visible) * 100%);
}
.vs-item{
    flex: 0 0 calc(100% / var(--vs-count));
    max-width: calc(100% / var(--vs-count));
    padding:0 15px;
    min-width:0;
}
/* NOTE: these media queries are now backup only.
   The JS sets --vs-visible directly on .vs-track at runtime,
   which is what actually drives responsiveness (see videos-slider.js).
   Kept here so layout is still correct even if JS hasn't run yet. */
@media (max-width:1000px){
    .vs-track{ --vs-visible:2; }
}
@media (max-width:620px){
    .vs-track{ --vs-visible:1; }
	.vs-item{
    padding:unset;
}
}
.vs-card{
    display:flex;
    flex-direction:column;
    cursor:pointer;
    border:1px solid #1D4D5E;
    border-radius:20px;
    overflow:hidden;
    background:#fff;
    height:100%;
    padding:16px;
}

/* --- THUMB / VIDEO AREA --- */
.vs-thumb{
    position:relative;
    width:100%;
    aspect-ratio:16/9;
    border-radius:14px;
    background:#000;
    overflow:hidden;
    margin-bottom:16px;
}
.vs-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    border:0;
}
.vs-thumb iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    display:block;
    border:0;
}
.vs-thumb-placeholder{
    width:100%;
    height:100%;
    background:#e0e0e0;
}

/* --- PLAY BUTTON --- */
.vs-play-btn{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:clamp(52px, 18%, 58px);
    height:auto;
    line-height:0;
    filter:drop-shadow(0 2px 6px rgba(0,0,0,.35));
    transition: transform .2s ease, filter .2s ease;
    pointer-events:none;
	opacity: 0.2;
}
.vs-play-btn svg{
    display:block;
    width:100%;
    height:auto;
}
.vs-card:hover .vs-play-btn{
    transform:translate(-50%,-50%) scale(1.06);
}
.vs-card.is-playing .vs-play-btn{
    display:none;
}

.vs-content{
    padding:0;
}
.vs-name{
    margin: 0px;
    font-family:"Gill Sans","Gill Sans MT",sans-serif !important;
    font-size:22px;
    font-weight:700;
    line-height:1.2;
    color:#101010;
    text-transform:uppercase;
    word-break:break-word;
}
.vs-sport{
    margin:0;
    font-family:"Roboto", sans-serif;
    font-size:15px;
    line-height:1.4;
    color:#444444;
}
.vs-nav{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:16px;
    margin-top:clamp(24px,3vw,40px);
}
.vs-arrow{
    width:44px;
    height:44px;
    border-radius:50%;
    border:1px solid #F58232;
    background:transparent;
    color:#F58232;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition: background .2s ease, color .2s ease, opacity .2s ease;
    flex:0 0 auto;
}
.vs-next{
    background:#F58232;
    color:#fff;
}
.vs-arrow:hover{
    background:#F58232;
    color:#fff;
}
@media (max-width:980px){
    .vs-name{ font-size:19px; }
    .vs-sport{ font-size:14px; }
}
@media (max-width:600px){
    .vs-card{ padding:12px; }
    .vs-thumb{ margin-bottom:12px; }
    .vs-name{ font-size:17px; }
    .vs-sport{ font-size:13px; }
    /* .vs-play-btn sizing now handled responsively via clamp() above — no override needed */
    .vs-arrow{ width:38px; height:38px; }
}