.event-image img{
    width: 100%;
}

.event-content{
    color: var(--black);
}

.event-title{
    font-size: 28px;
    line-height: 36px;
    font-weight: 700;
    margin-bottom: 10px;
}

.event-date{
    font-size: 18px;
    line-height: 22px;
    margin-bottom: 20px;
}

.event-date i{
    font-size: 18px;
}

.event-text{
    font-size: 20px;
    line-height: 26px;
    margin-bottom: 20px;
}

/* Item */
.event-item{
    background: var(--white);
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    border-radius: 10px 10px 0px 0px;
    color: var(--black);
    overflow: hidden;
    height: 100%;
}

.event-item-info{
    background: #d9d9d9;
    padding: 10px;
    position: relative;
}

.event-item-date{
    font-size: 16px;
    line-height: 20px;
    margin-bottom: 10px;
    font-weight: 700;
}

.event-item-hours{
    font-size: 16px;
    line-height: 20px;
    margin-bottom: 10;
}

.event-item-hours i{
    font-size: 16px;
    line-height: 20px;
    color: var(--primary);
}

.event-item-attendance{
    position: absolute;
    bottom: 8px;
    right: 10px;
    text-align: right;
}

.event-item-attendance-image{
    margin-bottom: 2px;
}

.event-item-attendance img{
    max-width: 42px;
    max-height: 32px;
    display: inline;
}

.event-item-attendance-text{
    font-size: 16px;
    line-height: 20px;
}


.event-item-image{
    display: block;
    position: relative;
    border-radius: 0px;
    aspect-ratio: 2/1;
    background-color: #ccc;
    background-position: center center;
    background-size: cover;
    margin-bottom: 10px;
}

.event-item-image:hover{
    opacity: 0.8;
}

.event-item-content{
    background: var(--white);
    padding: 10px;
}

.event-item-title{
    font-weight: 700;
    font-size: 20px;
    line-height: 26px;
    margin-bottom: 10px;
    min-height: 52px;
}

.event-item-title a{
    color: var(--black);
}

.event-item-title a:hover{
    color: var(--primary);
    text-decoration: none;
}

.event-item-type{
    color: var(--primary);
    font-size: 18px;
    line-height: 20px;
    font-weight: 400;
}

.event-item-link{
    text-align: right;
    margin-top: 20px;
}


/* Featured event */
.featured-event-title{
    font-size: 30px;
    line-height: 38px;
    font-weight: 600;
    margin-bottom: 20px;
}

.featured-event-title a{
    color: #000;
}

.featured-event-title a:hover{
    color: var(--primary);
}

.featured-event-row{
    display: flex;
    align-items: stretch;
    gap: 20px;
}

.featured-event-image{
    position: relative;
    width: 45%;
}

.featured-event-image:not(.auto-scale){
    background-color: #ccc;
    background-position: center center;
    background-size: cover;
    aspect-ratio: 2/1;
}

.featured-event-image .line-title{
    position: absolute;
    top: 0px;
    left: 0px;
    width: 200px;
}

.featured-event-content{
    width: 55%;
}

.featured-event-line{
    position: relative;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    display: flex;
    align-items: center;
    height: 100px;
    padding-left: 80px;
    margin-bottom: 40px;
    margin-left: 50px;
    background: linear-gradient(90deg, #D9D9D9 43.74%, rgba(217, 217, 217, 0.00) 98.86%);
}

.featured-event-day{
    position: absolute;
    left: -50px;
    top: 0px;
    width: 100px;
    height: 100px;
    font-size: 24px;
    line-height: 28px;
    background: var(--primary);
    color: #fff;
    font-weight: 500;
    border-radius: 50%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.featured-event-day.past-event-day{
    background: gray;
}

.featured-event-details{
    display: flex;
    align-items: center;
    gap: 30px;
    font-size: 18px;
}

.featured-event-details i{
    color: var(--primary);
}

.featured-event-details img{
    max-height: 28px;
    position: relative;
    top: -2px;
}

.featured-event-location{
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
    font-size: 16px;
    line-height: 18px;
}

.featured-event-location i {
    color: var(--primary);
}

.featured-event-location img{
    height: 20px;
}

.featured-event-location a{
    color: #000;
}

.featured-event-location a:hover{
    text-decoration: underline;
}

.featured-event-description{
    font-size: 22px;
    line-height: 30px;
}

.featured-event-buttons{
    margin-top: 40px;
    display: flex;
    align-items: center;
    justify-content: right;
    gap: 20px;
}

.featured-event-line .featured-event-buttons{
    margin-top: 0px;
    padding-left: 20px;
}

.event-button{
    display: inline-block;
    background: var(--primary);
    border: 1px solid #8B3043;
    font-weight: 700;
    color: #fff;
    border-radius: 10px;
    padding: 12px;
    padding-bottom: 8px;
    font-size: 16px;
    line-height: 16px;
    align-items: center;
}

.event-button:hover{
    color: #fff;
    text-decoration: none;
    opacity: 0.8;
}

.event-button span{
    position: relative;
    top: -2px;
}

.event-calendar{
    margin-bottom: 16px;
    display: flex;
    gap: 10px;
    align-items: center;
}

.event-calendar-image{
    width: 30px;
    text-align: center;
}

.event-calendar-image img{
    max-width: 30px;
    max-height: 30px;
}

.event-calendar span{
    color: #333;
    font-weight: 300;
    font-size: 14px;
    line-height: 18px;
}

#event-registration-form{
    margin: auto;
    max-width: 400px;
}

#event-registration-form #id_email{
    background-color: #e6b1c1;
}

.event-participants span:not(:first-child)::before{
    content: '/';
    margin-left: 5px;
    margin-right: 5px;
}

@media screen and (max-width: 991px){
    .event-image img{
        margin-bottom: 20px;
    }

    .event-title{
        font-size: 22px;
        line-height: 28px;
    }

    .event-text{
        font-size: 16px;
        line-height: 22px;
        margin-bottom: 20px;
    }

    .featured-event-title{
        font-size: 22px;
        line-height: 28px;
    }

    .featured-event-row{
        flex-direction: column;
    }

    .featured-event-image{
        width: 100%;
    }

    .featured-event-content{
        width: 100%;
    }

    .event-calendar-icons{
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 20px;
    }

    .featured-event-line{
        border-radius: 20px;
        margin-left: 0px;
        height: auto;
        background: #d9d9d9;
        flex-direction: column;
        padding: 20px;
    }

    .featured-event-day{
        left: -10px;
        top: -20px;
    }

    .featured-event-details{
        display: flex;
        align-items: center;
        gap: 30px;
        font-size: 18px;
        flex-direction: column;
    }

    .featured-event-location{
        display: flex;
        align-items: center;
        gap: 10px;
        margin-top: 30px;
        flex-direction: column;
    }


    .featured-event-description{
        font-size: 18px;
        line-height: 26px;
    }

    .featured-event-buttons{
        flex-direction: column;
    }

    .featured-event-line .featured-event-buttons{
        margin-top: 20px;
        padding-left: 0px;
    }

}
