/*
	README

	Modify this file as much or as little as needed.
*/

/*==============================*/
/*=====----- TEMPLATE -----=====*/
/*==============================*/

.core-featured-events {
    --slide-title-size: var(--text-lg);
    --promoted-slide-title-size: var(--text-lg);
    --slide-desc-size: var(--text-sm);
    --date-picker-button-background-color: var(--sw-button-primary-bg);
	--date-picker-button-color: var(--sw-button-primary-color);

    background-color: var(--sw-key-color);
    /* background-image: url(/includes/public/assets/shared/texture-blue.jpg); */
    
}

.core-featured-events::after {
    content: '';
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    width: 123px;
    height: 252px;
    background-image: url(/includes/public/assets/shared/Leaf-Events.svg);
    background-repeat: no-repeat;
    background-position: top right;
    background-size: contain;
}

.core-featured-events .bg-cont {
    background-repeat: repeat;
    background-position: 50% 50%;
    background-size: contain;
    padding-block: 36px 58px;
}

.core-featured-events .widget-header {
    margin-block-end: 29px;
}

.core-featured-events .widget-title {
    font-size: 2.25rem;
    letter-spacing: -0.0225rem;
    color: var(--gray-100);
    line-height: calc(40/36);
    text-align: center;
}

.core-featured-events .view-all-row {
    display: flex;
    justify-content: center;
    align-items: center;
}

.core-featured-events .widget-view-all {
    font-family: var(--font-body);
    font-weight: bold;
    background-color: var(--sw-button-primary-bg);
    display: inline-flex;
    color: var(--secondary-color-800);
    border-block-color: var(--secondary-color-800);
}

.core-featured-events .widget-title-mobile {
    display: none;
}

/*----- date picker -----*/

.core-featured-events .input-label {
	font-weight: bold;
}

.core-featured-events .input {
	border: 2px solid var(--black);
    border-radius: var(--rounded-md);
}

.core-featured-events .form-button {
	background-color: var(--date-picker-button-background-color);
	border-radius: var(--rounded-full);
	text-align: center;
    font-weight: bold;
    color: var(--date-picker-button-color);
}

/*============================*/
/*=====----- SLIDES -----=====*/
/*============================*/

.core-featured-events .slides {
    row-gap: 45px;
}

.core-featured-events .slide .category {
    display: none;
}

.core-featured-events .slide .slide-title {
    font-family: var(--font-body);
    font-size: var(--slide-title-size);
    text-transform: uppercase;
    line-height: calc(22/18);
    position: relative;
    color: var(--gray-100);
}

.core-featured-events .slide .slide-title a:hover {
    color: var(--gray-100);
}

.core-featured-events .slide .content-section::before {
    content: '';
    pointer-events: none;
    position: absolute;
    top: 50%;
    translate: 0 -50%;
    display: block;
    width: 1px;
    height: calc(100% - 10px);
    background-color: var(--gray-100);
}

.core-featured-events .slide:not(.has-date) .content-section::before {
    display: none;
}

.core-featured-events .slide .details li i,
.core-featured-events .slide .details li {
    color: var(--gray-100);
}

.core-featured-events .slide .details li a {
    font-size: var(--text-base);
    color: var(--gray-100);
}

.core-featured-events .slide .details li a:hover {
    text-decoration: none;
}

.core-featured-events .slide .slide-desc {
    font-size: var(--slide-desc-size);
}

.core-featured-events .slide .mini-date-section {
    background-color: transparent;
    color: var(--secondary-color-800);
}

.core-featured-events .slide .mini-date-section .date-month {
    font-family: var(--font-body);
    font-size: var(--text-xl);
}

.core-featured-events .slide .mini-date-section .date-day {
    font-size: 2.5rem;
}

/*----- minor slide -----*/

.core-featured-events .slide.minor .category,
.core-featured-events .slide.minor .details {
    font-size: var(--text-xs);
}

.core-featured-events .slide.minor .category {
    line-height: 1.2;
}

.core-featured-events .slide.minor .mini-date-section {
    --month-size: var(--text-xs);
    --day-size: var(--text-2xl);
    padding: 13px 0;
    justify-self: start;
}

.core-featured-events .slide.minor .content-section {
    padding-inline-start: 8px;
    align-self: center;
}

.core-featured-events .slide.minor .content-section::before {
    height: 100%;
    left: 64px;
}

/*----- promoted slide -----*/

.core-featured-events .slide.promoted {
    margin-block-end: -5px;
}

.core-featured-events .slide.promoted .img-cont::before {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: block;
    background: linear-gradient(to top, rgba(0,0,0,.5), rgba(0,0,0,0));
    content: '';
    pointer-events: none;
}

.core-featured-events .slide.promoted .mini-date-section {
    bottom: 10px;
    top: auto;
}

.core-featured-events .slide.promoted .content-section {
    color: var(--white);
    text-shadow: 0 0 16px rgba(0,0,0,.5);
    padding-inline-start: 97px;
}

.core-featured-events .slide.promoted .content-section::before {
    left: 80px;
}

.core-featured-events .slide.promoted .slide-title,
.core-featured-events .slide.promoted .details,
.core-featured-events .slide.promoted .details li a,
.core-featured-events .slide.promoted .slide-desc {
    color: inherit;
}

.core-featured-events .slide.promoted .slide-title {
    font-size: var(--promoted-slide-title-size);
    margin: 0;
}

.core-featured-events .slide.promoted .slide-title a:hover {
    text-decoration: none;
}

.core-featured-events .slide.promoted .details {
    --icon-color: var(--white);
}

.core-featured-events .slide.promoted .details li .icon,
.core-featured-events .slide.promoted .details li .icon::before {
    display: inline-block;
    text-decoration: none;
}

/*===================================*/
/*=====----- MEDIA QUERIES -----=====*/
/*===================================*/

@media (hover: hover) {
    /*----- promoted slide -----*/

    .core-featured-events .slide.promoted .slide-title a:hover {
        color: inherit;
        text-decoration: underline 2px;
        text-underline-offset: 1px;
    }
}

@media (min-width: 40em) {
	/*----- minor slide -----*/

	.core-featured-events .slide.minor .mini-date-section {
        --month-size: 0.65rem;
        --day-size: var(--text-xl);
    }

    .core-featured-events .slide.minor .content-section::before {
        left: 55px;
    }
}

@media (min-width: 64em) {
	.core-featured-events {
        --slide-title-size: var(--text-xl);
        --promoted-slide-title-size: var(--text-3xl);
        --slide-desc-size: var(--text-base);
    }

    .core-featured-events .slide.promoted .mini-date-section {
        bottom: 34px;
    }

	/*----- minor slide -----*/

    .core-featured-events .slide.minor .mini-date-section {
        --month-size: var(--text-base);
        --day-size: var(--text-3xl);

        padding: var(--space-4) 0;
    }

    .core-featured-events .slide.minor .category,
    .core-featured-events .slide.minor .details {
        font-size: var(--text-sm);
    }

	/*----- promoted slide -----*/

	.core-featured-events .slide.promoted .mini-date-section {
        --month-size: var(--text-xl);
        --day-size: var(--text-5xl);
    }

    /*----- marquee bottom -----*/

    .core-featured-events.marquee-bottom {
        --slide-title-size: var(--text-lg);
    }

    .core-featured-events.marquee-bottom .slide.minor .category,
    .core-featured-events.marquee-bottom .slide.minor .details {
        font-size: var(--text-xs);
    }
}

@media screen and (min-width: 1250px) {
    .core-featured-events .slide.promoted .mini-date-section {
        bottom: 42px;
    }
}

@media (min-width: 80em) {
	.core-featured-events {
        --promoted-slide-title-size: var(--text-4xl);
    }
}

@media screen and (min-width: 90em) {
    .core-featured-events .bg-cont {
        padding-block-end: 58px;
    }

    .core-featured-events::after {
        width: 212px;
        height: 343px;
    }

    .core-featured-events .widget-header {
        display: none;
    }

    .core-featured-events .slides {
        position: relative;
        padding-block: 63px 42px;
        row-gap: 40px;
    }

    .core-featured-events .slides .widget-title-mobile {
        display: block;
        grid-row: 1 / 2;
        grid-column: 2 / 3;
        font-family: var(--font-display);
        font-size: 3.5rem;
        letter-spacing: -0.035rem;
        line-height: calc(58/56);
        color: var(--gray-100);
    }

    /*********/
    /*---- SLIDES ----*/
    /*********/
    .core-featured-events .slide .mini-date-section .date-month {
        font-size: 1.375rem;
        letter-spacing: 0.0413rem;
        line-height: calc(30/22);
    }

    .core-featured-events .slide .mini-date-section .date-day {
        font-size: 2.625rem;
        line-height: calc(40/42);
    }

    /*********/
    /*---- MINOR SLIDE ----*/
    /*********/

    .core-featured-events .slide.minor.has-date {
        gap: 56px;
    }

    .core-featured-events .slide.minor .content-section::before {
        left: 78px;
    }

    .core-featured-events .slide.minor .slide-title {
        font-size: 1.375rem;
        letter-spacing: 0.0413rem;
        line-height: calc(30/22);
    }

    .core-featured-events .slide.minor .details {
        font-size: var(--text-lg);
    }

    /*********/
    /*---- PROMOTED SLIDE ----*/
    /*********/

    .core-featured-events .slide.promoted .mini-date-section {
        bottom: 50px;
    }

    .core-featured-events .slide.promoted .content-section {
        padding-block: 20px;
        padding-inline-end: 140px;
        margin-block-end: 34px;
        min-height: 90px;
    }

    .core-featured-events .slide.promoted .slide-title {
        font-size: 1.5rem;
        letter-spacing: 0.045rem;
        line-height: calc(30/24);
    }

    .core-featured-events .slides .slide:nth-of-type(1) {
        grid-row: 1 / 5;
        grid-column: 1 / 2;
    }

    .core-featured-events .slides .slide:nth-of-type(2) {
        grid-row: 2 / 3;
        grid-column: 2 / 3;
    }
    
    .core-featured-events .slides .slide:nth-of-type(3) {
        grid-row: 3 / 4;
        grid-column: 2 / 3;
    }
    
    .core-featured-events .slides .slide:nth-of-type(4) {
        grid-row: 4 / 5;
        grid-column: 2 / 3;
        margin-block-end: 40px;
    }

    .core-featured-events .view-all-row {
        position: absolute;
        bottom: 0;
        right: 0;
    }

    .core-featured-events .widget-view-all {
        padding-block: 9.5px;
    }
}