/* =========================================================
   HARPS Global – Events List UI Override
   Module: we-custom-events-list
   Loaded only on tribe_events pages via bootstrap.php
   ========================================================= */

/* ----- Month separator: hidden at PHP level, belt-and-suspenders CSS ----- */
.tribe-events-calendar-list__month-separator {
    display: none !important;
}

/* ----- Card row reset: neutralize TEC grid negative margins ----- */
.tribe-events-calendar-list__event-row {
    padding: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.tribe-events-calendar-list__event-row .tribe-events-calendar-list__event,
.we-hg-event-article {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
    min-width: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* ----- Card wrapper: 3-col flex ----- */
.we-hg-event-card {
    display: flex !important;
    align-items: flex-start !important;
    gap: 24px !important;
    padding: 32px 0 !important;
    border-bottom: 1px solid #e0e0e0 !important;
    box-sizing: border-box !important;
    max-width: 100% !important;
    overflow: hidden !important;
}

/* ----- Date box ----- */
.we-hg-event-date-tag {
    background: #1a6b5a !important;
    padding: 14px 16px !important;
    text-align: center !important;
    min-width: 80px !important;
    max-width: 80px !important;
    flex-shrink: 0 !important;
}

.we-hg-event-date-tag__month {
    display: block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: rgba(255, 255, 255, 0.8) !important;
}

.we-hg-event-date-tag__day {
    display: block !important;
    font-size: 36px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    color: #fff !important;
}

.we-hg-event-date-tag__year {
    display: block !important;
    font-size: 13px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    margin-top: 4px !important;
}

/* ----- Content area: takes remaining space ----- */
.we-hg-event-content {
    flex: 1 1 0% !important;
    min-width: 0 !important;
}

/* ----- Title ----- */
.tribe-events-calendar-list__event-title {
    margin: 0 0 10px !important;
}

.tribe-events-calendar-list__event-title-link.tribe-common-anchor-thin {
    color: #111 !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

.tribe-events-calendar-list__event-title-link.tribe-common-anchor-thin:hover,
.tribe-events-calendar-list__event-title-link.tribe-common-anchor-thin:focus,
.tribe-events-calendar-list__event-title-link.tribe-common-anchor-thin:active {
    color: #1a6b5a !important;
    text-decoration: none !important;
}

.tribe-common-anchor-thin:hover,
.tribe-common-anchor-thin:focus {
    text-decoration: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

.tribe-events-calendar-list__event-title a,
.tribe-events-calendar-list__event-title a:hover,
.tribe-events-calendar-list__event-title a:focus {
    text-decoration: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* ----- Description ----- */
.tribe-events-calendar-list__event-description {
    color: #444 !important;
    line-height: 1.6 !important;
    margin: 0 0 20px !important;
}

/* ----- Venue ----- */
.tribe-events-calendar-list__event-venue {
    font-style: normal !important;
    margin: 0 0 20px !important;
}

.tribe-events-calendar-list__event-venue-title {
    display: block !important;
    font-weight: 600 !important;
    color: #222 !important;
}

.tribe-events-calendar-list__event-venue-address {
    display: block !important;
    color: #555 !important;
}

/* ----- Date range ----- */
.tribe-events-calendar-list__event-datetime-wrapper {
    color: #666 !important;
    margin-top: 0 !important;
}

/* Hide the featured icon inside date/time wrapper */
.tribe-events-calendar-list__event-datetime-wrapper .tribe-event-featured-event-label {
    display: none !important;
}

/* ----- Featured image: right column, fixed small width ----- */
.tribe-events-calendar-list__event-featured-image-wrapper {
    width: 240px !important;
    max-width: 240px !important;
    flex: 0 0 240px !important;
    align-self: flex-start !important;
}

.tribe-events-calendar-list__event-featured-image-wrapper img,
.tribe-events-calendar-list__event-featured-image {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: cover !important;
    max-width: 100% !important;
}

/* ----- Search bar ----- */
.tribe-events-c-search__input-control {
    border: 1px solid #ccc;
    background: #fff;
}

.tribe-common-form-control-text__input.tribe-events-c-search__input {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

.tribe-common-c-btn.tribe-events-c-search__button {
    background-color: #1a6b5a !important;
    border-color: #1a6b5a !important;
    color: #fff !important;
    border-radius: 0 !important;
    font-weight: 600 !important;
}

.tribe-common-c-btn.tribe-events-c-search__button:hover,
.tribe-common-c-btn.tribe-events-c-search__button:focus {
    background-color: #0d4a3d !important;
    border-color: #0d4a3d !important;
}

/* ----- Responsive: stack on mobile ----- */
@media (max-width: 767px) {
    .we-hg-event-card {
        flex-wrap: wrap !important;
        gap: 16px !important;
    }

    .tribe-events-calendar-list__event-featured-image-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        order: -1 !important;
    }
}
