

.te-1 {
    margin-top: 20px;
}


.te-2 {
    display: flex!important; flex-direction: column; gap: 12px; margin-top: 12px; margin-bottom: 12px;
}

.te-3 {
    display: flex; align-items: center; gap: 12px;
}

.te-4 {
    color: var(--color-plum, #781d42); width: 18px; height: 18px; flex-shrink: 0; transform: translateY(-1px);
}

.te-5 {
    font-weight: 600; color: var(--color-text, #1e293b); line-height: 1.4; margin: 0; padding: 0;
}

.te-6 {
    color: var(--color-text-light, #64748b); width: 18px; height: 18px; flex-shrink: 0; transform: translateY(-1px);
}

.te-7 {
    color: var(--color-text-light, #64748b); font-size: 0.95rem; line-height: 1.4; margin: 0; padding: 0;
}


.te-8 {
    display: flex; align-items: center; gap: 12px; margin-bottom: 12px;
}

.te-9 {
    color: var(--color-text-light, #64748b); width: 18px; height: 18px; flex-shrink: 0; transform: translateY(-1px);
}

.te-10 {
    color: var(--color-text-light, #64748b); font-size: 0.95rem; font-weight: 500; line-height: 1.4; margin: 0; padding: 0;
}


.te-11 {
    display: flex; flex-direction: column; gap: 8px; margin-bottom: 12px;
}

.te-12 {
    display: flex; align-items: center; gap: 12px;
}

.te-13 {
    color: var(--color-plum, #781d42); width: 18px; height: 18px; flex-shrink: 0; transform: translateY(-1px);
}

.te-14 {
    font-weight: 600; color: var(--color-plum, #781d42); line-height: 1.4; margin: 0; padding: 0;
}

.te-15 {
    display: inline-block; padding: 2px 10px; background: #fff3cd; color: #856404; font-size: 0.70rem; text-transform: uppercase; border-radius: 4px; font-weight: 800; letter-spacing: 0.5px; border: none !important; margin: 0; line-height: 1.4; transform: translateY(-1px);
}

.te-16 {
    color: var(--color-text-light, #475569); width: 18px; height: 18px; flex-shrink: 0; transform: translateY(-1px);
}

.te-17 {
    color: var(--color-text-light, #475569); font-size: 0.95rem; line-height: 1.4; margin: 0; padding: 0;
}


.te-18 {
    display: grid; grid-template-columns: 3fr 1fr 1fr 1.5fr; gap: 20px; font-size: 0.8rem; font-weight: 700; color: #777; text-transform: uppercase; letter-spacing: 1px; padding: 15px 0; border-top: 1px solid var(--color-border); border-bottom: 1px solid var(--color-border); margin-bottom: 15px;
}

.te-19 {
    text-align: right;
}


.te-20 {
    grid-area: gate; justify-self: end;
}

.gsod-qty-disabled-style {
    opacity: 0.5;
    pointer-events: none;
    grid-area: qty;
    justify-self: end;
}

/* ==========================================================================
   GSOD Combined Upcoming & Previous Events Styles
   ========================================================================== */
.tribe-events .gsod-past-events-section-header {
    margin-top: 60px !important;
    margin-bottom: 25px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
}

.tribe-events .gsod-past-events-section-header h2.tribe-events-c-top-bar__datepicker-button {
    margin: 0 !important;
}

/* Hide the pagination link that redirects away to past events since they are already displayed below */
.tribe-events .tribe-events-c-nav__prev,
.tribe-events .tribe-events-c-top-bar__nav-link--prev {
    display: none !important;
}

/* Events Hero Banner compact padding & centered styles */
.tribe-events-before-html {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
}

.tribe-events .gsod-events-hero,
.gsod-events-hero {
    background: linear-gradient(135deg, var(--color-plum) 0%, var(--color-plum-hover) 100%) !important;
    color: #ffffff !important;
    border-radius: var(--radius-md) !important;
    padding: 42px 24px !important;
    margin: 0px auto 35px !important;
    width: 100% !important;
    max-width: 1152px !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

.tribe-events .gsod-events-hero .container,
.gsod-events-hero .container,
.gsod-events-hero-container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

.gsod-events-hero-title,
.tribe-events .gsod-events-hero-title {
    font-size: 2.25rem !important;
    margin: 0 auto 8px auto !important;
    color: var(--color-gold) !important;
    text-align: center !important;
    width: 100% !important;
    line-height: 1.25 !important;
    display: block !important;
}

.gsod-events-hero-desc,
.tribe-events .gsod-events-hero-desc,
.tribe-events .gsod-events-hero p,
.gsod-events-hero p {
    color: rgba(255, 255, 255, 0.8) !important;
    font-size: 0.95rem !important;
    line-height: 1.5 !important;
    max-width: 600px !important;
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
    display: block !important;
}

@media (max-width: 768px) {
    .tribe-events .gsod-events-hero,
    .gsod-events-hero {
        padding: 30px 16px !important;
        margin: 10px auto 25px !important;
        width: 100% !important;
    }
    .gsod-events-hero-title,
    .tribe-events .gsod-events-hero-title {
        font-size: 1.75rem !important;
    }
}

/* Event List Card Image Rounded Corners */
.tribe-events .tribe-events-calendar-list__event-row {
    border-radius: var(--radius-lg, 32px) !important;
    overflow: hidden !important;
}

.tribe-events .tribe-events-calendar-list__event-featured-image-wrapper {
    border-top-left-radius: var(--radius-lg, 32px) !important;
    border-bottom-left-radius: var(--radius-lg, 32px) !important;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    overflow: hidden !important;
}

.tribe-events .tribe-events-calendar-list__event-featured-image {
    border-top-left-radius: var(--radius-lg, 32px) !important;
    border-bottom-left-radius: var(--radius-lg, 32px) !important;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

@media (max-width: 820px) {
    .tribe-events .tribe-events-calendar-list__event-featured-image-wrapper {
        border-radius: var(--radius-lg, 32px) var(--radius-lg, 32px) 0 0 !important;
    }
    .tribe-events .tribe-events-calendar-list__event-featured-image {
        border-radius: var(--radius-lg, 32px) var(--radius-lg, 32px) 0 0 !important;
    }
}

/* Footer elements on Events page */
.social-icon,
footer .social-icon {
    border-radius: 50% !important;
    flex-shrink: 0 !important;
}

.newsletter-btn,
footer .newsletter-btn {
    border-radius: 50% !important;
    width: 46px !important;
    height: 46px !important;
    flex-shrink: 0 !important;
    padding: 0 !important;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
    padding-top: 34px !important;
}

