.event-archive
{
    background-color: #F9F9F9;
    padding-bottom: 40px;
}

.event-archive .search-places__item
{
    opacity: 1;
    pointer-events: all;
}

.events-grid
{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-top: 40px;
}

.events-grid .search-places__item:hover
{
    transform: translate(0);
}

.events-grid .search-places__item:hover .search-places__img
{
    transform: scale(1.04);
}

.events-grid .search-places__item-wrapper
{
    height: 100%;
}

.events-grid .catalog-banner
{
    min-height: 300px;
}


/* WIDE CARD */

.events-grid>*:first-child
{
    grid-column: span 2;
    position: relative;
    border-radius: 15px;
    overflow: hidden;
    z-index: 1;
}

.events-grid>*:first-child .search-places__image
{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    min-height: auto;
}

.events-grid>*:first-child .search-places__item-top
{
    position: static;
}

.events-grid>*:first-child .search-places__item-top-items
{
    position: static;
}

.events-grid>*:first-child .search-places__item-wrapper
{
    background-color: transparent;
    padding: 15px 30px 15px 15px;
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px;
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgb(0 0 0 / 65%) 100%);
}

.events-grid>*:first-child .search-places__item-top
{
    flex-shrink: 0;
    margin-bottom: 15px;
}

.events-grid>*:first-child .search-places__content
{
    padding: 0;
    max-width: 296px;
}

.events-grid>*:first-child .search-places__title
{
    color: #fff;
}

.events-grid>*:first-child .search-places__description
{
    color: #fff;
}

.events-grid>*:first-child .search-places__location
{
    opacity: 0.7;
}

.events-grid>*:first-child .search-places__location svg path
{
    stroke: #fff;
}

.events-grid>*:first-child .search-places__address
{
    color: #fff;
}

@media screen and (max-width: 1200px)
{
    .events-grid
    {
        grid-template-columns: repeat(3, 1fr);
        gap: 14px;
    }

    .events-grid .catalog-banner
    {
        grid-column: span 1;
        background-position: 50px bottom;
        padding: 20px;
    }
}

@media screen and (max-width: 992px)
{
    .events-grid
    {
        grid-template-columns: repeat(2, 1fr);
    }

    .events-grid>*:first-child
    {
        min-height: 380px;
    }
}

@media screen and (max-width: 768px)
{
    .events-grid
    {
        margin-top: 25px;
    }
}


@media screen and (min-width: 576px) and (max-width: 768px)
{
    .events-grid .catalog-banner {
        grid-column: span 2;
    }
}

@media screen and (max-width: 576px)
{
    .events-grid
    {
        grid-template-columns: repeat(1, 1fr);
    }

    .events-grid>*:first-child
    {
        grid-column: span 1;
    }

    .events-grid>*:first-child .search-places__item-wrapper
    {
        flex-direction: column;
        justify-content: flex-end;
        align-items: flex-start;
        padding: 15px;
        gap: 10px;
    }

    .events-grid>*:first-child .search-places__item-top
    {
        margin: 0;
    }

    .events-grid>*:first-child .search-places__content
    {
        max-width: none;
    }
}

/* PAGINATION */

.events-pagination-wrapper
{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    margin-top: 40px;
}

.events-pagination ul.page-numbers
{
    margin-top: 0;
}

.events-pagination
{
    width: 100%;
}

.event-archive.loading
{
    pointer-events: none;
}

.event-archive.loading .events-grid
{
    opacity: 0.5;
    transition: opacity 0.3s ease;
}

@media screen and (max-width: 768px)
{
    .events-pagination-wrapper
    {
        margin-top: 30px;
    }
}

.viewed-slider
{
    background-color: #fff !important;
}