/*
 * Self-contained presentation for the Elementor widget.
 * MEC's global frontend CSS may be unloaded on speaker pages.
 */

.elementor-widget-mec-current-title-events,
.elementor-widget-mec-current-title-events * {
    box-sizing: border-box !important;
}

/* Recreate the one MEC utility behavior this output needs when MEC CSS is absent. */
.elementor-widget-mec-current-title-events .mec-util-hidden,
.elementor-widget-mec-current-title-events [class*="mec-util-hidden"] {
    display: none !important;
}

/* Remove MEC skin chrome. */
.elementor-widget-mec-current-title-events .mec-wrap,
.elementor-widget-mec-current-title-events .mec-skin-list-container,
.elementor-widget-mec-current-title-events .mec-skin-list-events-container,
.elementor-widget-mec-current-title-events .mec-wrap.colorskin-custom,
.elementor-widget-mec-current-title-events .mec-event-list-classic {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Exact MEC List markup currently emitted on the speaker pages:
 * article > image + date + time + h4 title + detail
 */
.elementor-widget-mec-current-title-events .mec-event-list-classic > article.mec-event-article,
.elementor-widget-mec-current-title-events article.mec-event-article {
    display: grid !important;
    grid-template-columns: 145px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 34px !important;
    row-gap: 7px !important;
    align-items: start !important;
    float: none !important;
    clear: both !important;
    position: relative !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 25px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(24, 35, 56, 0.14) !important;
    background: transparent !important;
    box-shadow: none !important;
}

.elementor-widget-mec-current-title-events article.mec-event-article:first-child {
    padding-top: 8px !important;
}

.elementor-widget-mec-current-title-events article.mec-event-article:last-child {
    border-bottom: 0 !important;
    padding-bottom: 8px !important;
}

/* Date */
.elementor-widget-mec-current-title-events article.mec-event-article > .mec-event-date {
    display: block !important;
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    align-self: start !important;
    float: none !important;
    width: auto !important;
    min-height: 0 !important;
    margin: 1px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #182338 !important;
    font-family: Matter, Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    letter-spacing: 0.035em !important;
    text-transform: uppercase !important;
}

.elementor-widget-mec-current-title-events .mec-event-date i {
    display: none !important;
}

.elementor-widget-mec-current-title-events .mec-start-date-label {
    color: inherit !important;
    font: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
}

/* Title */
.elementor-widget-mec-current-title-events article.mec-event-article > h4.mec-event-title {
    display: block !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #182338 !important;
    font-family: Matter, Arial, sans-serif !important;
    font-size: clamp(19px, 1.7vw, 23px) !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
    letter-spacing: -0.015em !important;
    text-transform: none !important;
}

.elementor-widget-mec-current-title-events h4.mec-event-title > a {
    color: #182338 !important;
    font: inherit !important;
    letter-spacing: inherit !important;
    text-decoration: none !important;
    text-transform: none !important;
}

.elementor-widget-mec-current-title-events h4.mec-event-title > a:hover,
.elementor-widget-mec-current-title-events h4.mec-event-title > a:focus-visible {
    color: #182338 !important;
    opacity: 0.68 !important;
    text-decoration: none !important;
}

/* Venue/detail */
.elementor-widget-mec-current-title-events article.mec-event-article > .mec-event-detail {
    display: block !important;
    grid-column: 2 !important;
    grid-row: 2 !important;
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #687080 !important;
    font-family: Matter, Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

.elementor-widget-mec-current-title-events .mec-event-loc-place {
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font: inherit !important;
}

.elementor-widget-mec-current-title-events .mec-event-loc-place i {
    display: none !important;
}

/* Furniture not used in this compact speaker-page presentation. */
.elementor-widget-mec-current-title-events article.mec-event-article > .mec-event-image,
.elementor-widget-mec-current-title-events article.mec-event-article > .mec-event-time,
.elementor-widget-mec-current-title-events .mec-event-sharing-wrap,
.elementor-widget-mec-current-title-events .mec-event-sharing,
.elementor-widget-mec-current-title-events .mec-event-footer,
.elementor-widget-mec-current-title-events .mec-event-more-info,
.elementor-widget-mec-current-title-events .mec-event-cost,
.elementor-widget-mec-current-title-events .mec-event-organizer,
.elementor-widget-mec-current-title-events .mec-event-data-fields,
.elementor-widget-mec-current-title-events .mec-load-more-wrap,
.elementor-widget-mec-current-title-events .mec-load-more-button,
.elementor-widget-mec-current-title-events .mec-month-divider,
.elementor-widget-mec-current-title-events .mec-search-form,
.elementor-widget-mec-current-title-events .mec-totalcal-box {
    display: none !important;
}

/* Clear old MEC float/grid helpers if any remain in the markup. */
.elementor-widget-mec-current-title-events article.mec-event-article > [class*="col-md-"],
.elementor-widget-mec-current-title-events article.mec-event-article > [class*="col-sm-"],
.elementor-widget-mec-current-title-events article.mec-event-article > [class*="col-xs-"] {
    float: none !important;
    width: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.elementor-widget-mec-current-title-events .mec-current-title-empty-message {
    margin: 8px 0 0 !important;
    padding: 16px 18px !important;
    border: 1px solid rgba(24, 35, 56, 0.12) !important;
    border-radius: 10px !important;
    background: #f7f8fa !important;
    color: #687080 !important;
    font-family: Matter, Arial, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
}

@media (max-width: 767px) {
    .elementor-widget-mec-current-title-events article.mec-event-article {
        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto auto !important;
        row-gap: 8px !important;
        padding: 21px 0 !important;
    }

    .elementor-widget-mec-current-title-events article.mec-event-article > .mec-event-date {
        grid-column: 1 !important;
        grid-row: 1 !important;
        margin-top: 0 !important;
    }

    .elementor-widget-mec-current-title-events article.mec-event-article > h4.mec-event-title {
        grid-column: 1 !important;
        grid-row: 2 !important;
    }

    .elementor-widget-mec-current-title-events article.mec-event-article > .mec-event-detail {
        grid-column: 1 !important;
        grid-row: 3 !important;
    }
}
