/* =========================================================
UPCOMING
========================================================= */

.pm-upcoming-wrapper{

    background:
    linear-gradient(
        180deg,
        rgba(5,10,25,.92),
        rgba(2,6,23,.96)
    );

    border-radius:28px;

    padding:28px;

    border:
    1px solid rgba(255,255,255,.06);

}

/* =========================================================
HEADER
========================================================= */

.pm-upcoming-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:24px;

    gap:20px;

}

.pm-upcoming-header h2{

    color:#fff;

    margin:0;

    font-size:28px;

    font-weight:800;

}

.pm-upcoming-header a{

    color:#ff3355;

    text-decoration:none;

    font-weight:700;

}

/* =========================================================
GRID
========================================================= */

/* =========================================================
HORIZONTAL SCROLL
========================================================= */

.pm-upcoming-grid{

    display:flex;

    gap:22px;

    overflow-x:auto;

    overflow-y:hidden;

    scroll-snap-type:x mandatory;

    padding-bottom:6px;

    -webkit-overflow-scrolling:touch;

}

/* Hide scrollbar */

.pm-upcoming-grid::-webkit-scrollbar{

    height:6px;

}

.pm-upcoming-grid::-webkit-scrollbar-thumb{

    background:
    rgba(255,255,255,.12);

    border-radius:999px;

}

/* =========================================================
CARD
========================================================= */

.pm-upcoming-card{

    background:
    linear-gradient(
        180deg,
        rgba(255,255,255,.03),
        rgba(255,255,255,.01)
    );

    border:
    1px solid rgba(255,255,255,.06);

    border-radius:24px;

    padding:22px;

    transition:.25s ease;
    
     min-width:260px;

    max-width:260px;

    flex-shrink:0;

    scroll-snap-align:start;

}

.pm-upcoming-card:hover{

    transform:
    translateY(-4px);

    border-color:
    rgba(255,0,70,.28);

    box-shadow:
    0 0 30px rgba(255,0,70,.12);

}

/* =========================================================
META
========================================================= */

.pm-upcoming-meta{

    display:flex;

    justify-content:space-between;

    color:#94a3b8;

    font-size:13px;

    margin-bottom:24px;

    gap:10px;

}

/* =========================================================
TEAMS
========================================================= */

.pm-upcoming-teams{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:14px;

}

.pm-upcoming-team{

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:12px;

    flex:1;

}

.pm-upcoming-team img{

    width:74px;
    height:74px;

    object-fit:cover;

    border-radius:50%;

    border:
    3px solid rgba(255,255,255,.85);

}

.pm-upcoming-team strong{

    color:#fff;

    font-size:16px;

    text-align:center;

    line-height:1.2;

}

.pm-upcoming-vs{

    color:#fff;

    font-size:26px;

    font-weight:900;

}

/* =========================================================
BUTTON
========================================================= */

.pm-upcoming-button{

    display:flex;

    justify-content:center;

    align-items:center;

    margin-top:24px;

    padding:14px;

    border-radius:14px;

    text-decoration:none;

    color:#ff3355 !important;

    border:
    1px solid rgba(255,0,70,.24);

    font-weight:800;

    transition:.25s ease;

}

.pm-upcoming-button:hover{

    background:
    linear-gradient(
        135deg,
        #ff004c,
        #ff5a00
    );

    color:#fff !important;

}

/* =========================================================
RESPONSIVE
========================================================= */

@media(max-width:1024px){

    .pm-upcoming-grid{

        grid-template-columns:
        repeat(2,1fr);

    }

}

@media(max-width:640px){

    .pm-upcoming-grid{

        display:flex;

        overflow-x:auto;

        scroll-snap-type:x mandatory;

    }

    .pm-upcoming-card{

        min-width:280px;

        scroll-snap-align:start;

    }

}

.pm-upcoming-wrapper{

    overflow:hidden;

}