@import url(https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Outfit:wght@300;400;500;600;700;800&display=swap);

:root {
    --font-display: 'Outfit', sans-serif;
    --font-body: 'Outfit', sans-serif;
    --font-heading: 'Plus Jakarta Sans', sans-serif;
    --obsidian-black: #050507;
    --obsidian-void: #0A0A0D;
    --obsidian-deep: #0F0F12;
    --obsidian-surface: #141418;
    --obsidian-elevated: #1A1A1F;
    --obsidian-border: rgba(255, 255, 255, 0.06);
    --obsidian-border-hover: rgba(255, 255, 255, 0.12);
    --hot-pink: #FF2D92;
    --electric-blue: #00D4FF;
    --vivid-purple: #8B5CF6;
    --sunset-orange: #FF6B35;
    --neon-green: #00FF88;
    --gradient-fire: linear-gradient(135deg, #FF2D92 0%, #FF6B35 100%);
    --gradient-pop: linear-gradient(135deg, #FF2D92 0%, #8B5CF6 50%, #00D4FF 100%);
    --gradient-cool: linear-gradient(135deg, #8B5CF6 0%, #00D4FF 100%);
    --gradient-sunset: linear-gradient(135deg, #FF6B35 0%, #FF2D92 100%);
    --glow-pink: 0 0 30px rgba(255, 45, 146, 0.4);
    --glow-blue: 0 0 30px rgba(0, 212, 255, 0.4);
    --glow-purple: 0 0 30px rgba(139, 92, 246, 0.4);
    --text-primary: #FFFFFF;
    --text-secondary: rgba(255, 255, 255, 0.72);
    --text-tertiary: rgba(255, 255, 255, 0.48);
    --text-quaternary: rgba(255, 255, 255, 0.32);
    --space-1: 4px;
    --space-2: 8px;
    --space-3: 12px;
    --space-4: 16px;
    --space-5: 20px;
    --space-6: 24px;
    --space-8: 32px;
    --space-10: 40px;
    --space-12: 48px;
    --space-16: 64px;
    --space-20: 80px;
    --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
    --ease-out-quint: cubic-bezier(0.22, 1, 0.36, 1);
    --ease-in-out-circ: cubic-bezier(0.85, 0, 0.15, 1);
    --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.5);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.5);
    --shadow-xl: 0 16px 64px rgba(0, 0, 0, 0.6);
    --shadow-glow: 0 0 60px var(--accent-glow);
    --radius-sm: 6px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-xl: 24px
}

.tribe-common-b1,
.tribe-common-b2,
.tribe-common-b3 {
    font-family: Outfit, var(--font-body), sans-serif !important
}

.tribe-common-h4,
.tribe-common-h4 .tribe-common-anchor-thin,
.tribe-common-h4--min-medium,
.tribe-common-h4--min-medium .tribe-common-anchor-thin,
.tribe-common-h5,
.tribe-common-h5 .tribe-common-anchor-thin,
.tribe-common-h5--min-medium,
.tribe-common-h5--min-medium .tribe-common-anchor-thin,
.tribe-common-h6,
.tribe-common-h6 .tribe-common-anchor-thin,
.tribe-common-h6--min-medium,
.tribe-common-h6--min-medium .tribe-common-anchor-thin,
h3.tribe-common-h6 a,
h4.tribe-common-h6 a {
    font-family: Outfit, var(--font-display), sans-serif !important;
    letter-spacing: -.02em !important
}

.tribe-common::before,
.tribe-events::before {
    content: '' !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E") !important;
    opacity: .015 !important;
    pointer-events: none !important;
    z-index: 1000 !important;
    mix-blend-mode: overlay !important
}

#tribe-events,
#tribe-events-content,
.tribe-common,
.tribe-common--breakpoint-medium.tribe-events,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container,
.tribe-events,
.tribe-events-ajax-loading,
.tribe-events-calendar-list,
.tribe-events-content,
.tribe-events-header,
.tribe-events-l-container,
.tribe-events-view,
.type-tribe_events {
    background: var(--obsidian-black) !important
}

.tribe-common .tribe-common-l-container,
.tribe-common--breakpoint-medium .tribe-common-l-container,
.tribe-common--breakpoint-medium .tribe-events-l-container,
.tribe-common-l-container,
.tribe-events .tribe-events-l-container,
.tribe-events-l-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 40px 40px 40px !important
}

.post-type-archive-tribe_events .site-main,
.single-tribe_events .site-main {
    padding: 0 !important;
    margin: 0 !important
}

.post-type-archive-tribe_events .site-main,
.post-type-archive-tribe_events main,
.single-tribe_events .site-main,
.single-tribe_events main,
body.post-type-archive-tribe_events,
body.single-tribe_events,
html body.post-type-archive-tribe_events,
html body.single-tribe_events {
    background: var(--obsidian-black) !important;
    background-color: var(--obsidian-black) !important
}

.tribe-common,
.tribe-common *,
.tribe-events,
.tribe-events * {
    color: var(--text-primary) !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important
}

.tribe-common,
.tribe-events {
    font-family: var(--font-body) !important
}

.tribe-events-calendar-list__month-separator {
    margin: var(--space-20) 0 var(--space-12) 0 !important;
    padding: 0 !important;
    border: none !important;
    background: 0 0 !important;
    overflow: visible !important;
    animation: fadeSlideIn .6s var(--ease-out-expo) backwards !important
}

/* the first month heading doesn't need to clear anything above it */
.tribe-events-calendar-list > :first-child .tribe-events-calendar-list__month-separator,
.tribe-events-calendar-list .tribe-events-calendar-list__month-separator:first-child {
    margin-top: 0 !important
}

.tribe-events-calendar-list__event {
    position: relative !important;
    background: var(--obsidian-surface) !important;
    border: 1px solid var(--obsidian-border) !important;
    border-radius: var(--radius-lg) !important;
    padding: var(--space-8) !important;
    margin-bottom: var(--space-6) !important;
    overflow: hidden !important;
    transition: transform .5s var(--ease-out-expo), box-shadow .5s var(--ease-out-expo), border-color .5s var(--ease-out-expo), background .5s var(--ease-out-expo) !important;
    will-change: transform !important;
    animation: fadeSlideUp .7s var(--ease-out-expo) backwards !important
}

.tribe-events-calendar-list__event::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    padding: 1px !important;
    border-radius: var(--radius-lg) !important;
    background: linear-gradient(135deg, rgba(255, 51, 102, 0) 0, rgba(255, 51, 102, .3) 50%, rgba(0, 240, 255, .2) 100%) !important;
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0) !important;
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0) !important;
    -webkit-mask-composite: xor !important;
    mask-composite: exclude !important;
    opacity: 0 !important;
    transition: opacity .5s var(--ease-out-expo) !important;
    pointer-events: none !important
}

.tribe-events-calendar-list__event::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 120% !important;
    height: 120% !important;
    background: radial-gradient(ellipse at center, var(--accent-subtle) 0, transparent 70%) !important;
    transform: translate(-50%, -50%) scale(.8) !important;
    opacity: 0 !important;
    transition: all .6s var(--ease-out-expo) !important;
    pointer-events: none !important;
    z-index: -1 !important
}

.tribe-events-calendar-list__event-date-tag {
    position: relative !important;
    background: var(--obsidian-deep) !important;
    border: 1px solid var(--obsidian-border) !important;
    border-radius: var(--radius-md) !important;
    padding: var(--space-5) var(--space-4) !important;
    min-width: 72px !important;
    text-align: center !important;
    overflow: hidden !important;
    transition: all .5s var(--ease-out-expo) !important
}

.tribe-events-calendar-list__event-date-tag::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 3px !important;
    background: var(--accent-gradient) !important;
    transition: all .4s var(--ease-out-expo) !important
}

.tribe-events-calendar-list__event-date-tag-daynum {
    font-family: var(--font-display) !important;
    font-weight: 700 !important;
    font-size: 2rem !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    line-height: 1 !important;
    letter-spacing: -.02em !important;
    display: block !important
}

.tribe-events-calendar-list__event-date-tag-weekday {
    font-family: var(--font-mono) !important;
    font-size: .625rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .2em !important;
    margin-bottom: var(--space-1) !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important
}

.tribe-common--breakpoint-medium .tribe-events-c-events-bar__views,
.tribe-common--breakpoint-medium .tribe-events-c-view-selector,
.tribe-common--breakpoint-medium .tribe-events-c-view-selector__content,
.tribe-events-c-events-bar,
.tribe-events-c-events-bar__search,
.tribe-events-c-events-bar__search-container,
.tribe-events-c-events-bar__search-input,
.tribe-events-c-events-bar__views,
.tribe-events-c-events-bar__views-list,
.tribe-events-c-view-selector,
.tribe-events-c-view-selector__content,
.tribe-events-c-view-selector__list,
.tribe-events-c-view-selector__list-item,
.tribe-events-header__events-bar,
[class*=tribe-events-c-events-bar__views],
[class*=tribe-events-c-view-selector] {
    background: var(--obsidian-black) !important;
    background-color: var(--obsidian-black) !important;
    border: none !important
}

.tribe-events-header__title,
.tribe-events-c-top-bar__datepicker-button,
.tribe-events .tribe-events-header__title,
.tribe-events .tribe-events-c-top-bar__datepicker-button,
html body .tribe-events-header__title,
html body .tribe-events-c-top-bar__datepicker-button {
    font-family: 'Outfit', sans-serif !important;
    font-weight: 700 !important;
    font-size: 2rem !important;
    line-height: 1.2 !important;
    letter-spacing: -.02em !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    text-transform: none !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 0 var(--space-6) 0 !important
}

.tribe-events-c-top-bar__datepicker-button:hover {
    color: var(--hot-pink) !important;
    -webkit-text-fill-color: var(--hot-pink) !important
}

.tribe-events-c-top-bar__datepicker-button svg {
    fill: var(--hot-pink) !important;
    width: 20px !important;
    height: 20px !important;
    margin-left: 8px !important
}

.tribe-events-c-view-selector__button,
.tribe-events-c-view-selector__list-item-link {
    font-family: var(--font-mono) !important;
    font-weight: 500 !important;
    font-size: .6875rem !important;
    color: var(--text-quaternary) !important;
    padding: var(--space-3) var(--space-4) !important;
    border-radius: var(--radius-sm) !important;
    text-transform: uppercase !important;
    letter-spacing: .15em !important;
    transition: all .3s var(--ease-out-expo) !important;
    position: relative !important;
    background: 0 0 !important
}

.tribe-events-c-view-selector__list-item-link:hover {
    color: var(--text-secondary) !important;
    background: var(--obsidian-surface) !important
}

.tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link {
    color: var(--text-primary) !important;
    background: 0 0 !important
}

.tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link::after {
    content: '' !important;
    position: absolute !important;
    bottom: 2px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 16px !important;
    height: 2px !important;
    background: var(--accent) !important;
    border-radius: 1px !important
}

.tribe-events-c-nav__next,
.tribe-events-c-nav__prev,
html body .tribe-events-c-nav__next,
html body .tribe-events-c-nav__prev,
.tribe-events .tribe-events-c-nav__next,
.tribe-events .tribe-events-c-nav__prev,
.tribe-events-calendar-month .tribe-events-c-nav__next,
.tribe-events-calendar-month .tribe-events-c-nav__prev {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    width: auto !important;
    height: auto !important;
    padding: 12px 20px !important;
    border: 1px solid rgba(0, 212, 255, .2) !important;
    border-radius: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    transition: .3s cubic-bezier(.34, 1.56, .64, 1) !important;
    background: linear-gradient(135deg, #1a1a22 0, #0f0f14 100%) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: .85rem !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    box-shadow: 4px 4px 0 rgba(0, 212, 255, .35), 0 4px 12px rgba(0, 0, 0, .4) !important
}

.tribe-events-c-nav__next,
html body .tribe-events-c-nav__next,
.tribe-events .tribe-events-c-nav__next,
.tribe-events-calendar-month .tribe-events-c-nav__next {
    border-color: rgba(255, 45, 146, .2) !important;
    box-shadow: 4px 4px 0 rgba(255, 45, 146, .35), 0 4px 12px rgba(0, 0, 0, .4) !important
}

.tribe-events-c-nav__prev:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(0, 212, 255, .4) !important;
    box-shadow: 6px 6px 0 rgba(0, 212, 255, .5), 0 8px 24px rgba(0, 212, 255, .2) !important
}

.tribe-events-c-nav__next:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(255, 45, 146, .4) !important;
    box-shadow: 6px 6px 0 rgba(255, 45, 146, .5), 0 8px 24px rgba(255, 45, 146, .2) !important
}

.tribe-events-c-nav__next svg,
.tribe-events-c-nav__prev svg,
html body .tribe-events-c-nav__next svg,
html body .tribe-events-c-nav__prev svg,
.tribe-events-calendar-month .tribe-events-c-nav__next svg,
.tribe-events-calendar-month .tribe-events-c-nav__prev svg {
    width: 18px !important;
    height: 18px !important;
    fill: #FFFFFF !important;
    transition: fill .3s !important
}

.tribe-events-c-nav__next svg path,
.tribe-events-c-nav__prev svg path,
html body .tribe-events-c-nav__next svg path,
html body .tribe-events-c-nav__prev svg path,
.tribe-events-calendar-month .tribe-events-c-nav__next svg path,
.tribe-events-calendar-month .tribe-events-c-nav__prev svg path {
    fill: #FFFFFF !important
}

.tribe-events-c-nav__prev:hover svg,
.tribe-events-c-nav__prev:hover svg path {
    fill: #00D4FF !important
}

.tribe-events-c-nav__next:hover svg,
.tribe-events-c-nav__next:hover svg path {
    fill: #FF2D92 !important
}

.tribe-events-c-top-bar__today-button,
html body .tribe-events-c-top-bar__today-button,
.tribe-events .tribe-events-c-top-bar__today-button,
.tribe-events-calendar-month .tribe-events-c-top-bar__today-button {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: .85rem !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: linear-gradient(135deg, #1a1a22 0, #0f0f14 100%) !important;
    border: 1px solid rgba(139, 92, 246, .2) !important;
    border-radius: 12px !important;
    padding: 12px 24px !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    transition: .3s cubic-bezier(.34, 1.56, .64, 1) !important;
    box-shadow: 4px 4px 0 rgba(139, 92, 246, .35), 0 4px 12px rgba(0, 0, 0, .4) !important
}

.tribe-events-c-top-bar__today-button:hover,
html body .tribe-events-c-top-bar__today-button:hover,
.tribe-events .tribe-events-c-top-bar__today-button:hover,
.tribe-events-calendar-month .tribe-events-c-top-bar__today-button:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(139, 92, 246, .4) !important;
    box-shadow: 6px 6px 0 rgba(139, 92, 246, .5), 0 8px 24px rgba(139, 92, 246, .2) !important;
    color: #8b5cf6 !important;
    -webkit-text-fill-color: #8b5cf6 !important
}

.tribe-events-c-search,
.tribe-events-c-search__input-control {
    background: var(--obsidian-surface) !important;
    border: 1px solid var(--obsidian-border) !important;
    border-radius: var(--radius-md) !important;
    transition: all .3s var(--ease-out-expo) !important
}

.tribe-events-c-search:focus-within {
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 3px var(--accent-subtle) !important
}

.tribe-events-c-search__input {
    color: var(--text-primary) !important;
    background: 0 0 !important;
    font-family: var(--font-body) !important;
    font-size: .875rem !important
}

.tribe-events-c-search__input::placeholder {
    color: var(--text-quaternary) !important
}

.tribe-events-c-search__button {
    background: var(--accent-gradient) !important;
    border: none !important;
    border-radius: var(--radius-sm) !important;
    font-family: var(--font-mono) !important;
    font-weight: 600 !important;
    font-size: .6875rem !important;
    text-transform: uppercase !important;
    letter-spacing: .1em !important;
    transition: all .3s var(--ease-out-expo) !important
}

.tribe-events-c-search__button:hover {
    transform: scale(1.03) !important;
    box-shadow: var(--shadow-glow) !important
}

.tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button,
.tribe-events-c-subscribe-dropdown__button {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: .85rem !important;
    color: #fff !important;
    background: linear-gradient(135deg, #1a1a22 0, #0f0f14 100%) !important;
    border: 1px solid rgba(0, 255, 136, .2) !important;
    border-radius: 12px !important;
    padding: 12px 20px !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    transition: .3s cubic-bezier(.34, 1.56, .64, 1) !important;
    box-shadow: 4px 4px 0 rgba(0, 255, 136, .35), 0 4px 12px rgba(0, 0, 0, .4) !important
}

@keyframes fadeSlideUp {
    from {
        opacity: 0;
        transform: translateY(24px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes fadeSlideIn {
    from {
        opacity: 0;
        transform: translateX(-16px)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes scaleIn {
    from {
        opacity: 0;
        transform: scale(.96)
    }

    to {
        opacity: 1;
        transform: scale(1)
    }
}

@keyframes glowPulse {

    0%,
    100% {
        box-shadow: 0 0 20px var(--accent-glow)
    }

    50% {
        box-shadow: 0 0 40px var(--accent-glow)
    }
}

.tribe-events-calendar-list__event:first-child {
    animation-delay: 50ms !important
}

.tribe-events-calendar-list__event:nth-child(2) {
    animation-delay: .1s !important
}

.tribe-events-calendar-list__event:nth-child(3) {
    animation-delay: .15s !important
}

.tribe-events-calendar-list__event:nth-child(4) {
    animation-delay: .2s !important
}

.tribe-events-calendar-list__event:nth-child(5) {
    animation-delay: .25s !important
}

.tribe-events-calendar-list__event:nth-child(6) {
    animation-delay: .3s !important
}

.tribe-events-calendar-list__event:nth-child(7) {
    animation-delay: .35s !important
}

.tribe-events-calendar-list__event:nth-child(8) {
    animation-delay: .4s !important
}

@media (max-width:768px) {

    .tribe-common .tribe-common-l-container,
    .tribe-common--breakpoint-medium .tribe-common-l-container,
    .tribe-common--breakpoint-medium .tribe-events-l-container,
    .tribe-common-l-container,
    .tribe-events .tribe-events-l-container,
    .tribe-events-l-container,
    html body .tribe-common-l-container,
    html body .tribe-events-l-container {
        padding: 100px 16px 24px !important
    }

    .tribe-events-header__title,
    .tribe-events-c-top-bar__datepicker-button,
    html body .tribe-events-header__title,
    html body .tribe-events-c-top-bar__datepicker-button {
        font-size: 1.5rem !important;
        margin: 0 0 var(--space-4) 0 !important
    }

    .tribe-common .tribe-common-g-row--gutters {
        margin-left: 0 !important;
        margin-right: 0 !important
    }

    .tribe-common .tribe-common-g-row--gutters>.tribe-common-g-col {
        padding-right: 0 !important
    }

    .tribe-events .tribe-events-calendar-latest-past__event-featured-image-wrapper {
        margin-bottom: 0 !important
    }

    .tribe-events-calendar-list__month-separator-text {
        font-size: clamp(2rem, 10vw, 3rem) !important
    }

    html body .tribe-events-calendar-list__event-row {
        border-radius: 16px !important;
        box-shadow: 6px 6px 0 rgba(255, 45, 146, .5), 0 4px 16px rgba(255, 45, 146, .2) !important
    }

    html body .tribe-events-calendar-list__event-date-tag {
        min-width: 60px !important;
        padding: 14px 10px !important;
        border-radius: 16px 0 0 16px !important
    }

    html body .tribe-events-calendar-list__event {
        padding: 0 !important;
        border-radius: 0 16px 16px 0 !important
    }

    html body .tribe-events-calendar-list__event-featured-image-wrapper {
        flex: 0 0 25% !important;
        min-width: 80px !important;
        max-width: 30% !important;
        border-radius: 0 16px 16px 0 !important
    }

    html body .tribe-events-calendar-list__event-details {
        padding: 10px 12px !important
    }

    .tribe-common-h4--min-medium.tribe-events-calendar-list__event-title,
    .tribe-common-h6.tribe-events-calendar-list__event-title,
    html body .tribe-events-calendar-list__event-title,
    html body .tribe-events-calendar-list__event-title-link,
    html body h4.tribe-events-calendar-list__event-title {
        font-size: 1.2rem !important;
        line-height: 1.25 !important;
        font-weight: 500 !important
    }

    html body .tribe-events-calendar-list__event-datetime,
    html body .tribe-events-calendar-list__event-venue,
    html body .tribe-events-calendar-list__event-venue-title {
        font-size: .65rem !important;
        line-height: 1.3 !important
    }

    html body .tribe-events-calendar-list__event-row:hover {
        transform: translateY(-6px) scale(1.01) !important;
        box-shadow: 10px 10px 0 rgba(255, 45, 146, .5), 0 8px 32px rgba(255, 45, 146, .3) !important
    }

    html body .tribe-events-calendar-list__event-row:nth-child(4n+4):hover {
        box-shadow: 10px 10px 0 rgba(0, 212, 255, .5), 0 8px 32px rgba(0, 212, 255, .3) !important
    }

    html body .tribe-events-calendar-list__event-row:nth-child(4n+6):hover {
        box-shadow: 10px 10px 0 rgba(139, 92, 246, .5), 0 8px 32px rgba(139, 92, 246, .3) !important
    }

    html body .tribe-events-calendar-list__event-row:nth-child(4n+8):hover {
        box-shadow: 10px 10px 0 rgba(255, 107, 53, .5), 0 8px 32px rgba(255, 107, 53, .3) !important
    }

    html body .tribe-events-calendar-list__event-row:nth-child(4n+10):hover {
        box-shadow: 10px 10px 0 rgba(0, 255, 136, .5), 0 8px 32px rgba(0, 255, 136, .3) !important
    }

    /* Navigation buttons - mobile alignment: PREV | TODAY | NEXT in single row */
    .tribe-events-c-nav,
    .tribe-events-header__top-bar,
    .tribe-events-c-top-bar {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 6px !important;
        width: 100% !important
    }

    .tribe-events-c-nav__list {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 6px !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important
    }

    .tribe-events-c-nav__list-item {
        flex: 0 0 auto !important;
        margin: 0 !important;
        order: 0 !important
    }

    /* Reorder: Previous (1) | Today (2) | Next (3) */
    .tribe-events-c-nav__list-item--prev {
        order: 1 !important
    }

    .tribe-events-c-nav__list-item--today {
        order: 2 !important
    }

    .tribe-events-c-nav__list-item--next {
        order: 3 !important
    }

    .tribe-events-c-nav__next,
    .tribe-events-c-nav__prev,
    .tribe-events-c-top-bar__today-button {
        padding: 8px 12px !important;
        font-size: .65rem !important;
        gap: 4px !important;
        border-radius: 8px !important;
        white-space: nowrap !important
    }

    .tribe-events-c-nav__prev {
        box-shadow: 3px 3px 0 rgba(0, 212, 255, .35), 0 3px 8px rgba(0, 0, 0, .4) !important
    }

    .tribe-events-c-nav__next {
        box-shadow: 3px 3px 0 rgba(255, 45, 146, .35), 0 3px 8px rgba(0, 0, 0, .4) !important
    }

    .tribe-events-c-top-bar__today-button {
        box-shadow: 3px 3px 0 rgba(139, 92, 246, .35), 0 3px 8px rgba(0, 0, 0, .4) !important
    }

    .tribe-events-c-nav__next svg,
    .tribe-events-c-nav__prev svg {
        width: 12px !important;
        height: 12px !important
    }
}

/* Extra narrow screens - compact row navigation */
@media (max-width:400px) {
    .tribe-events-c-nav__list {
        flex-direction: row !important;
        gap: 4px !important
    }

    .tribe-events-c-nav__next,
    .tribe-events-c-nav__prev,
    .tribe-events-c-top-bar__today-button {
        padding: 6px 8px !important;
        font-size: .6rem !important;
        gap: 2px !important;
        border-radius: 6px !important;
        box-shadow: 2px 2px 0 rgba(0, 0, 0, .3) !important
    }

    .tribe-events-c-nav__prev {
        box-shadow: 2px 2px 0 rgba(0, 212, 255, .3) !important
    }

    .tribe-events-c-nav__next {
        box-shadow: 2px 2px 0 rgba(255, 45, 146, .3) !important
    }

    .tribe-events-c-top-bar__today-button {
        box-shadow: 2px 2px 0 rgba(139, 92, 246, .3) !important
    }

    .tribe-events-c-nav__next svg,
    .tribe-events-c-nav__prev svg {
        width: 10px !important;
        height: 10px !important
    }

    .tribe-events-header__title,
    .tribe-events-c-top-bar__datepicker-button,
    html body .tribe-events-header__title,
    html body .tribe-events-c-top-bar__datepicker-button {
        font-size: 1.25rem !important;
        text-align: center !important;
        width: 100% !important
    }
}

:focus-visible {
    outline: 2px solid var(--accent) !important;
    outline-offset: 3px !important;
    border-radius: var(--radius-sm) !important
}

@media (prefers-reduced-motion:reduce) {

    *,
    ::after,
    ::before {
        animation-duration: 0s !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0s !important
    }
}

.tribe-events-c-nav__list-item a,
.tribe-events-c-nav__list-item button {
    font-family: var(--font-body) !important;
    font-weight: 500 !important;
    font-size: .875rem !important;
    color: var(--text-tertiary) !important;
    transition: all .3s var(--ease-out-expo) !important
}

.tribe-events-c-nav__list-item a:hover {
    color: var(--accent) !important
}

.tribe-events-c-nav__list-item button[disabled] {
    opacity: .25 !important;
    cursor: not-allowed !important
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-row,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-wrapper,
.tribe-events-calendar-list__event-details,
.tribe-events-calendar-list__event-row,
.tribe-events-calendar-list__event-wrapper,
li.tribe-events-calendar-list__event-row {
    background: var(--obsidian-black) !important;
    background-color: var(--obsidian-black) !important
}

.tribe-events-calendar-list article,
.tribe-events-calendar-list__event-body,
.tribe-events-calendar-list__event-content,
.tribe-events-calendar-list__event-header,
.tribe-events-calendar-list__event-meta,
.tribe-events-calendar-list__event-row>*,
.tribe-events-calendar-list__event-wrapper>*,
.tribe-events-calendar-list__event>*,
.tribe-events-single .post-4433,
.tribe-events-single [class*=post-],
html body .tribe-events-calendar-list__event article,
html body .tribe-events-calendar-list__event-body,
html body .tribe-events-calendar-list__event-content,
html body .tribe-events-calendar-list__event-description,
html body .tribe-events-calendar-list__event-header,
html body .tribe-events-calendar-list__event-meta,
html body .tribe-events-calendar-list__event-title,
html body .tribe-events-calendar-list__event-venue,
html body article.tribe-events-calendar-list__event {
    background: 0 0 !important
}

.tribe-common .tribe-events-calendar-list__event-row,
.tribe-events .tribe-events-calendar-list__event-row,
html body .tribe-events-calendar-list__event-row,
html body li.tribe-events-calendar-list__event-row {
    background: #0f0f12 !important;
    border: none !important;
    border-radius: 24px !important;
    padding: 0 !important;
    margin-bottom: var(--space-8) !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: stretch !important;
    box-shadow: 12px 12px 0 rgba(255, 45, 146, .5), 0 8px 40px rgba(255, 45, 146, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
    transition: .4s cubic-bezier(.34, 1.56, .64, 1) !important;
    position: relative !important;
    list-style: none !important
}

html body .tribe-events-calendar-latest-past__event-row::before,
html body .tribe-events-calendar-list__event-row::before,
html body li.tribe-events-calendar-list__event-row::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: linear-gradient(165deg, rgba(255, 45, 146, .08) 0, rgba(255, 45, 146, .03) 30%, rgba(139, 92, 246, .02) 70%, transparent 100%) !important;
    pointer-events: none !important;
    z-index: 0 !important;
    border-radius: 24px !important
}

#tribe-events-content.tribe-events-single>*,
.tribe-events-single>*,
html body .tribe-events-calendar-latest-past__event-row>*,
html body .tribe-events-calendar-list__event-row>*,
html body li.tribe-events-calendar-list__event-row>* {
    position: relative !important;
    z-index: 1 !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(3),
html body .tribe-events-calendar-list__event-row:nth-child(4n+4) {
    box-shadow: 12px 12px 0 rgba(0, 212, 255, .5), 0 8px 40px rgba(0, 212, 255, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(4),
html body .tribe-events-calendar-list__event-row:nth-child(4n+6) {
    box-shadow: 12px 12px 0 rgba(139, 92, 246, .5), 0 8px 40px rgba(139, 92, 246, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+8) {
    box-shadow: 12px 12px 0 rgba(255, 107, 53, .5), 0 8px 40px rgba(255, 107, 53, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+10) {
    box-shadow: 12px 12px 0 rgba(0, 255, 136, .5), 0 8px 40px rgba(0, 255, 136, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important
}

html body .tribe-events-calendar-latest-past__event-row:hover,
html body .tribe-events-calendar-list__event-row:hover {
    transform: translateY(-8px) scale(1.01) !important;
    box-shadow: 16px 16px 0 rgba(255, 45, 146, .4), 0 12px 48px rgba(255, 45, 146, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+4):hover {
    box-shadow: 16px 16px 0 rgba(0, 212, 255, .4), 0 12px 48px rgba(0, 212, 255, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+6):hover {
    box-shadow: 16px 16px 0 rgba(139, 92, 246, .4), 0 12px 48px rgba(139, 92, 246, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+8):hover {
    box-shadow: 16px 16px 0 rgba(255, 107, 53, .4), 0 12px 48px rgba(255, 107, 53, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+10):hover {
    box-shadow: 16px 16px 0 rgba(0, 255, 136, .4), 0 12px 48px rgba(0, 255, 136, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important
}

.tribe-events-calendar-latest-past {
    margin-top: var(--space-8) !important
}

.tribe-events-calendar-latest-past__heading {
    font-family: Outfit, var(--font-display), sans-serif !important;
    font-size: clamp(1.5rem, 4vw, 2rem) !important;
    font-weight: 800 !important;
    color: #fff !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    margin-bottom: var(--space-6) !important
}

.tribe-common .tribe-events-calendar-latest-past__event-row,
.tribe-events .tribe-events-calendar-latest-past__event-row,
html body .tribe-events-calendar-latest-past__event-row {
    background: #0f0f12 !important;
    border: none !important;
    border-radius: 24px !important;
    padding: 0 !important;
    margin-bottom: var(--space-6) !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: stretch !important;
    box-shadow: 12px 12px 0 rgba(255, 45, 146, .5), 0 8px 40px rgba(255, 45, 146, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
    transition: .4s cubic-bezier(.34, 1.56, .64, 1) !important;
    position: relative !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(3):hover {
    box-shadow: 16px 16px 0 rgba(0, 212, 255, .4), 0 12px 48px rgba(0, 212, 255, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(4):hover {
    box-shadow: 16px 16px 0 rgba(139, 92, 246, .4), 0 12px 48px rgba(139, 92, 246, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important
}

html body .tribe-events-calendar-latest-past__event-date-tag {
    background: linear-gradient(180deg, #ff2d92 0, #e91e7d 100%) !important;
    border: none !important;
    border-radius: 24px 0 0 24px !important;
    padding: 20px 18px !important;
    min-width: 90px !important;
    text-align: center !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(3) .tribe-events-calendar-latest-past__event-date-tag {
    background: linear-gradient(180deg, #00d4ff 0, #00b8e6 100%) !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(4) .tribe-events-calendar-latest-past__event-date-tag {
    background: linear-gradient(180deg, #8b5cf6 0, #7c3aed 100%) !important
}

html body .tribe-events-calendar-latest-past__event-date-tag-month {
    font-family: var(--font-display) !important;
    font-size: .75rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .1em !important;
    color: var(--text-primary) !important;
    margin-bottom: 2px !important
}

html body .tribe-events-calendar-latest-past__event-date-tag-daynum {
    font-family: var(--font-display) !important;
    font-size: 2rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    color: var(--text-primary) !important
}

html body .tribe-events-calendar-latest-past__event-date-tag-year {
    font-family: var(--font-display) !important;
    font-size: .7rem !important;
    font-weight: 600 !important;
    color: var(--text-secondary) !important;
    margin-top: 2px !important
}

html body .tribe-events-calendar-latest-past__event {
    flex: 1 !important;
    display: flex !important;
    background: 0 0 !important;
    padding: 0 !important
}

html body .tribe-events-calendar-latest-past__event-details {
    flex: 1 !important;
    padding: 20px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    background: 0 0 !important
}

html body .tribe-events-calendar-latest-past__event-title {
    font-family: Outfit, sans-serif !important;
    font-size: 1.75rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -.02em !important;
    margin-bottom: 8px !important
}

html body .tribe-events-calendar-latest-past__event-title-link {
    transition: color .3s !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(3):hover .tribe-events-calendar-latest-past__event-title-link {
    color: #00d4ff !important;
    -webkit-text-fill-color: #00D4FF !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(4):hover .tribe-events-calendar-latest-past__event-title-link {
    color: #8b5cf6 !important;
    -webkit-text-fill-color: #8B5CF6 !important
}

html body .tribe-events-calendar-latest-past__event-datetime {
    font-family: Outfit, var(--font-body), sans-serif !important;
    font-size: .8rem !important;
    font-weight: 600 !important;
    color: rgba(255, 255, 255, .6) !important;
    margin-bottom: 6px !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important
}

html body .tribe-events-calendar-latest-past__event-venue {
    font-family: Outfit, sans-serif !important;
    font-size: .85rem !important;
    color: rgba(255, 255, 255, .5) !important
}

html body .tribe-events-calendar-latest-past__event-venue-title {
    color: #ff2d92 !important;
    -webkit-text-fill-color: #FF2D92 !important;
    font-weight: 600 !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(3) .tribe-events-calendar-latest-past__event-venue-title {
    color: #00d4ff !important;
    -webkit-text-fill-color: #00D4FF !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(4) .tribe-events-calendar-latest-past__event-venue-title {
    color: #8b5cf6 !important;
    -webkit-text-fill-color: #8B5CF6 !important
}

html body .tribe-events-calendar-latest-past__event-description {
    font-family: Outfit, sans-serif !important;
    font-size: .9375rem !important;
    line-height: 1.5 !important;
    color: rgba(255, 255, 255, .65) !important;
    margin-top: 12px !important
}

html body .tribe-events-calendar-latest-past__event-featured-image-wrapper {
    flex: 0 0 30% !important;
    max-width: 280px !important;
    overflow: hidden !important;
    border-radius: 0 24px 24px 0 !important;
    margin-right: 0 !important;
    padding-right: 0 !important
}

html body .tribe-events-calendar-latest-past__event-featured-image-wrapper.tribe-common-g-col {
    margin-right: 0 !important;
    padding-right: 0 !important
}

html body .tribe-events-calendar-latest-past__event-featured-image-wrapper img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important
}

.tribe-common .tribe-events-calendar-list__event-date-tag,
.tribe-events .tribe-events-calendar-list__event-date-tag,
html body .tribe-events-calendar-list__event-date-tag {
    background: linear-gradient(180deg, #ff2d92 0, #e91e7d 100%) !important;
    border: none !important;
    border-radius: 20px 0 0 20px !important;
    padding: 20px 18px !important;
    text-align: center !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    flex-shrink: 0 !important;
    position: relative !important;
    overflow: hidden !important;
    align-self: stretch !important
}

.tribe-common ol,
.tribe-common ul {
    padding: 0 !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+4) .tribe-events-calendar-list__event-date-tag {
    background: linear-gradient(180deg, #00d4ff 0, #09c 100%) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+6) .tribe-events-calendar-list__event-date-tag {
    background: linear-gradient(180deg, #8b5cf6 0, #6d3fc0 100%) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+8) .tribe-events-calendar-list__event-date-tag {
    background: linear-gradient(180deg, #ff6b35 0, #e64a19 100%) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+10) .tribe-events-calendar-list__event-date-tag {
    background: linear-gradient(180deg, #0f8 0, #00cc6a 100%) !important
}

html body .tribe-events-calendar-list__event-date-tag::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .3), transparent) !important;
    transition: left .5s !important
}

html body .tribe-events-calendar-list__event-row:hover .tribe-events-calendar-list__event-date-tag::before {
    left: 100% !important
}

.tribe-common .tribe-events-calendar-list__event,
html body .tribe-events-calendar-list__event {
    background: linear-gradient(145deg, rgba(255, 45, 146, .18) 0, rgba(255, 45, 146, .1) 50%, rgba(255, 107, 53, .06) 100%) !important;
    flex: 1 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 20px 20px 0 !important;
    box-shadow: none !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    align-self: stretch !important;
    margin: 0 !important;
    overflow: hidden !important
}

.tribe-common .tribe-events-calendar-list__event-details,
html body .tribe-events-calendar-list__event-details {
    flex: 1 !important;
    padding: 20px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    order: 1 !important
}

.tribe-common .tribe-events-calendar-list__event-featured-image-wrapper,
html body .tribe-events-calendar-list__event-featured-image-wrapper {
    flex: 0 0 25% !important;
    min-width: 25% !important;
    max-width: 35% !important;
    align-self: stretch !important;
    overflow: hidden !important;
    border-radius: 0 20px 20px 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    order: 2 !important;
    background: var(--obsidian-deep) !important
}

.tribe-common .tribe-events-calendar-list__event-featured-image,
.tribe-common .tribe-events-calendar-list__event-featured-image img,
.tribe-common .tribe-events-calendar-list__event-featured-image-wrapper img,
html body .tribe-events-calendar-list__event-featured-image,
html body .tribe-events-calendar-list__event-featured-image img,
html body .tribe-events-calendar-list__event-featured-image-wrapper img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important
}

html body .tribe-events-calendar-list__event-featured-image-link {
    display: block !important;
    width: 100% !important;
    height: 100% !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+4) .tribe-events-calendar-list__event {
    background: linear-gradient(145deg, rgba(0, 212, 255, .2) 0, rgba(0, 212, 255, .12) 50%, rgba(139, 92, 246, .06) 100%) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+6) .tribe-events-calendar-list__event {
    background: linear-gradient(145deg, rgba(139, 92, 246, .2) 0, rgba(139, 92, 246, .12) 50%, rgba(255, 45, 146, .06) 100%) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+8) .tribe-events-calendar-list__event {
    background: linear-gradient(145deg, rgba(255, 107, 53, .2) 0, rgba(255, 107, 53, .12) 50%, rgba(255, 45, 146, .06) 100%) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+10) .tribe-events-calendar-list__event {
    background: linear-gradient(145deg, rgba(0, 255, 136, .15) 0, rgba(0, 255, 136, .08) 50%, rgba(0, 212, 255, .04) 100%) !important
}

html body .tribe-events-calendar-list__event-body,
html body .tribe-events-calendar-list__event-content,
html body .tribe-events-calendar-list__event-datetime-wrapper,
html body .tribe-events-calendar-list__event-header,
html body .tribe-events-calendar-list__event-meta,
html body .tribe-events-calendar-list__event-wrapper {
    background: 0 0 !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important
}

.tribe-common li.tribe-events-calendar-list__event-row,
.tribe-events li.tribe-events-calendar-list__event-row,
html body .tribe-events-calendar-list__event-row,
html body li.tribe-events-calendar-list__event-row {
    background: #0f0f12 !important
}

.tribe-common .tribe-events-calendar-list__event-title-link,
.tribe-events .tribe-events-calendar-list__event-title-link,
html body .tribe-events-calendar-list__event-title,
html body .tribe-events-calendar-list__event-title-link {
    font-family: Outfit, sans-serif !important;
    font-weight: 700 !important;
    font-size: 1.5rem;
    letter-spacing: -.02em !important;
    color: #fff !important;
    -webkit-text-fill-color: #FFFFFF !important;
    text-decoration: none !important;
    border-bottom: none !important;
    transition: .3s cubic-bezier(.34, 1.56, .64, 1) !important
}

html body .tribe-events-calendar-list__event-row:hover .tribe-events-calendar-list__event-title-link {
    color: #ff2d92 !important;
    -webkit-text-fill-color: #FF2D92 !important;
    text-shadow: 0 0 20px rgba(255, 45, 146, .3) !important;
    text-decoration: none !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+4):hover .tribe-events-calendar-list__event-title-link {
    color: #00d4ff !important;
    -webkit-text-fill-color: #00D4FF !important;
    text-shadow: 0 0 20px rgba(0, 212, 255, .3) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+6):hover .tribe-events-calendar-list__event-title-link {
    color: #8b5cf6 !important;
    -webkit-text-fill-color: #8B5CF6 !important;
    text-shadow: 0 0 20px rgba(139, 92, 246, .3) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+8):hover .tribe-events-calendar-list__event-title-link {
    color: #ff6b35 !important;
    -webkit-text-fill-color: #FF6B35 !important;
    text-shadow: 0 0 20px rgba(255, 107, 53, .3) !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+10):hover .tribe-events-calendar-list__event-title-link {
    color: #0f8 !important;
    -webkit-text-fill-color: #00FF88 !important;
    text-shadow: 0 0 20px rgba(0, 255, 136, .3) !important
}

.tribe-common .tribe-events-calendar-list__event-venue,
html body .tribe-events-calendar-list__event-venue,
html body .tribe-events-calendar-list__event-venue-address {
    font-size: .8125rem !important;
    letter-spacing: .01em !important;
    color: rgba(255, 255, 255, .48) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.48) !important
}

html body .tribe-events-calendar-list__event-venue-title {
    font-weight: 500 !important;
    font-size: .875rem !important;
    color: #ff2d92 !important;
    -webkit-text-fill-color: #FF2D92 !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+4) .tribe-events-calendar-list__event-venue-title {
    color: #00d4ff !important;
    -webkit-text-fill-color: #00D4FF !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+6) .tribe-events-calendar-list__event-venue-title {
    color: #8b5cf6 !important;
    -webkit-text-fill-color: #8B5CF6 !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+8) .tribe-events-calendar-list__event-venue-title {
    color: #ff6b35 !important;
    -webkit-text-fill-color: #FF6B35 !important
}

html body .tribe-events-calendar-list__event-row:nth-child(4n+10) .tribe-events-calendar-list__event-venue-title {
    color: #00ff88 !important;
    -webkit-text-fill-color: #00FF88 !important
}

.tribe-common .tribe-events-calendar-list__event-description,
html body .tribe-events-calendar-list__event-description,
html body .tribe-events-calendar-list__event-description p {
    font-family: var(--font-body) !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    font-size: .9375rem !important;
    max-width: 60ch !important;
    color: rgba(255, 255, 255, .48) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.48) !important
}

/* Paragraph rhythm: tight lines above, clear breathing room between paragraphs */
html body .tribe-events-calendar-list__event-description p,
html body .tribe-events-calendar-latest-past__event-description p {
    margin: 0 0 1.1em !important
}

html body .tribe-events-calendar-list__event-description p:last-child,
html body .tribe-events-calendar-latest-past__event-description p:last-child {
    margin-bottom: 0 !important
}

html body .tribe-events-calendar-list__event-date-tag-datetime,
html body .tribe-events-calendar-list__event-datetime {
    font-size: .75rem !important;
    text-transform: uppercase !important;
    letter-spacing: .08em !important;
    color: rgba(255, 255, 255, .32) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.32) !important
}

.tribe-common .tribe-events-calendar-list__month-separator-text,
html body .tribe-events-calendar-list__month-separator-text {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 2rem !important;
    text-transform: uppercase !important;
    letter-spacing: -.02em !important;
    color: #fff !important;
    -webkit-text-fill-color: #FFFFFF !important;
    background: 0 0 !important;
    background-clip: unset !important;
    -webkit-background-clip: unset !important;
    position: relative !important;
    padding-bottom: 12px !important
}

html body .tribe-events-calendar-list__month-separator-text::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 50px !important;
    height: 3px !important;
    background: linear-gradient(90deg, #ff2d92, #ff6b35) !important;
    border-radius: 2px !important
}

body.single-tribe_events,
body.single-tribe_events #main,
body.single-tribe_events #tribe-events-pg-template,
body.single-tribe_events .site-content,
body.single-tribe_events .site-main,
body.single-tribe_events .tribe-events-pg-template,
body.single-tribe_events main,
section#tribe-events-pg-template,
section.tribe-events-pg-template {
    background: #050507 !important;
    border: none !important;
    box-shadow: none !important;
    outline: 0 !important;
    padding: 0 !important;
    margin: 0 !important
}

#tribe-events-pg-template {
    min-width: 100vw !important
}

body.single-tribe_events .tribe-events-pg-template,
section.tribe-events-pg-template {
    padding: 120px 40px 24px !important;
    display: flex !important;
    justify-content: center !important
}

.tribe-events-meta-group .tribe-events-meta-list li {
    max-width: none;
    width: auto
}

#tribe-events-content.tribe-events-single,
.tribe-events-single {
    max-width: 900px !important;
    width: 100% !important;
    margin: 80px auto 40px !important;
    padding: 48px 48px 0 !important;
    background: #0f0f12 !important;
    border-radius: 24px !important;
    border: none !important;
    box-shadow: 12px 12px 0 rgba(255, 45, 146, .5), 0 8px 40px rgba(255, 45, 146, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
    position: relative !important;
    overflow: hidden !important
}

#tribe-events-content.tribe-events-single::before,
.tribe-events-single::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: linear-gradient(165deg, rgba(255, 45, 146, .12) 0, rgba(255, 45, 146, .05) 30%, rgba(139, 92, 246, .03) 70%, transparent 100%) !important;
    pointer-events: none !important;
    z-index: 0 !important;
    border-radius: 24px !important
}

.single-tribe_events .type-tribe_events,
.tribe-events-single .type-tribe_events,
.tribe-events-single [class*=post-] {
    background: 0 0 !important;
    border: none !important;
    box-shadow: none !important;
    height: auto;
    width: 100%
}

.tribe-events-back,
.tribe-events-single .tribe-events-back {
    margin-bottom: var(--space-6) !important
}

.tribe-events-back a,
.tribe-events-single .tribe-events-back a {
    font-family: var(--font-body) !important;
    font-size: .85rem !important;
    font-weight: 600 !important;
    color: var(--hot-pink) !important;
    text-decoration: none !important;
    transition: all .3s var(--ease-out-expo) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important
}

.tribe-events-back a:hover {
    color: #fff !important;
    transform: translateX(-8px) !important;
    text-shadow: 0 0 20px rgba(255, 45, 146, .5) !important
}

.tribe-events-single-event-title,
h1.tribe-events-single-event-title {
    font-family: Outfit, var(--font-display), sans-serif !important;
    font-weight: 700 !important;
    font-size: clamp(2rem, 6vw, 3.5rem) !important;
    letter-spacing: -.03em !important;
    line-height: 1.1 !important;
    color: #fff !important;
    -webkit-text-fill-color: #FFFFFF !important;
    margin-bottom: var(--space-6) !important;
    background: 0 0 !important;
    background-clip: unset !important;
    -webkit-background-clip: unset !important
}

.tribe-events-schedule-row {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: var(--space-4) !important;
    flex-wrap: wrap !important;
    margin-bottom: var(--space-8) !important
}

.tribe-events-schedule-row .tribe-events-schedule,
.tribe-events-single-event-description p:last-child {
    margin-bottom: 0 !important
}

.djvlad-subscribe-dropdown,
.tribe-events-schedule-row .tribe-events-c-subscribe-dropdown {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    margin: 0 !important
}

#post-4436>.tribe-events.tribe-common,
.single-tribe_events .tribe-events-content+.tribe-events.tribe-common,
.tribe-block__featured-image,
.tribe-events-single-event-description+.tribe-events.tribe-common,
.tribe-events-single-event-description.tribe-events-content::before,
.tribe-events-single-event-description~.tribe-events.tribe-common,
.tribe-events-single-event-image,
.tribe-events-single>.tribe-events-event-image,
.type-tribe_events>.tribe-events.tribe-common,
[class*=post-]>.tribe-events-event-image:first-child,
div[id^=post-]>.tribe-events.tribe-common {
    display: none !important
}

.djvlad-subscribe-dropdown .tribe-events-c-subscribe-dropdown__content {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    z-index: 100 !important;
    min-width: 200px !important;
    display: none !important
}

.tribe-events-schedule,
.tribe-events-single .tribe-events-schedule {
    display: flex !important;
    align-items: stretch !important;
    justify-content: space-between !important;
    width: 100% !important;
    margin-bottom: var(--space-8) !important;
    background: 0 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important
}

.tribe-events-schedule>div:not(.djvlad-subscribe-btn) {
    font-family: 'Plus Jakarta Sans', var(--font-heading), sans-serif !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #fff !important;
    padding: var(--space-4) var(--space-6) !important;
    background: linear-gradient(180deg, #ff2d92 0, #e91e7d 100%) !important;
    border-radius: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: var(--space-2) !important;
    width: 45% !important;
    box-shadow: 6px 6px 0 rgba(255, 45, 146, .4), 0 4px 16px rgba(255, 45, 146, .3) !important;
    transition: all .3s var(--ease-spring) !important
}

.tribe-events-schedule>div:not(.djvlad-subscribe-btn):hover {
    transform: translateY(-4px) !important;
    box-shadow: 10px 10px 0 rgba(255, 45, 146, .3), 0 8px 24px rgba(255, 45, 146, .4) !important
}

.djvlad-schedule-details {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: var(--space-2) !important
}

.djvlad-event-date {
    font-weight: 700 !important
}

.djvlad-event-time {
    font-weight: 600 !important;
    opacity: .9 !important
}

.djvlad-subscribe-btn,
.tribe-events-schedule>.djvlad-subscribe-btn {
    display: block !important;
    width: 45% !important;
    background: 0 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important
}

.djvlad-calendar-link {
    font-family: 'Plus Jakarta Sans', var(--font-heading), sans-serif !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #fff !important;
    text-decoration: none !important;
    padding: var(--space-4) var(--space-6) !important;
    background: linear-gradient(180deg, #00d4ff 0, #00a3cc 100%) !important;
    border-radius: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    gap: 8px !important;
    box-shadow: 6px 6px 0 rgba(0, 212, 255, .4), 0 4px 16px rgba(0, 212, 255, .3) !important;
    transition: all .3s var(--ease-spring) !important
}

.djvlad-calendar-link:hover {
    background: linear-gradient(180deg, #33dfff 0, #00b8e6 100%) !important;
    transform: translateY(-4px) !important;
    box-shadow: 10px 10px 0 rgba(0, 212, 255, .3), 0 8px 24px rgba(0, 212, 255, .4) !important;
    color: #fff !important
}

.djvlad-calendar-link svg {
    fill: #FFFFFF !important
}

.tribe-events-schedule .tribe-event-date-start,
.tribe-events-schedule .tribe-event-time,
.tribe-events-schedule>div * {
    color: #fff !important
}

.tribe-events-nav-pagination,
nav.tribe-events-nav-pagination {
    margin: var(--space-10) 0 !important;
    padding: 0 !important;
    border: none !important
}

.tribe-events-sub-nav {
    display: flex !important;
    justify-content: space-between !important;
    align-items: stretch !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: var(--space-5) !important
}

.tribe-events-nav-next,
.tribe-events-nav-previous {
    flex: 0 1 auto !important;
    max-width: 50% !important
}

.tribe-events-nav-next {
    text-align: right !important
}

.tribe-events-nav-previous a {
    font-family: 'Plus Jakarta Sans', var(--font-heading), sans-serif !important;
    font-size: .9rem !important;
    font-weight: 600 !important;
    color: #fff !important;
    text-decoration: none !important;
    transition: .3s cubic-bezier(.34, 1.56, .64, 1) !important;
    display: flex !important;
    align-items: center !important;
    gap: var(--space-3) !important;
    padding: var(--space-5) var(--space-6) !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #2a2a38 0, #1e1e28 100%) !important;
    border: 1px solid rgba(0, 212, 255, .2) !important;
    box-shadow: 5px 5px 0 rgba(0, 212, 255, .4), 0 4px 16px rgba(0, 0, 0, .4) !important
}

.tribe-events-nav-previous a:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(0, 212, 255, .5) !important;
    box-shadow: 8px 8px 0 rgba(0, 212, 255, .5), 0 8px 28px rgba(0, 212, 255, .3) !important
}

.tribe-events-nav-next a {
    font-family: 'Plus Jakarta Sans', var(--font-heading), sans-serif !important;
    font-size: .9rem !important;
    font-weight: 600 !important;
    color: #fff !important;
    text-decoration: none !important;
    transition: .3s cubic-bezier(.34, 1.56, .64, 1) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: var(--space-3) !important;
    padding: var(--space-5) var(--space-6) !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #2a2a38 0, #1e1e28 100%) !important;
    border: 1px solid rgba(255, 45, 146, .2) !important;
    box-shadow: 5px 5px 0 rgba(255, 45, 146, .4), 0 4px 16px rgba(0, 0, 0, .4) !important
}

.tribe-events-nav-next a:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(255, 45, 146, .5) !important;
    box-shadow: 8px 8px 0 rgba(255, 45, 146, .5), 0 8px 28px rgba(255, 45, 146, .3) !important
}

.tribe-events-nav-previous a span {
    color: var(--electric-blue) !important;
    font-weight: 800 !important;
    font-size: 1.4rem !important
}

.tribe-events-nav-next a span {
    color: var(--hot-pink) !important;
    font-weight: 800 !important;
    font-size: 1.4rem !important
}

.tribe-events-sub-nav a {
    white-space: normal !important;
    word-break: break-word !important
}

/* Collapse empty nav items so the remaining button stretches full width */
.tribe-events-nav-next:empty,
.tribe-events-nav-previous:empty {
    display: none !important
}

.tribe-events-single-event-description.tribe-events-content {
    background: rgba(255, 255, 255, .03) !important;
    border-radius: 16px !important;
    /* Horizontal padding only: the image wrapper pulls itself flush left with
       a -24px margin and sits flush top/bottom, so when the photo is the tallest
       element it meets the card edge exactly (bottom mirrors the top). The text's
       own bottom cushion is applied to its last child below instead. */
    padding: 0 24px 0 24px !important;
    border: 1px solid rgba(255, 255, 255, .06) !important;
    border-left: 3px solid var(--vivid-purple) !important;
    margin-bottom: var(--space-8) !important;
    position: relative !important;
    overflow: hidden !important
}

.tribe-events-single-event-description .djvlad-event-image-wrap {
    margin-left: -24px !important;
    margin-top: 0 !important;
}

/* The text keeps its 24px bottom cushion (the container no longer pads the
   bottom, so a taller photo can reach the card edge) */
.tribe-events-single-event-description.tribe-events-content > :last-child:not(.djvlad-event-image-wrap) {
    margin-bottom: 24px !important;
}

.tribe-events-single-event-description p {
    font-family: var(--font-body) !important;
    font-size: 1.1rem !important;
    line-height: 1.8 !important;
    color: rgba(255, 255, 255, .72) !important;
    margin-bottom: var(--space-4) !important
}

#tribe-events-content .djvlad-event-image-wrap,
#tribe-events-content .djvlad-event-image-wrap .tribe-events-event-image,
#tribe-events-content .djvlad-event-image-wrap .tribe-events-event-image img,
.djvlad-event-image-wrap,
.djvlad-event-image-wrap .tribe-events-event-image,
.djvlad-event-image-wrap .tribe-events-event-image img,
.djvlad-event-image-wrap img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important
}

.djvlad-event-image-wrap {
    float: left !important;
    width: auto !important;
    max-width: 50% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    margin-right: var(--space-6) !important;
    shape-outside: margin-box !important
}

.djvlad-event-image-wrap .tribe-events-event-image {
    margin: 0 !important;
    padding: 0 !important
}

.djvlad-event-image-wrap .tribe-events-event-image img,
.djvlad-event-image-wrap img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: 4px 0 20px rgba(0, 0, 0, .3) !important;
    object-fit: contain !important
}

.tribe-events-single-event-description.tribe-events-content p:first-of-type {
    margin-top: 0 !important
}

.tribe-events-single-event-description.tribe-events-content p:first-of-type::before {
    content: 'ABOUT THIS EVENT' !important;
    display: block !important;
    font-family: 'Plus Jakarta Sans', var(--font-heading), sans-serif !important;
    font-weight: 800 !important;
    font-size: .85rem !important;
    text-transform: uppercase !important;
    letter-spacing: .15em !important;
    color: var(--vivid-purple) !important;
    padding-top: var(--space-5) !important;
    margin-bottom: var(--space-2) !important;
    padding-bottom: 0 !important
}

.tribe-events-single-event-description.tribe-events-content ol,
.tribe-events-single-event-description.tribe-events-content p,
.tribe-events-single-event-description.tribe-events-content ul {
    padding-right: var(--space-6) !important
}

.djvlad-event-image-wrap+p {
    margin-top: 0 !important
}

.tribe-events-single-event-description.tribe-events-content::after {
    content: '' !important;
    display: table !important;
    clear: both !important
}

.tribe-events-single-section.tribe-events-event-meta {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: var(--space-6) !important;
    margin: var(--space-10) 0 var(--space-8) 0 !important;
    padding-top: var(--space-8) !important;
    position: relative !important
}

#tribe-events-footer::before,
.tribe-events-single-section.tribe-events-event-meta::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 4px !important;
    background: linear-gradient(90deg, var(--hot-pink) 0, var(--vivid-purple) 35%, var(--electric-blue) 65%, var(--hot-pink) 100%) !important;
    border-radius: 2px !important;
    opacity: .85 !important
}

body.single-tribe_events .tribe-events-single-section.tribe-events-event-meta.primary,
body.single-tribe_events .tribe-events-single-section.tribe-events-event-meta.secondary {
    width: 100% !important;
    max-width: none !important;
    flex: 0 0 100% !important
}

body.single-tribe_events .tribe-events-single-section.tribe-events-event-meta .tribe-events-meta-group {
    width: auto !important;
    max-width: none !important;
    justify-self: stretch !important
}

.tribe-events-meta-group {
    background: rgba(255, 255, 255, .03) !important;
    border-radius: 16px !important;
    padding: var(--space-5) !important;
    border: 1px solid rgba(255, 255, 255, .06) !important;
    transition: all .3s var(--ease-out-expo) !important;
    margin: 0 !important
}

.tribe-events-meta-group:hover {
    background: rgba(255, 255, 255, .05) !important;
    border-color: rgba(255, 255, 255, .1) !important
}

.tribe-events-meta-group-details {
    border-left: 3px solid var(--hot-pink) !important
}

.tribe-events-meta-group-venue {
    border-left: 3px solid var(--electric-blue) !important
}

.tribe-events-meta-group-gmap {
    grid-column: 1/-1 !important;
    border-left: 3px solid var(--vivid-purple) !important
}

.tribe-events-single-section-title,
h2.tribe-events-single-section-title {
    font-family: 'Plus Jakarta Sans', var(--font-heading), sans-serif !important;
    font-weight: 800 !important;
    font-size: .85rem !important;
    text-transform: uppercase !important;
    letter-spacing: .15em !important;
    color: #fff !important;
    margin-bottom: var(--space-4) !important;
    padding-bottom: var(--space-3) !important;
    border-bottom: none !important
}

.tribe-events-address a:hover,
.tribe-events-gmap:hover,
.tribe-events-meta-group-details .tribe-events-single-section-title {
    color: var(--hot-pink) !important
}

.tribe-events-meta-group-venue .tribe-events-single-section-title {
    color: var(--electric-blue) !important
}

.tribe-events-meta-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important
}

.tribe-events-meta-item {
    padding: var(--space-3) 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, .04) !important
}

.tribe-events-meta-item:last-child {
    border-bottom: none !important
}

.tribe-events-meta-label {
    font-family: var(--font-body) !important;
    font-size: .8rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    color: var(--text-tertiary) !important;
    display: block !important;
    margin-bottom: 4px !important
}

.tribe-events-meta-value,
.tribe-events-meta-value a {
    font-family: var(--font-body) !important;
    font-size: 1rem !important;
    color: var(--text-secondary) !important
}

.tribe-events-meta-value a {
    color: var(--electric-blue) !important;
    text-decoration: none !important;
    transition: .3s !important
}

.tribe-events-meta-value a:hover {
    color: var(--hot-pink) !important;
    text-decoration: underline !important
}

.tribe-events-meta-item.tribe-venue {
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    font-size: 1.1rem !important;
    color: var(--text-primary) !important
}

.tribe-address,
.tribe-events-address {
    font-family: var(--font-body) !important;
    color: var(--text-secondary) !important;
    line-height: 1.6 !important
}

.tribe-events-address a,
.tribe-events-gmap {
    color: var(--vivid-purple) !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: .3s !important
}

.tribe-events-event-categories a {
    color: var(--hot-pink) !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    padding: 4px 12px !important;
    background: rgba(255, 45, 146, .1) !important;
    border-radius: 20px !important;
    transition: .3s !important
}

.tribe-events-event-categories a:hover {
    background: rgba(255, 45, 146, .2) !important
}

.tribe-common-c-btn-border,
.tribe-events-c-subscribe-dropdown__button {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: .85rem !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    color: #fff !important;
    background: linear-gradient(135deg, #1a1a22 0, #0f0f14 100%) !important;
    border: 1px solid rgba(0, 255, 136, .2) !important;
    border-radius: 12px !important;
    padding: 12px 20px !important;
    cursor: pointer !important;
    transition: .3s cubic-bezier(.34, 1.56, .64, 1) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    box-shadow: 4px 4px 0 rgba(0, 255, 136, .35), 0 4px 12px rgba(0, 0, 0, .4) !important
}

.tribe-common-c-btn-border:hover,
.tribe-events-c-subscribe-dropdown__button:hover {
    background: linear-gradient(135deg, #1a1a22 0, #0f0f14 100%) !important;
    border-color: rgba(0, 255, 136, .4) !important;
    color: #0f8 !important;
    transform: translateY(-4px) !important;
    box-shadow: 6px 6px 0 rgba(0, 255, 136, .5), 0 8px 24px rgba(0, 255, 136, .2) !important
}

.tribe-common-c-btn-border:active,
.tribe-events-c-subscribe-dropdown__button:active {
    transform: translateY(-2px) !important;
    box-shadow: 3px 3px 0 rgba(0, 255, 136, .4), 0 4px 12px rgba(0, 0, 0, .4) !important
}

.tribe-events-c-subscribe-dropdown__button-text {
    background: 0 0 !important;
    border: none !important;
    color: inherit !important;
    font: inherit !important;
    cursor: pointer !important;
    padding: 0 !important
}

.tribe-events-c-subscribe-dropdown svg,
.tribe-events-c-subscribe-dropdown__button-icon,
.tribe-events-c-subscribe-dropdown__export-icon {
    fill: rgba(255, 255, 255, 0.7) !important;
    stroke: rgba(255, 255, 255, 0.7) !important;
    width: 16px !important;
    height: 16px !important;
    transition: .25s !important
}

.tribe-events-c-subscribe-dropdown__button:hover .tribe-events-c-subscribe-dropdown__button-icon,
.tribe-events-c-subscribe-dropdown__button:hover .tribe-events-c-subscribe-dropdown__export-icon,
.tribe-events-c-subscribe-dropdown__button:hover svg {
    fill: #00FF88 !important;
    stroke: #00FF88 !important
}

.tribe-events-c-subscribe-dropdown__content {
    background: linear-gradient(180deg, #1a1a1f 0, #0f0f14 100%) !important;
    border: 1px solid rgba(0, 255, 136, .15) !important;
    border-radius: 12px !important;
    margin-top: 8px !important;
    box-shadow: 8px 8px 0 rgba(0, 255, 136, .2), 0 12px 32px rgba(0, 0, 0, .5) !important;
    overflow: hidden !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important
}

.tribe-events-c-subscribe-dropdown__list {
    list-style: none !important;
    padding: 8px !important;
    margin: 0 !important
}

.tribe-events-c-subscribe-dropdown__list-item {
    border-bottom: none !important;
    margin-bottom: 4px !important
}

.tribe-events-c-subscribe-dropdown__list-item:last-child {
    margin-bottom: 0 !important
}

.tribe-events-c-subscribe-dropdown__list-item-link {
    display: block !important;
    padding: 12px 16px !important;
    color: rgba(255, 255, 255, .7) !important;
    text-decoration: none !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: .85rem !important;
    font-weight: 500 !important;
    border-radius: 8px !important;
    transition: .25s cubic-bezier(.34, 1.56, .64, 1) !important
}

.tribe-events-c-subscribe-dropdown__list-item-link:hover {
    background: rgba(0, 255, 136, .1) !important;
    color: #0f8 !important;
    transform: translateX(4px) !important
}

.tribe-events-meta-group-gmap,
.tribe-events-venue-map {
    border-radius: var(--radius-lg) !important;
    overflow: hidden !important;
    min-width: 100% !important;
    width: 100% !important
}

#tribe-events-gmap-0,
.tribe-events-venue-map>div {
    border-radius: var(--radius-md) !important
}

#tribe-events-footer {
    margin-top: var(--space-10) !important;
    padding-top: var(--space-8) !important;
    position: relative !important
}

.tribe-events-event-meta {
    max-width: none !important;
    width: auto
}

.tribe-common .tribe-common-h4,
.tribe-common .tribe-common-h5,
.tribe-common .tribe-common-h6,
.tribe-events-calendar-latest-past__event-date-tag-daynum,
.tribe-events-calendar-latest-past__event-date-tag-month,
.tribe-events-calendar-latest-past__event-date-tag-year,
.tribe-events-calendar-list__event-date-tag-daynum,
html body #tribe-events .tribe-events-calendar-latest-past__event-date-tag-daynum,
html body #tribe-events .tribe-events-calendar-latest-past__event-date-tag-month,
html body #tribe-events .tribe-events-calendar-latest-past__event-date-tag-year,
html body #tribe-events .tribe-events-calendar-list__event-date-tag-daynum,
html body .tribe-common .tribe-events-calendar-latest-past__event-date-tag-daynum,
html body .tribe-common .tribe-events-calendar-latest-past__event-date-tag-month,
html body .tribe-common .tribe-events-calendar-latest-past__event-date-tag-year,
html body .tribe-common .tribe-events-calendar-list__event-date-tag-daynum,
html body .tribe-common-h4,
html body .tribe-common-h5,
html body .tribe-common-h6,
html body .tribe-events .tribe-events-calendar-list__event-date-tag-daynum {
    font-family: Outfit, var(--font-display), sans-serif !important
}

.tribe-events-calendar-list__event-date-tag-weekday,
html body #tribe-events .tribe-events-calendar-list__event-date-tag-weekday,
html body .tribe-common .tribe-events-calendar-list__event-date-tag-weekday,
html body .tribe-events .tribe-events-calendar-list__event-date-tag-weekday {
    font-family: 'JetBrains Mono', var(--font-mono), monospace !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .5) !important
}

.site-footer .footer-top {
    padding: 4rem 3rem !important;
    position: relative !important;
    z-index: 1 !important
}

.site-footer .footer-top>.container {
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 0 2rem !important
}

.site-footer .footer-grid {
    display: grid !important;
    grid-template-columns: 2fr 1fr 1fr 1.2fr !important;
    gap: 3rem !important;
    justify-content: center !important
}

.site-footer .footer-column {
    min-width: 0 !important
}

@media (max-width:1200px) {
    .site-footer .footer-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 2rem 1.5rem !important
    }
}

.tribe-common a.tribe-events-calendar-latest-past__event-title-link,
.tribe-common a.tribe-events-calendar-latest-past__event-title-link:hover,
.tribe-common a.tribe-events-calendar-list__event-title-link,
.tribe-common a.tribe-events-calendar-list__event-title-link:hover,
html body .tribe-events-calendar-latest-past__event-title-link,
html body .tribe-events-calendar-latest-past__event-title-link:active,
html body .tribe-events-calendar-latest-past__event-title-link:focus,
html body .tribe-events-calendar-latest-past__event-title-link:hover,
html body .tribe-events-calendar-latest-past__event-title-link:visited,
html body .tribe-events-calendar-list__event-title-link,
html body .tribe-events-calendar-list__event-title-link:active,
html body .tribe-events-calendar-list__event-title-link:focus,
html body .tribe-events-calendar-list__event-title-link:hover,
html body .tribe-events-calendar-list__event-title-link:visited {
    text-decoration: none !important;
    border-bottom: none !important;
    background-image: none !important;
    box-shadow: none !important
}

.tribe-common .tribe-events-calendar-latest-past__event-featured-image-wrapper img,
.tribe-common .tribe-events-calendar-list__event-featured-image-wrapper img,
html body .tribe-events-calendar-latest-past__event-featured-image img,
html body .tribe-events-calendar-latest-past__event-featured-image-wrapper img,
html body .tribe-events-calendar-list__event-featured-image img,
html body .tribe-events-calendar-list__event-featured-image-wrapper img {
    transition: none !important;
    transform: none !important
}

html body .tribe-events-calendar-latest-past__event-row:hover .tribe-events-calendar-latest-past__event-featured-image img,
html body .tribe-events-calendar-latest-past__event-row:hover .tribe-events-calendar-latest-past__event-featured-image-wrapper img,
html body .tribe-events-calendar-list__event-row:hover .tribe-events-calendar-list__event-featured-image img,
html body .tribe-events-calendar-list__event-row:hover .tribe-events-calendar-list__event-featured-image-wrapper img {
    transform: none !important
}

html body .tribe-events-calendar-latest-past__event-row,
html body .tribe-events-calendar-list__event-row {
    position: relative !important;
    cursor: pointer !important
}

html body .tribe-events-calendar-latest-past__event-title-link::after,
html body .tribe-events-calendar-list__event-title-link::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 10 !important
}

html body .tribe-events-calendar-latest-past__event-venue a,
html body .tribe-events-calendar-latest-past__event-venue-title a,
html body .tribe-events-calendar-list__event-venue a,
html body .tribe-events-calendar-list__event-venue-title a {
    position: relative !important;
    z-index: 15 !important
}

html body .tribe-events .tribe-events-calendar-latest-past__event,
html body .tribe-events-calendar-latest-past__event-row,
html body .tribe-events-calendar-list__event-row[data-tribe-event-status=past] {
    opacity: 1 !important
}

html body .tribe-events-calendar-latest-past__event-title,
html body .tribe-events-calendar-latest-past__event-title-link {
    color: #fff !important;
    -webkit-text-fill-color: #FFFFFF !important;
    opacity: 1 !important
}

html body .tribe-events-calendar-latest-past__event-row:hover .tribe-events-calendar-latest-past__event-title-link,
html body .tribe-events-calendar-latest-past__event-row:hover .tribe-events-calendar-latest-past__event-title-link.tribe-common-anchor-thin,
html body .tribe-events-calendar-latest-past__event-row:hover h3.tribe-events-calendar-latest-past__event-title a {
    color: #ff2d92 !important;
    -webkit-text-fill-color: #FF2D92 !important;
    text-decoration: none !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(3):hover .tribe-events-calendar-latest-past__event-title-link,
html body .tribe-events-calendar-latest-past__event-row:nth-child(3):hover .tribe-events-calendar-latest-past__event-title-link.tribe-common-anchor-thin,
html body .tribe-events-calendar-latest-past__event-row:nth-child(3):hover h3.tribe-events-calendar-latest-past__event-title a {
    color: #00d4ff !important;
    -webkit-text-fill-color: #00D4FF !important
}

html body .tribe-events-calendar-latest-past__event-row:nth-child(4):hover .tribe-events-calendar-latest-past__event-title-link,
html body .tribe-events-calendar-latest-past__event-row:nth-child(4):hover .tribe-events-calendar-latest-past__event-title-link.tribe-common-anchor-thin,
html body .tribe-events-calendar-latest-past__event-row:nth-child(4):hover h3.tribe-events-calendar-latest-past__event-title a {
    color: #8b5cf6 !important;
    -webkit-text-fill-color: #8B5CF6 !important
}

@media (max-width:768px) {
    .tribe-events-single-event-description.tribe-events-content {
        padding: 0 !important;
        border-radius: 12px !important;
        margin-top: 0 !important;
        overflow: hidden !important
    }

    .djvlad-event-image-wrap {
        display: block !important;
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 var(--space-5) 0 !important;
        padding: 0 !important
    }

    .djvlad-event-image-wrap .tribe-events-event-image {
        display: block !important;
        margin: 0 !important;
        padding: 0 !important
    }

    .djvlad-event-image-wrap .tribe-events-event-image img,
    .djvlad-event-image-wrap img {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 0 !important;
        object-fit: contain !important
    }

    .tribe-events-single-event-description.tribe-events-content h1,
    .tribe-events-single-event-description.tribe-events-content h2,
    .tribe-events-single-event-description.tribe-events-content h3,
    .tribe-events-single-event-description.tribe-events-content h4,
    .tribe-events-single-event-description.tribe-events-content ol,
    .tribe-events-single-event-description.tribe-events-content p,
    .tribe-events-single-event-description.tribe-events-content ul {
        padding-left: var(--space-4) !important;
        padding-right: var(--space-4) !important
    }

    .tribe-events-single-event-description.tribe-events-content p:first-of-type {
        margin-top: 0 !important
    }

    .tribe-events-single-event-description.tribe-events-content p:first-of-type::before {
        padding-top: 0 !important;
        margin-bottom: var(--space-3) !important;
        font-size: .75rem !important
    }

    .tribe-events-single-event-description.tribe-events-content p {
        font-size: 1rem !important;
        line-height: 1.7 !important
    }

    body.single-tribe_events .tribe-events-pg-template,
    section.tribe-events-pg-template {
        padding: 100px 16px 20px !important
    }

    #tribe-events-content.tribe-events-single,
    .tribe-events-single {
        padding: 24px !important;
        border-radius: 16px !important;
        box-shadow: 8px 8px 0 rgba(255, 45, 146, .4), 0 6px 24px rgba(255, 45, 146, .2) !important
    }

    .tribe-events-single-event-title,
    h1.tribe-events-single-event-title {
        font-size: clamp(1.3rem, 5vw, 1.6rem) !important;
        line-height: 1.2 !important
    }

    .tribe-events-schedule,
    .tribe-events-single .tribe-events-schedule {
        background: 0 0 !important;
        padding: 0 !important;
        border-radius: 0 !important;
        border: none !important;
        box-shadow: none !important
    }

    .djvlad-schedule-details {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        gap: 4px !important
    }

    .djvlad-event-date {
        display: block !important;
        font-size: .95rem !important;
        font-weight: 700 !important
    }

    .djvlad-event-time {
        display: block !important;
        font-size: .85rem !important;
        font-weight: 600 !important;
        opacity: .85 !important
    }

    .djvlad-calendar-link {
        padding: 12px 16px !important;
        font-size: .85rem !important;
        white-space: nowrap !important
    }

    .tribe-events-sub-nav {
        flex-direction: column !important;
        gap: var(--space-4) !important
    }

    .tribe-events-nav-next,
    .tribe-events-nav-previous {
        max-width: 100% !important;
        width: 100% !important
    }

    .tribe-events-nav-next a,
    .tribe-events-nav-previous a {
        padding: 14px 18px !important;
        font-size: .85rem !important;
        border-radius: 12px !important;
        justify-content: flex-start !important
    }

    .tribe-events-nav-previous a {
        box-shadow: 4px 4px 0 rgba(0, 212, 255, .35), 0 3px 12px rgba(0, 0, 0, .4) !important
    }

    .tribe-events-nav-next a {
        box-shadow: 4px 4px 0 rgba(255, 45, 146, .35), 0 3px 12px rgba(0, 0, 0, .4) !important
    }

    .tribe-events-single-section.tribe-events-event-meta {
        grid-template-columns: 1fr !important;
        gap: var(--space-3) !important
    }

    .tribe-events-meta-group {
        padding: var(--space-4) !important;
        border-radius: 12px !important
    }

    .tribe-events-single-event-description,
    .tribe-events-single-event-description p {
        font-size: .95rem !important;
        line-height: 1.65 !important
    }

    .tribe-common-c-btn-border,
    .tribe-events-c-subscribe-dropdown__button {
        font-size: .85rem !important;
        padding: 12px 16px !important;
        border-radius: 10px !important;
        white-space: nowrap !important
    }

    .site-footer .footer-grid {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
        text-align: center !important
    }

    .site-footer .footer-top {
        padding: 3rem 1.5rem !important
    }

    html body .tribe-events-calendar-latest-past__event-row {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        min-height: auto !important;
        height: auto !important;
        border-radius: 16px !important;
        box-shadow: 6px 6px 0 rgba(255, 45, 146, .5), 0 4px 16px rgba(255, 45, 146, .2) !important;
        margin-bottom: var(--space-4) !important
    }

    html body .tribe-events-calendar-latest-past__event-date-tag {
        flex: 0 0 auto !important;
        min-width: 60px !important;
        padding: 14px 10px !important;
        border-radius: 16px 0 0 16px !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important
    }

    html body .tribe-events-calendar-latest-past__event-date-tag-month {
        font-size: .65rem !important;
        margin-bottom: 2px !important;
        text-transform: uppercase !important;
        letter-spacing: .05em !important
    }

    html body .tribe-events-calendar-latest-past__event-date-tag-daynum {
        font-size: 1.5rem !important;
        line-height: 1 !important
    }

    html body .tribe-events-calendar-latest-past__event-date-tag-year {
        display: none !important
    }

    html body .tribe-events-calendar-latest-past__event {
        flex: 1 !important;
        display: flex !important;
        flex-direction: row !important;
        min-width: 0 !important;
        padding: 0 !important;
        border-radius: 0 16px 16px 0 !important
    }

    html body .tribe-events-calendar-latest-past__event-details {
        flex: 1 !important;
        min-width: 0 !important;
        padding: 12px !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        order: 1 !important
    }

    html body .tribe-events-calendar-latest-past__event-title {
        font-size: 1.2rem !important;
        line-height: 1.25 !important;
        font-weight: 500 !important;
        margin-bottom: 4px !important
    }

    html body .tribe-events-calendar-latest-past__event-title-link {
        font-size: 1.2rem !important;
        line-height: 1.25 !important;
        font-weight: 500 !important
    }

    html body .tribe-events-calendar-latest-past__event-datetime {
        font-size: .65rem !important;
        line-height: 1.3 !important;
        margin-bottom: 4px !important
    }

    html body .tribe-events-calendar-latest-past__event-venue,
    html body .tribe-events-calendar-latest-past__event-venue-title {
        font-size: .65rem !important;
        line-height: 1.3 !important
    }

    html body .tribe-events-calendar-latest-past__event-description {
        display: none !important
    }

    html body .tribe-events-calendar-latest-past__event-featured-image-wrapper {
        flex: 0 0 25% !important;
        min-width: 80px !important;
        max-width: 30% !important;
        min-height: 100% !important;
        height: auto !important;
        border-radius: 0 16px 16px 0 !important;
        order: 2 !important;
        overflow: hidden !important
    }

    html body .tribe-events-calendar-latest-past__event-featured-image-wrapper img {
        width: 100% !important;
        height: 100% !important;
        min-height: 100px !important;
        object-fit: cover !important;
        object-position: center !important
    }

    html body .tribe-events-calendar-latest-past__event-featured-image-wrapper a {
        display: block !important;
        width: 100% !important;
        height: 100% !important
    }

    html body .tribe-events-calendar-latest-past__event-row:hover {
        transform: translateY(-6px) scale(1.01) !important;
        box-shadow: 10px 10px 0 rgba(139, 92, 246, .5), 0 8px 32px rgba(255, 45, 146, .3) !important
    }
}

/* ==========================================================================
   MONTH VIEW CALENDAR - Dark Theme Override
   ========================================================================== */

/* Month view container and background */
.tribe-events-calendar-month,
.tribe-events-view--month,
html body .tribe-events-calendar-month,
html body .tribe-events-view--month {
    background: var(--obsidian-void) !important
}

/* Calendar grid - dark cells */
.tribe-events-calendar-month__calendar,
html body .tribe-events-calendar-month__calendar {
    background: var(--obsidian-deep) !important;
    border: 1px solid var(--obsidian-border) !important;
    border-radius: 16px !important;
    overflow: hidden !important
}

/* Day header row (M T W T F S S) */
.tribe-events-calendar-month__header,
.tribe-events-calendar-month__header-row,
html body .tribe-events-calendar-month__header,
html body .tribe-events-calendar-month__header-row {
    background: var(--obsidian-surface) !important;
    border-bottom: 1px solid var(--obsidian-border) !important
}

.tribe-events-calendar-month__header-column,
.tribe-events-calendar-month__header-column-title,
html body .tribe-events-calendar-month__header-column,
html body .tribe-events-calendar-month__header-column-title {
    color: var(--text-secondary) !important;
    -webkit-text-fill-color: var(--text-secondary) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: .75rem !important;
    text-transform: uppercase !important;
    letter-spacing: .1em !important;
    padding: 16px 8px !important;
    background: transparent !important;
    border: none !important
}

/* Calendar body and weeks */
.tribe-events-calendar-month__body,
html body .tribe-events-calendar-month__body {
    background: var(--obsidian-deep) !important
}

.tribe-events-calendar-month__week,
html body .tribe-events-calendar-month__week {
    border-bottom: 1px solid var(--obsidian-border) !important
}

.tribe-events-calendar-month__week:last-child {
    border-bottom: none !important
}

/* Individual day cells */
.tribe-events-calendar-month__day,
html body .tribe-events-calendar-month__day {
    background: var(--obsidian-deep) !important;
    border-right: 1px solid var(--obsidian-border) !important;
    min-height: 100px !important;
    transition: background .2s ease !important
}

.tribe-events-calendar-month__day:last-child {
    border-right: none !important
}

.tribe-events-calendar-month__day:hover {
    background: var(--obsidian-surface) !important
}

/* Day number */
.tribe-events-calendar-month__day-date,
.tribe-events-calendar-month__day-date-link,
.tribe-events-calendar-month__day-date-daynum,
html body .tribe-events-calendar-month__day-date,
html body .tribe-events-calendar-month__day-date-link,
html body .tribe-events-calendar-month__day-date-daynum {
    color: var(--text-primary) !important;
    -webkit-text-fill-color: var(--text-primary) !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 500 !important;
    font-size: 1rem !important;
    padding: 8px !important;
    background: transparent !important
}

/* Days from other months (grayed out) */
.tribe-events-calendar-month__day--past,
.tribe-events-calendar-month__day--other-month,
html body .tribe-events-calendar-month__day--past,
html body .tribe-events-calendar-month__day--other-month {
    background: var(--obsidian-black) !important;
    opacity: .6 !important
}

.tribe-events-calendar-month__day--past .tribe-events-calendar-month__day-date-daynum,
.tribe-events-calendar-month__day--other-month .tribe-events-calendar-month__day-date-daynum {
    color: var(--text-quaternary) !important;
    -webkit-text-fill-color: var(--text-quaternary) !important
}

/* Today's date highlight */
.tribe-events-calendar-month__day--current,
html body .tribe-events-calendar-month__day--current {
    background: rgba(139, 92, 246, .15) !important
}

.tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date-daynum {
    color: var(--vivid-purple) !important;
    -webkit-text-fill-color: var(--vivid-purple) !important;
    font-weight: 700 !important
}

/* Events in calendar cells */
.tribe-events-calendar-month__calendar-event,
.tribe-events-calendar-month__calendar-event-title,
.tribe-events-calendar-month__calendar-event-title-link,
html body .tribe-events-calendar-month__calendar-event,
html body .tribe-events-calendar-month__calendar-event-title,
html body .tribe-events-calendar-month__calendar-event-title-link {
    background: linear-gradient(135deg, rgba(255, 45, 146, .2) 0%, rgba(139, 92, 246, .2) 100%) !important;
    border-left: 3px solid var(--hot-pink) !important;
    border-radius: 4px !important;
    padding: 6px 8px !important;
    margin: 4px !important;
    color: var(--text-primary) !important;
    -webkit-text-fill-color: var(--text-primary) !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: .75rem !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
    transition: all .2s ease !important
}

.tribe-events-calendar-month__calendar-event:hover,
.tribe-events-calendar-month__calendar-event-title-link:hover {
    background: linear-gradient(135deg, rgba(255, 45, 146, .35) 0%, rgba(139, 92, 246, .35) 100%) !important;
    transform: translateX(2px) !important
}

/* Event time */
.tribe-events-calendar-month__calendar-event-datetime,
html body .tribe-events-calendar-month__calendar-event-datetime {
    color: var(--text-tertiary) !important;
    -webkit-text-fill-color: var(--text-tertiary) !important;
    font-size: .65rem !important;
    font-weight: 400 !important;
    margin-bottom: 2px !important
}

/* More events link */
.tribe-events-calendar-month__more-events,
.tribe-events-calendar-month__more-events-link,
html body .tribe-events-calendar-month__more-events,
html body .tribe-events-calendar-month__more-events-link {
    color: var(--electric-blue) !important;
    -webkit-text-fill-color: var(--electric-blue) !important;
    font-size: .7rem !important;
    font-weight: 600 !important;
    padding: 4px 8px !important;
    text-decoration: none !important
}

.tribe-events-calendar-month__more-events-link:hover {
    color: var(--hot-pink) !important;
    -webkit-text-fill-color: var(--hot-pink) !important
}

/* Month view navigation - Override the tiny arrows */
.tribe-events-calendar-month .tribe-events-c-nav__prev,
.tribe-events-calendar-month .tribe-events-c-nav__next,
.tribe-events-view--month .tribe-events-c-nav__prev,
.tribe-events-view--month .tribe-events-c-nav__next,
html body .tribe-events-view--month .tribe-events-c-nav__prev,
html body .tribe-events-view--month .tribe-events-c-nav__next {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: linear-gradient(135deg, #1a1a22 0%, #0f0f14 100%) !important;
    border: 1px solid rgba(0, 212, 255, .3) !important;
    border-radius: 10px !important;
    padding: 10px 16px !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: .8rem !important;
    box-shadow: 3px 3px 0 rgba(0, 212, 255, .35), 0 4px 12px rgba(0, 0, 0, .4) !important;
    transition: all .3s cubic-bezier(.34, 1.56, .64, 1) !important
}

.tribe-events-calendar-month .tribe-events-c-nav__next,
.tribe-events-view--month .tribe-events-c-nav__next,
html body .tribe-events-view--month .tribe-events-c-nav__next {
    border-color: rgba(255, 45, 146, .3) !important;
    box-shadow: 3px 3px 0 rgba(255, 45, 146, .35), 0 4px 12px rgba(0, 0, 0, .4) !important
}

/* Month view Today/This Month button */
.tribe-events-calendar-month .tribe-events-c-top-bar__today-button,
.tribe-events-view--month .tribe-events-c-top-bar__today-button,
html body .tribe-events-view--month .tribe-events-c-top-bar__today-button,
.tribe-events-c-top-bar__today-button[data-js="tribe-events-view-link"] {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: linear-gradient(135deg, #1a1a22 0%, #0f0f14 100%) !important;
    border: 1px solid rgba(139, 92, 246, .3) !important;
    border-radius: 10px !important;
    padding: 10px 20px !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: .8rem !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    box-shadow: 3px 3px 0 rgba(139, 92, 246, .35), 0 4px 12px rgba(0, 0, 0, .4) !important;
    transition: all .3s cubic-bezier(.34, 1.56, .64, 1) !important
}

.tribe-events-calendar-month .tribe-events-c-top-bar__today-button:hover,
.tribe-events-view--month .tribe-events-c-top-bar__today-button:hover {
    transform: translateY(-3px) !important;
    box-shadow: 5px 5px 0 rgba(139, 92, 246, .5), 0 8px 20px rgba(139, 92, 246, .25) !important;
    color: var(--vivid-purple) !important;
    -webkit-text-fill-color: var(--vivid-purple) !important
}

/* Month/Year title in datepicker */
.tribe-events-calendar-month .tribe-events-c-top-bar__datepicker-button,
.tribe-events-view--month .tribe-events-c-top-bar__datepicker-button,
html body .tribe-events-view--month .tribe-events-c-top-bar__datepicker-button {
    color: var(--text-primary) !important;
    -webkit-text-fill-color: var(--text-primary) !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 700 !important;
    font-size: 1.75rem !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important
}

/* Navigation wrapper layout */
.tribe-events-calendar-month .tribe-events-c-top-bar,
.tribe-events-view--month .tribe-events-c-top-bar,
html body .tribe-events-view--month .tribe-events-c-top-bar {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin-bottom: 24px !important
}

/* Mobile month view */
@media (max-width:768px) {
    .tribe-events-calendar-month__day {
        min-height: 70px !important
    }

    .tribe-events-calendar-month__header-column-title {
        font-size: .65rem !important;
        padding: 12px 4px !important
    }

    .tribe-events-calendar-month__day-date-daynum {
        font-size: .85rem !important;
        padding: 6px !important
    }

    .tribe-events-calendar-month__calendar-event-title-link {
        font-size: .65rem !important;
        padding: 4px 6px !important
    }

    .tribe-events-calendar-month .tribe-events-c-nav__prev,
    .tribe-events-calendar-month .tribe-events-c-nav__next,
    .tribe-events-view--month .tribe-events-c-nav__prev,
    .tribe-events-view--month .tribe-events-c-nav__next {
        padding: 8px 12px !important;
        font-size: .7rem !important
    }

    .tribe-events-calendar-month .tribe-events-c-top-bar__today-button,
    .tribe-events-view--month .tribe-events-c-top-bar__today-button {
        padding: 8px 14px !important;
        font-size: .7rem !important
    }

    .tribe-events-calendar-month .tribe-events-c-top-bar__datepicker-button,
    .tribe-events-view--month .tribe-events-c-top-bar__datepicker-button {
        font-size: 1.25rem !important
    }
}
/* ===== Condensed mobile event card: venue name + street only ===== */
/* Show the venue name on its own line with just the street address (line 1)
   beneath it — no city/state/country. Desktop keeps the full address. The
   street-only .djvlad-venue-street span is emitted by the theme's TEC venue.php
   overrides (tribe/events/v2/list|latest-past/event/venue.php). */
.djvlad-venue-street { display: none; }
@media (max-width: 768px) {
    html body .tribe-events-calendar-list__event-venue-title,
    html body .tribe-events-calendar-latest-past__event-venue-title { display: block !important; }
    html body .tribe-events-calendar-list__event-venue-address,
    html body .tribe-events-calendar-latest-past__event-venue-address { display: none !important; }
    html body .djvlad-venue-street { display: block !important; margin-top: 2px !important; }
}

/* ===== Mobile events nav: Prev ⟷ Today ⟷ Next on one row, edge to edge ===== */
@media (max-width: 768px) {
    html body .tribe-events-c-nav__list {
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        gap: 8px !important;
    }
    html body .tribe-events-c-nav__list-item { margin: 0 !important; flex: 0 0 auto !important; }
    html body .tribe-events-c-nav__list-item--today { flex: 1 1 auto !important; text-align: center !important; }
}

/* ============================================================
   EVENTS-BAR REPAIRS
   The skin references --accent / --accent-gradient /
   --accent-subtle / --accent-glow but never defined them, so
   the active-view marker, the search submit button, and every
   focus ring rendered fully transparent. Defined here in the
   site's brand red.
   ============================================================ */
:root {
    --accent: #ED1C24;
    --accent-gradient: linear-gradient(135deg, #ED1C24 0%, #C4161D 100%);
    --accent-subtle: rgba(237, 28, 36, 0.16);
    --accent-glow: rgba(237, 28, 36, 0.35);
}

/* TEC's mobile full-bleed uses margin 0 -5vw, which overshoots the
   16px container padding and hangs the header (and the search panel
   anchored to it) off the left screen edge. Bleed exactly as far as
   the container padding instead. */
@media (max-width: 768px) {
    .tribe-events .tribe-events-header {
        margin-left: -16px !important;
        margin-right: -16px !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

/* --- Datepicker popup (opens from the "Upcoming" title): the panel
       kept bootstrap-datepicker's white background while inheriting
       the skin's white text. Dark elevated panel. --- */
.tribe-events .datepicker,
.datepicker.dropdown-menu {
    background: var(--obsidian-elevated) !important;
    border: 1px solid var(--obsidian-border-hover) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: var(--shadow-xl) !important;
    color: var(--text-primary) !important;
    padding: 10px !important;
}
.datepicker.dropdown-menu::before,
.datepicker.dropdown-menu::after {
    display: none !important;
}
.tribe-events .datepicker table tr td,
.tribe-events .datepicker table tr th,
.datepicker.dropdown-menu table tr td,
.datepicker.dropdown-menu table tr th {
    background: transparent !important;
    color: var(--text-primary) !important;
    border-radius: var(--radius-sm) !important;
}
.tribe-events .datepicker .dow,
.datepicker.dropdown-menu .dow {
    color: var(--text-tertiary) !important;
    font-size: .6875rem !important;
    text-transform: uppercase !important;
    letter-spacing: .08em !important;
}
.tribe-events .datepicker .datepicker-switch:hover,
.tribe-events .datepicker .prev:hover,
.tribe-events .datepicker .next:hover,
.tribe-events .datepicker tfoot tr th:hover,
.tribe-events .datepicker table tr td.day:hover,
.tribe-events .datepicker table tr td span:hover,
.datepicker.dropdown-menu .datepicker-switch:hover,
.datepicker.dropdown-menu .prev:hover,
.datepicker.dropdown-menu .next:hover,
.datepicker.dropdown-menu tfoot tr th:hover,
.datepicker.dropdown-menu table tr td.day:hover,
.datepicker.dropdown-menu table tr td span:hover {
    background: var(--obsidian-surface) !important;
    color: #FFFFFF !important;
    cursor: pointer;
}
.tribe-events .datepicker table tr td.old,
.tribe-events .datepicker table tr td.new,
.datepicker.dropdown-menu table tr td.old,
.datepicker.dropdown-menu table tr td.new {
    color: var(--text-quaternary) !important;
}
.tribe-events .datepicker table tr td.disabled,
.tribe-events .datepicker table tr td.disabled:hover,
.datepicker.dropdown-menu table tr td.disabled,
.datepicker.dropdown-menu table tr td.disabled:hover {
    background: transparent !important;
    color: rgba(255, 255, 255, 0.16) !important;
    cursor: default;
}
.tribe-events .datepicker table tr td.today,
.datepicker.dropdown-menu table tr td.today {
    background: var(--accent-subtle) !important;
    color: #FFFFFF !important;
}
.tribe-events .datepicker table tr td.active,
.tribe-events .datepicker table tr td.active:hover,
.tribe-events .datepicker table tr td span.active,
.tribe-events .datepicker table tr td span.active:hover,
.datepicker.dropdown-menu table tr td.active,
.datepicker.dropdown-menu table tr td.active:hover,
.datepicker.dropdown-menu table tr td span.active,
.datepicker.dropdown-menu table tr td span.active:hover {
    background: var(--accent) !important;
    background-image: none !important;
    color: #FFFFFF !important;
    text-shadow: none !important;
}

/* --- View selector (List / Month / Day): the dropdown panel was
       obsidian-black on an obsidian-black page with border:none.
       Elevated panel + readable trigger icon. --- */
.tribe-events .tribe-events-c-view-selector__content,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-c-view-selector__content {
    background: var(--obsidian-elevated) !important;
    background-color: var(--obsidian-elevated) !important;
    border: 1px solid var(--obsidian-border-hover) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: var(--shadow-xl) !important;
    overflow: hidden !important;
}
.tribe-events .tribe-events-c-view-selector__button {
    color: var(--text-secondary) !important;
}
.tribe-events .tribe-events-c-view-selector__button:hover,
.tribe-events .tribe-events-c-view-selector__button:focus {
    color: #FFFFFF !important;
}

/* --- Search dropdown: floated edge-to-edge with a transparent form
       on the dark page. Contained, elevated panel instead. --- */
.tribe-events .tribe-events-c-events-bar__search-container {
    background: var(--obsidian-elevated) !important;
    background-color: var(--obsidian-elevated) !important;
    border: 1px solid var(--obsidian-border-hover) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: var(--shadow-xl) !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    margin-top: 6px !important;
    padding: var(--space-4) !important;
    z-index: 40 !important;
}
.tribe-events .tribe-events-c-events-bar__search-button {
    color: var(--text-secondary) !important;
}
.tribe-events .tribe-events-c-events-bar__search-button:hover,
.tribe-events .tribe-events-c-events-bar__search-button--active {
    color: #FFFFFF !important;
}
.tribe-events .tribe-events-c-search__input-control {
    background: var(--obsidian-surface) !important;
    border: 1px solid var(--obsidian-border-hover) !important;
}
.tribe-events .tribe-events-c-search__button {
    color: #FFFFFF !important;
    padding: 12px 16px !important;
}

/* ============================================================
   EVENTS-BAR REBUILD v2
   Ships under the -v388 filename: the host ignores ?ver= on
   CSS, so renaming the file is the only reliable cache-bust.
   ============================================================ */

/* The wildcard [class*=tribe-events-c-view-selector] background rule
   above paints even the ICON SPANS as solid boxes; undo that, and make
   the svg glyphs draw in the text color. */
.tribe-events .tribe-events-c-view-selector__list-item-icon,
.tribe-events .tribe-events-c-view-selector__button-icon {
    background: transparent !important;
    background-color: transparent !important;
}
.tribe-events .tribe-events-c-view-selector svg,
.tribe-events .tribe-events-c-view-selector svg path {
    fill: currentColor !important;
}
/* No marker pseudo under the dropdown trigger button. */
.tribe-events .tribe-events-c-view-selector__button::before,
.tribe-events .tribe-events-c-view-selector__button::after {
    display: none !important;
}

/* Breathing room below the site header, without the old 100px void. */
.tribe-events .tribe-events-l-container { padding-top: 44px !important; }

/* TODAY button shadows join the page's red/neutral palette (they were
   the last purple holdout in the bar zone). */
.tribe-events .tribe-events-c-top-bar__today-button,
.tribe-events-calendar-month .tribe-events-c-top-bar__today-button,
html body .tribe-events-c-top-bar__today-button {
    box-shadow: 4px 4px 0 rgba(0, 0, 0, .45), 0 4px 12px rgba(0, 0, 0, .4) !important;
}
.tribe-events .tribe-events-c-top-bar__today-button:hover,
.tribe-events-calendar-month .tribe-events-c-top-bar__today-button:hover,
html body .tribe-events-c-top-bar__today-button:hover {
    border-color: rgba(237, 28, 36, .4) !important;
    box-shadow: 6px 6px 0 rgba(237, 28, 36, .35), 0 8px 24px rgba(0, 0, 0, .4) !important;
    color: #ED1C24 !important;
    -webkit-text-fill-color: #ED1C24 !important;
}

/* ---- Tablet/desktop (TEC medium container, >=768px): LIST / MONTH / DAY
       render as inline tabs in a compact panel; labels centered, active
       marker directly under the label. ---- */
@media (min-width: 768px) {
    .tribe-common--breakpoint-medium .tribe-events-c-events-bar {
        display: flex !important; align-items: stretch !important; gap: 12px !important;
        background: transparent !important; border: none !important; padding: 0 !important; min-height: 0 !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-events-bar__views { flex: 0 0 auto !important; width: auto !important; margin: 0 !important; }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector,
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__tabs { height: 100% !important; }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__content {
        position: static !important; display: block !important; height: 100% !important; width: auto !important;
        background: var(--obsidian-surface) !important;
        border: 1px solid var(--obsidian-border) !important;
        border-radius: var(--radius-md) !important;
        box-shadow: none !important; overflow: hidden !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list { display: flex !important; height: 100% !important; align-items: stretch !important; }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item { display: flex !important; flex: 1 1 0 !important; }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item-link {
        display: flex !important; align-items: center !important; justify-content: center !important;
        width: 100% !important; padding: 0 24px !important; position: relative !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item-icon { display: none !important; }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link::after {
        bottom: 12px !important; width: 18px !important;
    }
}

/* ---- TEC medium container and up: the search form renders inline
       left of the tabs; undo the floating-panel treatment. ---- */
.tribe-common--breakpoint-medium .tribe-events-c-events-bar__search-container {
    position: static !important; flex: 1 1 auto !important; display: flex !important;
    background: transparent !important; border: none !important; box-shadow: none !important;
    padding: 0 !important; margin: 0 !important; width: auto !important; border-radius: 0 !important;
    left: auto !important; right: auto !important;
}
.tribe-common--breakpoint-medium .tribe-events-c-events-bar__search { width: 100% !important; }
.tribe-common--breakpoint-medium .tribe-events-c-search { display: flex !important; align-items: center !important; width: 100% !important; padding: 6px !important; }
.tribe-common--breakpoint-medium .tribe-events-c-search__input-control { flex: 1 1 auto !important; border: none !important; background: transparent !important; }
.tribe-common--breakpoint-medium .tribe-events-c-search__input { padding: 12px 14px 12px 42px !important; }
.tribe-common--breakpoint-medium .tribe-events-c-search__button { flex: 0 0 auto !important; margin: 0 !important; }

/* ---- Phones (< TEC medium): one control row. "Upcoming" reads on the
       left; the search and view buttons sit beside it on the right (the
       negative margin overlaps the two header rows; the top bar passes
       pointer events through its padded right edge). ---- */
@media (max-width: 775px) {
    .tribe-events .tribe-events-l-container { padding-top: 24px !important; }
    .tribe-events .tribe-events-c-events-bar {
        position: static !important; display: flex !important; justify-content: flex-end !important;
        align-items: center !important; gap: 8px !important;
        background: transparent !important; border: none !important; padding: 0 !important;
        height: 38px !important; margin: 0 0 -38px !important; width: auto !important;
    }
    .tribe-events .tribe-events-c-top-bar { pointer-events: none; padding-right: 100px !important; min-height: 38px !important; }
    .tribe-events .tribe-events-c-top-bar > * { pointer-events: auto; }
    .tribe-events .tribe-events-c-events-bar__search-button,
    .tribe-events .tribe-events-c-view-selector__button {
        width: 38px !important; height: 38px !important;
        display: flex !important; align-items: center !important; justify-content: center !important;
        border: 1px solid var(--obsidian-border-hover) !important; border-radius: 8px !important;
        background: var(--obsidian-void) !important;
        margin: 0 !important; padding: 0 !important;
    }
    /* both trigger icons draw in brand red, pairing with the magnifier */
    .tribe-events .tribe-events-c-view-selector__button { color: #ED1C24 !important; }
    /* dropdown rows: icon beside label; active row reads red */
    .tribe-events .tribe-events-c-view-selector__list-item-link {
        display: flex !important; align-items: center !important; gap: 10px !important; padding: 12px 16px !important;
    }
    .tribe-events .tribe-events-c-view-selector__list-item-icon {
        display: inline-flex !important; width: 18px !important; height: 18px !important; flex: 0 0 auto !important;
    }
    .tribe-events .tribe-events-c-view-selector__list-item-icon svg { width: 18px !important; height: 18px !important; }
    .tribe-events .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link { color: #ED1C24 !important; }
    .tribe-events .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link::after { display: none !important; }
}

/* ============================================================
   MILLION-DOLLAR POLISH PASS (v391)
   84-finding six-lens audit, curated: foundations, typography,
   palette discipline, geometry, interaction states, motion.
   Appended last: wins every same-specificity !important tie.
   ============================================================ */

/* ---------- 1. FOUNDATIONS ---------- */

/* The skin references --font-mono four times but never defined it. */
:root {
    --font-mono: 'JetBrains Mono', ui-monospace, 'SF Mono', SFMono-Regular, Menlo, Consolas, monospace;
    /* Pure #FFFFFF body text buzzes on OLED; headings/buttons keep their own hardcoded white. */
    --text-primary: #F4F4F6;
}

/* Whole page renders one weight (header/footer chrome included). */
body.post-type-archive-tribe_events,
body.single-tribe_events {
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

/* Kerning + ligatures on display type only. */
html body .tribe-events-calendar-list__event-title,
html body .tribe-events-calendar-list__event-title-link,
html body .tribe-events-calendar-list__month-separator-text,
html body .tribe-events-header__title,
html body .tribe-events-c-top-bar__datepicker-button,
html body h1.tribe-events-single-event-title,
html body .tribe-events-calendar-latest-past__heading,
html body .tribe-events-calendar-latest-past__event-title {
    text-rendering: optimizeLegibility !important;
}

/* Text selection in brand red. */
::selection {
    background: #ED1C24 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    text-shadow: none !important;
}
::-moz-selection {
    background: #ED1C24;
    color: #FFFFFF;
}

/* Thin obsidian scrollbar (this skin loads only on events pages). */
html {
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 255, 255, .16) var(--obsidian-void);
}
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--obsidian-void); }
::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, .14);
    border-radius: 8px;
    border: 2px solid var(--obsidian-void);
}
::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, .24); }

/* No OS tap flash on custom-styled tappables (press states replace it). */
.tribe-common a, .tribe-common button, .tribe-common input,
.tribe-events a, .tribe-events button, .tribe-events input,
html body .tribe-events-calendar-list__event-row,
html body .tribe-events-calendar-latest-past__event-row,
.tribe-events .datepicker table tr td,
.tribe-events .datepicker table tr th,
.datepicker.dropdown-menu table tr td,
.datepicker.dropdown-menu table tr th,
.datepicker.dropdown-menu table tr td span {
    -webkit-tap-highlight-color: transparent;
}

/* Controls are buttons, not copy. */
.tribe-events .tribe-events-c-top-bar__today-button,
.tribe-events .tribe-events-c-nav__next,
.tribe-events .tribe-events-c-nav__prev,
.tribe-events .tribe-events-c-top-bar__datepicker-button,
.tribe-events .tribe-events-c-view-selector__button,
.tribe-events .tribe-events-c-view-selector__list-item-link,
.tribe-events .tribe-events-c-search__button,
.tribe-events .tribe-events-c-events-bar__search-button,
.tribe-events-c-subscribe-dropdown__button,
.tribe-events .datepicker,
.datepicker.dropdown-menu {
    -webkit-user-select: none !important;
    user-select: none !important;
}

/* Caret blinks brand red in the search field. */
.tribe-events .tribe-events-c-search__input,
.tribe-common .tribe-events-c-search__input {
    caret-color: var(--accent) !important;
}

/* Placeholder identical across engines (Firefox double-dims via opacity). */
.tribe-events .tribe-events-c-search__input::placeholder {
    color: var(--text-quaternary) !important;
    opacity: 1 !important;
}

/* Popups own their scroll; nothing chains to the page behind them. */
.tribe-events .datepicker,
.datepicker.dropdown-menu,
.tribe-events .tribe-events-c-view-selector__content,
.tribe-events .tribe-events-c-events-bar__search-container,
.tribe-events-c-subscribe-dropdown__content {
    overscroll-behavior: contain;
}

/* Native controls pick up brand red. */
.tribe-common, .tribe-events { accent-color: #ED1C24; }

/* No baseline gap under remaining content images. */
.tribe-events .tribe-events-single-event-description img,
.tribe-events .tribe-events-calendar-month__calendar-event img,
.tribe-events [class*="tooltip"] img {
    display: block !important;
    max-width: 100% !important;
}

/* Keyboard skip-link joins the brand (overrides JS-injected maroon). */
#skip-to-events.sr-only-focusable:focus {
    background: #ED1C24 !important;
    color: #FFFFFF !important;
    box-shadow: 4px 4px 0 rgba(0, 0, 0, .45), 0 4px 12px rgba(0, 0, 0, .4) !important;
}

/* AJAX loader dots: brand red on dark (TEC default fill is near-black). */
.tribe-common .tribe-common-c-loader,
.tribe-events .tribe-common-c-loader {
    background: transparent !important;
}
.tribe-common .tribe-common-c-loader__dot,
.tribe-events .tribe-common-c-loader__dot,
.tribe-common .tribe-common-c-loader__dot path,
.tribe-events .tribe-common-c-loader__dot path {
    fill: #ED1C24 !important;
    color: #ED1C24 !important;
}

/* Empty state ("no results found"): dark elevated notice panel. */
.tribe-events .tribe-events-c-messages,
.tribe-events .tribe-events-header__messages {
    background: transparent !important;
    margin: var(--space-10) 0 !important;
}
.tribe-events .tribe-events-c-messages__message {
    background: var(--obsidian-surface) !important;
    border: 1px solid var(--obsidian-border) !important;
    border-left: 3px solid var(--accent) !important;
    border-radius: var(--radius-md) !important;
    padding: var(--space-6) !important;
    display: flex !important;
    align-items: center !important;
    gap: var(--space-4) !important;
    box-shadow: var(--shadow-md) !important;
}
.tribe-events .tribe-events-c-messages__message-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.tribe-events .tribe-events-c-messages__message-list-item {
    font-family: var(--font-body) !important;
    font-size: 1rem !important;
    line-height: 1.5 !important;
    color: var(--text-secondary) !important;
    -webkit-text-fill-color: var(--text-secondary) !important;
}
.tribe-events .tribe-events-c-messages__message-icon,
.tribe-events .tribe-events-c-messages__message-icon path {
    fill: var(--accent) !important;
    flex: 0 0 auto !important;
}

/* ---------- 2. TYPOGRAPHY ---------- */

/* Event times: AA contrast, label weight, aligned numerals. */
html body .tribe-events-calendar-list__event-datetime,
html body .tribe-events-calendar-month__calendar-event-datetime,
html body .tribe-events-calendar-latest-past__event-datetime {
    color: rgba(255, 255, 255, .72) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, .72) !important;
    font-weight: 600 !important;
    font-variant-numeric: tabular-nums !important;
}

/* Month separator: tracked-caps editorial kicker, one step below the page title. */
.tribe-common .tribe-events-calendar-list__month-separator-text,
html body .tribe-events-calendar-list__month-separator-text {
    font-size: 1.125rem !important;
    font-weight: 800 !important;
    letter-spacing: .16em !important;
    line-height: 1 !important;
    color: rgba(255, 255, 255, .92) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, .92) !important;
    font-variant-numeric: tabular-nums !important;
    padding-bottom: 14px !important;
}

/* Secondary card text clears AA on every gradient variant (both lists). */
.tribe-common .tribe-events-calendar-list__event-venue,
html body .tribe-events-calendar-list__event-venue,
html body .tribe-events-calendar-list__event-venue-address,
html body .tribe-events-calendar-latest-past__event-venue,
.tribe-common .tribe-events-calendar-list__event-description,
html body .tribe-events-calendar-list__event-description,
html body .tribe-events-calendar-list__event-description p,
html body .tribe-events-calendar-latest-past__event-description {
    color: rgba(255, 255, 255, .64) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, .64) !important;
}
.tribe-events-single-event-description p {
    color: var(--text-secondary) !important;
    line-height: 1.65 !important;
}
.tribe-events-c-subscribe-dropdown__list-item-link {
    color: var(--text-secondary) !important;
}

/* Date-rail numerals: one weight, tabular figures down the stack. */
html body .tribe-events-calendar-list__event-date-tag-daynum,
html body .tribe-events .tribe-events-calendar-list__event-date-tag-daynum,
html body .tribe-events-calendar-latest-past__event-date-tag-daynum {
    font-weight: 800 !important;
    letter-spacing: -.01em !important;
    font-variant-numeric: tabular-nums !important;
}

/* Calendar grids: explicit size + tabular numerals. */
.tribe-events .datepicker table tr td.day,
.datepicker.dropdown-menu table tr td.day {
    font-family: 'Outfit', sans-serif !important;
    font-size: .8125rem !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    font-variant-numeric: tabular-nums !important;
    padding: 9px 0 !important;
}
.tribe-events .datepicker th.datepicker-switch,
.datepicker.dropdown-menu th.datepicker-switch {
    font-family: 'Outfit', sans-serif !important;
    font-size: .875rem !important;
    font-weight: 700 !important;
    letter-spacing: .02em !important;
}
html body .tribe-events-calendar-month__day-date,
html body .tribe-events-calendar-month__day-date-link,
html body .tribe-events-calendar-month__day-date-daynum {
    font-variant-numeric: tabular-nums !important;
}

/* One shared tracking for all uppercase micro-labels. */
.tribe-events-c-view-selector__button,
.tribe-events-c-view-selector__list-item-link,
.tribe-events-c-search__button,
.tribe-events .datepicker .dow,
.datepicker.dropdown-menu .dow,
html body .tribe-events-calendar-month__header-column-title,
html body .tribe-events-calendar-latest-past__event-date-tag-month,
html body .tribe-events-calendar-list__event-datetime,
html body .tribe-events-calendar-latest-past__event-datetime,
.tribe-events-single-event-description.tribe-events-content p:first-of-type::before,
.tribe-events-single-section-title,
h2.tribe-events-single-section-title,
.tribe-events-meta-label {
    letter-spacing: .12em !important;
}

/* Type-scale consolidation (desktop/tablet; mobile compact sizes untouched). */
@media (min-width: 769px) {
    .tribe-events-c-nav__next, .tribe-events-c-nav__prev,
    html body .tribe-events-c-nav__next, html body .tribe-events-c-nav__prev,
    .tribe-events .tribe-events-c-nav__next, .tribe-events .tribe-events-c-nav__prev,
    .tribe-events-calendar-month .tribe-events-c-nav__prev,
    .tribe-events-calendar-month .tribe-events-c-nav__next,
    html body .tribe-events-view--month .tribe-events-c-nav__prev,
    html body .tribe-events-view--month .tribe-events-c-nav__next,
    .tribe-events-c-top-bar__today-button,
    html body .tribe-events-c-top-bar__today-button,
    .tribe-events .tribe-events-c-top-bar__today-button,
    .tribe-events-calendar-month .tribe-events-c-top-bar__today-button,
    .tribe-events-view--month .tribe-events-c-top-bar__today-button,
    .tribe-events-c-subscribe-dropdown__button,
    .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button,
    .tribe-common-c-btn-border,
    .tribe-events-back a,
    .tribe-events-single .tribe-events-back a,
    .tribe-events-c-subscribe-dropdown__list-item-link {
        font-size: .875rem !important;
    }
    html body .tribe-events-calendar-latest-past__event-title,
    html body .tribe-events-calendar-latest-past__event-title-link {
        font-size: 1.5rem !important;
    }
    html body .tribe-events-calendar-list__event-venue-title {
        font-size: .8125rem !important;
    }
}

/* Mobile card titles keep heading weight. */
@media (max-width: 768px) {
    html body .tribe-common-h4--min-medium.tribe-events-calendar-list__event-title,
    html body .tribe-common-h6.tribe-events-calendar-list__event-title,
    html body .tribe-events-calendar-list__event-title,
    html body .tribe-events-calendar-list__event-title-link,
    html body h4.tribe-events-calendar-list__event-title,
    html body .tribe-events-calendar-latest-past__event-title,
    html body .tribe-events-calendar-latest-past__event-title-link {
        font-weight: 600 !important;
    }
}

/* Single-line UI labels sit on line-height 1; card titles on 1.2. */
.tribe-events-c-nav__next, .tribe-events-c-nav__prev,
html body .tribe-events-c-nav__next, html body .tribe-events-c-nav__prev,
.tribe-events-c-top-bar__today-button,
html body .tribe-events-c-top-bar__today-button,
.tribe-common-c-btn-border,
.tribe-events-c-subscribe-dropdown__button,
.tribe-events-c-search__button,
.tribe-events-c-view-selector__list-item-link,
.tribe-events-back a {
    line-height: 1 !important;
}
html body .tribe-events-calendar-list__event-title,
html body .tribe-events-calendar-list__event-title-link,
html body h4.tribe-events-calendar-list__event-title {
    line-height: 1.2 !important;
}

/* ---------- 3. PALETTE DISCIPLINE ---------- */

/* TODAY: neutral resting border (last purple remnant). */
.tribe-events .tribe-events-c-top-bar__today-button,
.tribe-events-calendar-month .tribe-events-c-top-bar__today-button,
.tribe-events-view--month .tribe-events-c-top-bar__today-button,
html body .tribe-events-view--month .tribe-events-c-top-bar__today-button,
.tribe-events-c-top-bar__today-button[data-js="tribe-events-view-link"],
html body .tribe-events-c-top-bar__today-button {
    border-color: var(--obsidian-border-hover) !important;
}

/* PREV/NEXT arrows: neutral rest, red hover; blue/pink chrome retired. */
.tribe-events .tribe-events-c-nav__prev,
.tribe-events .tribe-events-c-nav__next,
.tribe-events-calendar-month .tribe-events-c-nav__prev,
.tribe-events-calendar-month .tribe-events-c-nav__next,
html body .tribe-events-view--month .tribe-events-c-nav__prev,
html body .tribe-events-view--month .tribe-events-c-nav__next,
html body .tribe-events-c-nav__prev,
html body .tribe-events-c-nav__next {
    border-color: var(--obsidian-border-hover) !important;
    box-shadow: 4px 4px 0 rgba(0, 0, 0, .45), 0 4px 12px rgba(0, 0, 0, .4) !important;
}
.tribe-events .tribe-events-c-nav__prev:hover,
.tribe-events .tribe-events-c-nav__next:hover,
.tribe-events-calendar-month .tribe-events-c-nav__prev:hover,
.tribe-events-calendar-month .tribe-events-c-nav__next:hover,
html body .tribe-events-view--month .tribe-events-c-nav__prev:hover,
html body .tribe-events-view--month .tribe-events-c-nav__next:hover,
html body .tribe-events-c-nav__prev:hover,
html body .tribe-events-c-nav__next:hover {
    transform: none !important;
    border-color: rgba(237, 28, 36, .4) !important;
    box-shadow: 6px 6px 0 rgba(237, 28, 36, .35), 0 8px 24px rgba(0, 0, 0, .4) !important;
    color: #ED1C24 !important;
    -webkit-text-fill-color: #ED1C24 !important;
}
html body .tribe-events-c-nav__prev:hover svg,
html body .tribe-events-c-nav__prev:hover svg path,
html body .tribe-events-c-nav__next:hover svg,
html body .tribe-events-c-nav__next:hover svg path {
    fill: #ED1C24 !important;
}
@media (max-width: 768px) {
    .tribe-events .tribe-events-c-nav__prev,
    .tribe-events .tribe-events-c-nav__next,
    html body .tribe-events-c-nav__prev,
    html body .tribe-events-c-nav__next {
        box-shadow: 3px 3px 0 rgba(0, 0, 0, .45), 0 3px 8px rgba(0, 0, 0, .4) !important;
    }
}

/* Disabled arrows: flat and inert. */
html body .tribe-events-c-nav__prev[disabled],
html body .tribe-events-c-nav__next[disabled],
html body .tribe-events-c-nav__prev[disabled]:hover,
html body .tribe-events-c-nav__next[disabled]:hover,
html body .tribe-events-c-nav__prev[disabled]:active,
html body .tribe-events-c-nav__next[disabled]:active {
    transform: none !important;
    border-color: var(--obsidian-border) !important;
    box-shadow: 3px 3px 0 rgba(255, 255, 255, .05), 0 2px 6px rgba(0, 0, 0, .3) !important;
}
html body .tribe-events-c-nav__prev[disabled]:hover svg,
html body .tribe-events-c-nav__prev[disabled]:hover svg path,
html body .tribe-events-c-nav__next[disabled]:hover svg,
html body .tribe-events-c-nav__next[disabled]:hover svg path {
    fill: #FFFFFF !important;
}

/* "Upcoming" trigger: red like its own popup, with a caret that answers. */
html body .tribe-events-c-top-bar__datepicker-button:hover,
html body .tribe-events-c-top-bar__datepicker-button[aria-expanded="true"] {
    color: var(--accent) !important;
    -webkit-text-fill-color: var(--accent) !important;
}
html body .tribe-events-c-top-bar__datepicker-button svg {
    fill: var(--accent) !important;
    transition: transform .25s var(--ease-out-expo) !important;
}
html body .tribe-events-c-top-bar__datepicker-button[aria-expanded="true"] svg {
    transform: rotate(180deg) !important;
}

/* Purple slot in the card cycle -> brand red. */
html body .tribe-events-calendar-list__event-row:nth-child(4n+6) .tribe-events-calendar-list__event-date-tag,
html body .tribe-events-calendar-latest-past__event-row:nth-child(4) .tribe-events-calendar-latest-past__event-date-tag {
    background: linear-gradient(180deg, #ED1C24 0, #C4161D 100%) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+6),
html body .tribe-events-calendar-latest-past__event-row:nth-child(4) {
    box-shadow: 12px 12px 0 rgba(237, 28, 36, .5), 0 8px 40px rgba(237, 28, 36, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+6):hover,
html body .tribe-events-calendar-latest-past__event-row:nth-child(4):hover {
    box-shadow: 16px 16px 0 rgba(237, 28, 36, .4), 0 12px 48px rgba(237, 28, 36, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+6) .tribe-events-calendar-list__event {
    background: linear-gradient(145deg, rgba(237, 28, 36, .2) 0, rgba(237, 28, 36, .12) 50%, rgba(255, 45, 146, .06) 100%) !important;
}
@media (max-width: 768px) {
    html body .tribe-events-calendar-list__event-row:nth-child(4n+6),
    html body .tribe-events-calendar-latest-past__event-row:nth-child(4) {
        box-shadow: 6px 6px 0 rgba(237, 28, 36, .5), 0 4px 16px rgba(237, 28, 36, .2) !important;
    }
    html body .tribe-events-calendar-list__event-row:nth-child(4n+6):hover {
        box-shadow: 10px 10px 0 rgba(237, 28, 36, .5), 0 8px 32px rgba(237, 28, 36, .3) !important;
    }
    html body .tribe-events-calendar-latest-past__event-row:hover {
        box-shadow: 10px 10px 0 rgba(255, 45, 146, .5), 0 8px 32px rgba(255, 45, 146, .3) !important;
    }
}
html body .tribe-events-calendar-latest-past__event-row::before,
html body .tribe-events-calendar-list__event-row::before,
html body li.tribe-events-calendar-list__event-row::before {
    background: linear-gradient(165deg, rgba(255, 45, 146, .08) 0, rgba(255, 45, 146, .03) 40%, transparent 100%) !important;
}
#tribe-events-content.tribe-events-single::before,
.tribe-events-single::before {
    background: linear-gradient(165deg, rgba(255, 45, 146, .12) 0, rgba(255, 45, 146, .05) 40%, transparent 100%) !important;
}

/* Card title/venue hovers: one pink identity, no glows. */
html body .tribe-events-calendar-list__event-row:hover .tribe-events-calendar-list__event-title-link,
html body .tribe-events-calendar-list__event-row:nth-child(4n+4):hover .tribe-events-calendar-list__event-title-link,
html body .tribe-events-calendar-list__event-row:nth-child(4n+6):hover .tribe-events-calendar-list__event-title-link,
html body .tribe-events-calendar-list__event-row:nth-child(4n+8):hover .tribe-events-calendar-list__event-title-link,
html body .tribe-events-calendar-list__event-row:nth-child(4n+10):hover .tribe-events-calendar-list__event-title-link {
    color: #FF2D92 !important;
    -webkit-text-fill-color: #FF2D92 !important;
    text-shadow: none !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+4) .tribe-events-calendar-list__event-venue-title,
html body .tribe-events-calendar-list__event-row:nth-child(4n+6) .tribe-events-calendar-list__event-venue-title,
html body .tribe-events-calendar-list__event-row:nth-child(4n+8) .tribe-events-calendar-list__event-venue-title,
html body .tribe-events-calendar-list__event-row:nth-child(4n+10) .tribe-events-calendar-list__event-venue-title {
    color: #FF2D92 !important;
    -webkit-text-fill-color: #FF2D92 !important;
}
html body .tribe-events-calendar-latest-past__event-row:nth-child(3):hover .tribe-events-calendar-latest-past__event-title-link,
html body .tribe-events-calendar-latest-past__event-row:nth-child(3):hover h3.tribe-events-calendar-latest-past__event-title a,
html body .tribe-events-calendar-latest-past__event-row:nth-child(4):hover .tribe-events-calendar-latest-past__event-title-link,
html body .tribe-events-calendar-latest-past__event-row:nth-child(4):hover h3.tribe-events-calendar-latest-past__event-title a {
    color: #FF2D92 !important;
    -webkit-text-fill-color: #FF2D92 !important;
}
html body .tribe-events-calendar-latest-past__event-row:nth-child(3) .tribe-events-calendar-latest-past__event-venue-title,
html body .tribe-events-calendar-latest-past__event-row:nth-child(4) .tribe-events-calendar-latest-past__event-venue-title {
    color: #FF2D92 !important;
    -webkit-text-fill-color: #FF2D92 !important;
}
html body .tribe-events-back a:hover {
    text-shadow: none !important;
}

/* Single-event links: brand red, white hover, no glows. */
.tribe-events-meta-value a, html body .tribe-events-meta-value a { color: var(--accent) !important; }
.tribe-events-meta-value a:hover, html body .tribe-events-meta-value a:hover {
    color: #FFFFFF !important;
    text-decoration: underline !important;
}
.tribe-events-address a, .tribe-events-gmap { color: var(--accent) !important; }
.tribe-events-address a:hover, .tribe-events-gmap:hover { color: #FFFFFF !important; }
.tribe-events-back a, .tribe-events-single .tribe-events-back a { color: var(--accent) !important; }
.tribe-events-back a:hover { color: #FFFFFF !important; }
.tribe-events-event-categories a {
    color: var(--accent) !important;
    background: rgba(237, 28, 36, .12) !important;
}
.tribe-events-event-categories a:hover {
    background: rgba(237, 28, 36, .22) !important;
    color: #FFFFFF !important;
}

/* Description + meta rails: one red accent system; hairline joins the fire identity. */
.tribe-events-single-event-description.tribe-events-content { border-left: 3px solid var(--accent) !important; }
.tribe-events-single-event-description.tribe-events-content p:first-of-type::before { color: var(--accent) !important; }
.tribe-events-meta-group-details,
.tribe-events-meta-group-venue,
.tribe-events-meta-group-gmap { border-left: 3px solid var(--accent) !important; }
.tribe-events-meta-group-details .tribe-events-single-section-title,
.tribe-events-meta-group-venue .tribe-events-single-section-title { color: #FFFFFF !important; }
#tribe-events-footer::before,
.tribe-events-single-section.tribe-events-event-meta::before {
    background: var(--gradient-fire) !important;
    height: 3px !important;
}

/* Meta-group borders tokenized; the colored left rail survives hover. */
.tribe-events-meta-group {
    border-top-color: var(--obsidian-border) !important;
    border-right-color: var(--obsidian-border) !important;
    border-bottom-color: var(--obsidian-border) !important;
}
.tribe-events-meta-group:hover {
    border-top-color: var(--obsidian-border-hover) !important;
    border-right-color: var(--obsidian-border-hover) !important;
    border-bottom-color: var(--obsidian-border-hover) !important;
}
.tribe-events-meta-item { border-bottom: 1px solid var(--obsidian-border) !important; }
.tribe-events-meta-item:last-child { border-bottom: none !important; }

/* Month grid: today marker red, event pills pink/fire, links red. */
.tribe-events-calendar-month__day--current,
html body .tribe-events-calendar-month__day--current { background: rgba(237, 28, 36, .14) !important; }
.tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date-daynum {
    color: #ED1C24 !important;
    -webkit-text-fill-color: #ED1C24 !important;
}
.tribe-events-calendar-month__calendar-event,
.tribe-events-calendar-month__calendar-event-title,
.tribe-events-calendar-month__calendar-event-title-link,
html body .tribe-events-calendar-month__calendar-event,
html body .tribe-events-calendar-month__calendar-event-title,
html body .tribe-events-calendar-month__calendar-event-title-link {
    background: linear-gradient(135deg, rgba(255, 45, 146, .22) 0%, rgba(255, 107, 53, .14) 100%) !important;
    border-radius: var(--radius-sm) !important;
}
.tribe-events-calendar-month__calendar-event:hover,
.tribe-events-calendar-month__calendar-event-title-link:hover {
    background: linear-gradient(135deg, rgba(255, 45, 146, .35) 0%, rgba(255, 107, 53, .25) 100%) !important;
}
.tribe-events-calendar-month__more-events,
.tribe-events-calendar-month__more-events-link,
html body .tribe-events-calendar-month__more-events,
html body .tribe-events-calendar-month__more-events-link {
    color: var(--accent) !important;
    -webkit-text-fill-color: var(--accent) !important;
}
.tribe-events-calendar-month__more-events-link:hover {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}
html body .tribe-events-calendar-month__day-date-link:hover,
html body .tribe-events-calendar-month__day-date-link:hover .tribe-events-calendar-month__day-date-daynum {
    color: var(--accent) !important;
    -webkit-text-fill-color: var(--accent) !important;
}

/* Event-to-event pagination: neutral cards, red accents. */
.tribe-events-nav-previous a,
.tribe-events-nav-next a {
    border-color: var(--obsidian-border-hover) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: 5px 5px 0 rgba(0, 0, 0, .45), 0 4px 16px rgba(0, 0, 0, .4) !important;
}
.tribe-events-nav-previous a:hover,
.tribe-events-nav-next a:hover {
    transform: none !important;
    border-color: rgba(237, 28, 36, .45) !important;
    box-shadow: 8px 8px 0 rgba(237, 28, 36, .35), 0 8px 28px rgba(0, 0, 0, .4) !important;
}
.tribe-events-nav-previous a span,
.tribe-events-nav-next a span { color: var(--accent) !important; }
@media (max-width: 768px) {
    .tribe-events-nav-previous a,
    .tribe-events-nav-next a {
        box-shadow: 4px 4px 0 rgba(0, 0, 0, .45), 0 3px 12px rgba(0, 0, 0, .4) !important;
    }
}

/* Add to Calendar: the page's primary action goes brand red. */
.djvlad-calendar-link,
html body .djvlad-calendar-link {
    background: linear-gradient(180deg, #ED1C24 0, #C4161D 100%) !important;
    box-shadow: 6px 6px 0 rgba(237, 28, 36, .4), 0 4px 16px rgba(237, 28, 36, .3) !important;
}
.djvlad-calendar-link:hover,
html body .djvlad-calendar-link:hover {
    background: linear-gradient(180deg, #F5383F 0, #D5171F 100%) !important;
    transform: none !important;
    box-shadow: 8px 8px 0 rgba(237, 28, 36, .3), 0 8px 24px rgba(237, 28, 36, .4) !important;
    color: #fff !important;
}

/* Subscribe/export: neutral rest, red interaction. */
.tribe-common-c-btn-border,
.tribe-events-c-subscribe-dropdown__button,
.tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button {
    border-color: var(--obsidian-border-hover) !important;
    box-shadow: 4px 4px 0 rgba(0, 0, 0, .45), 0 4px 12px rgba(0, 0, 0, .4) !important;
}
.tribe-common-c-btn-border:hover,
.tribe-events-c-subscribe-dropdown__button:hover {
    border-color: rgba(237, 28, 36, .4) !important;
    color: #ED1C24 !important;
    transform: none !important;
    box-shadow: 6px 6px 0 rgba(237, 28, 36, .35), 0 8px 24px rgba(0, 0, 0, .4) !important;
}
.tribe-events-c-subscribe-dropdown__button:hover .tribe-events-c-subscribe-dropdown__button-icon,
.tribe-events-c-subscribe-dropdown__button:hover .tribe-events-c-subscribe-dropdown__export-icon,
.tribe-events-c-subscribe-dropdown__button:hover svg {
    fill: #ED1C24 !important;
    stroke: #ED1C24 !important;
}
.tribe-events-c-subscribe-dropdown__content {
    border-color: var(--obsidian-border-hover) !important;
    box-shadow: var(--shadow-xl) !important;
}
.tribe-events-c-subscribe-dropdown__list-item-link {
    border-radius: var(--radius-sm) !important;
}
.tribe-events-c-subscribe-dropdown__list-item-link:hover {
    background: rgba(237, 28, 36, .12) !important;
    color: #ED1C24 !important;
    transform: none !important;
}

/* ---------- 4. GEOMETRY & RHYTHM ---------- */

/* Card inner pieces meet the 24px row clip exactly (was 20px = dark slivers). */
@media (min-width: 769px) {
    .tribe-common .tribe-events-calendar-list__event-date-tag,
    .tribe-events .tribe-events-calendar-list__event-date-tag,
    html body .tribe-events-calendar-list__event-date-tag {
        border-radius: var(--radius-xl) 0 0 var(--radius-xl) !important;
    }
    .tribe-common .tribe-events-calendar-list__event,
    html body .tribe-events-calendar-list__event {
        border-radius: 0 var(--radius-xl) var(--radius-xl) 0 !important;
    }
    .tribe-common .tribe-events-calendar-list__event-featured-image-wrapper,
    html body .tribe-events-calendar-list__event-featured-image-wrapper {
        border-radius: 0 var(--radius-xl) var(--radius-xl) 0 !important;
    }
}

/* Month heading hugs its own cards: below-gap = card rhythm; big break stays above. */
.tribe-events-calendar-list__month-separator {
    margin: var(--space-20) 0 var(--space-8) 0 !important;
}

/* Rail padding onto the spacing scale; rails align at one width down the page. */
@media (min-width: 769px) {
    .tribe-common .tribe-events-calendar-list__event-date-tag,
    .tribe-events .tribe-events-calendar-list__event-date-tag,
    html body .tribe-events-calendar-list__event-date-tag,
    html body .tribe-events-calendar-latest-past__event-date-tag {
        padding: var(--space-5) var(--space-4) !important;
    }
    .tribe-common .tribe-events-calendar-list__event-date-tag,
    .tribe-events .tribe-events-calendar-list__event-date-tag,
    html body .tribe-events-calendar-list__event-date-tag {
        min-width: 90px !important;
    }
    .tribe-common .tribe-events-calendar-latest-past__event-row,
    .tribe-events .tribe-events-calendar-latest-past__event-row,
    html body .tribe-events-calendar-latest-past__event-row {
        margin-bottom: var(--space-8) !important;
    }
}

/* Month-view bar buttons match list view geometry. */
@media (min-width: 769px) {
    .tribe-events-calendar-month .tribe-events-c-nav__prev,
    .tribe-events-calendar-month .tribe-events-c-nav__next,
    .tribe-events-view--month .tribe-events-c-nav__prev,
    .tribe-events-view--month .tribe-events-c-nav__next,
    html body .tribe-events-view--month .tribe-events-c-nav__prev,
    html body .tribe-events-view--month .tribe-events-c-nav__next {
        border-radius: var(--radius-md) !important;
        padding: 12px 20px !important;
    }
    .tribe-events-calendar-month .tribe-events-c-top-bar__today-button,
    .tribe-events-view--month .tribe-events-c-top-bar__today-button,
    html body .tribe-events-view--month .tribe-events-c-top-bar__today-button,
    .tribe-events-c-top-bar__today-button[data-js="tribe-events-view-link"] {
        border-radius: var(--radius-md) !important;
        padding: 12px 24px !important;
    }
}

/* Mobile: both lists share one interior rhythm; one gap, one compact radius. */
@media (max-width: 768px) {
    html body .tribe-events-calendar-list__event-details { padding: 12px !important; }
    html body .tribe-events-calendar-list__event-date-tag,
    html body .tribe-events-calendar-latest-past__event-date-tag { padding: 12px 8px !important; }
    .tribe-events-c-nav,
    .tribe-events-header__top-bar,
    .tribe-events-c-top-bar { gap: 8px !important; }
    .tribe-common-c-btn-border,
    .tribe-events-c-subscribe-dropdown__button { border-radius: var(--radius-md) !important; }
}
@media (max-width: 400px) {
    .tribe-events-c-nav__next,
    .tribe-events-c-nav__prev,
    .tribe-events-c-top-bar__today-button { border-radius: 8px !important; }
}

/* Invisible hit-area extensions to ~44-46px; zero visual change. */
@media (max-width: 775px) {
    .tribe-events .tribe-events-c-events-bar__search-button,
    .tribe-events .tribe-events-c-view-selector__button { position: relative !important; }
    .tribe-events .tribe-events-c-events-bar__search-button::after,
    .tribe-events .tribe-events-c-view-selector__button::after {
        content: '' !important;
        display: block !important;
        position: absolute !important;
        inset: -4px !important;
        background: transparent !important;
        border: none !important;
    }
}
@media (max-width: 768px) {
    .tribe-events-c-nav__next,
    .tribe-events-c-nav__prev,
    .tribe-events-c-top-bar__today-button { position: relative !important; }
    .tribe-events-c-nav__next::before,
    .tribe-events-c-nav__prev::before,
    .tribe-events-c-top-bar__today-button::before {
        content: '' !important;
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        top: -6px !important;
        bottom: -6px !important;
    }
}

/* ---------- 5. INTERACTION STATES ---------- */

/* No hover slide-up lifts anywhere (brand rule); shadow growth carries hover.
   :not(:active) keeps press transforms free to act. */
html body .tribe-events-c-nav__prev:hover:not(:active),
html body .tribe-events-c-nav__next:hover:not(:active),
html body .tribe-events-c-top-bar__today-button:hover:not(:active),
html body .tribe-events-calendar-month .tribe-events-c-top-bar__today-button:hover:not(:active),
html body .tribe-events-view--month .tribe-events-c-top-bar__today-button:hover:not(:active),
html body .tribe-common-c-btn-border:hover:not(:active),
html body .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:hover:not(:active),
html body .tribe-events-schedule > div:not(.djvlad-subscribe-btn):hover:not(:active),
html body .djvlad-calendar-link:hover:not(:active),
html body .tribe-events-nav-previous a:hover:not(:active),
html body .tribe-events-nav-next a:hover:not(:active) {
    transform: none !important;
}

/* Cards: swap the lift for a pure scale pop; identity shadows untouched. */
html body .tribe-events-calendar-list__event-row:hover:not(:active),
html body .tribe-events-calendar-latest-past__event-row:hover:not(:active) {
    transform: scale(1.012) !important;
}
@media (prefers-reduced-motion: reduce) {
    html body .tribe-events-calendar-list__event-row:hover:not(:active),
    html body .tribe-events-calendar-latest-past__event-row:hover:not(:active) {
        transform: none !important;
    }
}

/* FIND EVENTS hover: offset drop shadow, not a glow (scale stays). */
.tribe-events .tribe-events-c-search__button:hover,
html body .tribe-events-c-search__button:hover {
    box-shadow: 4px 4px 0 rgba(237, 28, 36, .35), 0 4px 12px rgba(0, 0, 0, .4) !important;
}

/* Keyboard ring wraps the CARD when its title link holds focus. */
html body .tribe-events-calendar-list__event-row:has(.tribe-events-calendar-list__event-title-link:focus-visible),
html body .tribe-events-calendar-latest-past__event-row:has(.tribe-events-calendar-latest-past__event-title-link:focus-visible) {
    outline: 2px solid var(--accent) !important;
    outline-offset: 4px !important;
}
html body .tribe-events-calendar-list__event-title-link:focus-visible,
html body .tribe-events-calendar-latest-past__event-title-link:focus-visible {
    outline: none !important;
}

/* Inside overflow:hidden panels the ring draws INSET so it can't be clipped. */
.tribe-events .tribe-events-c-view-selector__list-item-link:focus-visible,
.tribe-events-c-subscribe-dropdown__list-item-link:focus-visible {
    outline: none !important;
    box-shadow: inset 0 0 0 2px var(--accent) !important;
}

/* White ring separates focus from the red FIND EVENTS fill; the input's ring
   is the container's :focus-within accent border. */
.tribe-events .tribe-events-c-search__button:focus-visible {
    outline: 2px solid #FFFFFF !important;
    outline-offset: 2px !important;
}
.tribe-events .tribe-events-c-search__input:focus,
.tribe-events .tribe-events-c-search__input:focus-visible {
    outline: none !important;
}

/* Venue links: their own feedback inside the card. */
html body .tribe-events-calendar-list__event-venue a:hover,
html body .tribe-events-calendar-list__event-venue-title a:hover,
html body .tribe-events-calendar-latest-past__event-venue a:hover,
html body .tribe-events-calendar-latest-past__event-venue-title a:hover,
html body .tribe-events-calendar-list__event-venue a:focus-visible,
html body .tribe-events-calendar-latest-past__event-venue a:focus-visible {
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    text-decoration-thickness: 1px !important;
}

/* ---------- 6. MOTION ---------- */

/* Explicit transition properties + snappy timing (no more transition: all). */
html body .tribe-events-c-nav__prev,
html body .tribe-events-c-nav__next,
html body .tribe-events .tribe-events-c-nav__prev,
html body .tribe-events .tribe-events-c-nav__next,
html body .tribe-events-view--month .tribe-events-c-nav__prev,
html body .tribe-events-view--month .tribe-events-c-nav__next,
html body .tribe-events-c-nav__list-item a,
html body .tribe-events-c-nav__list-item button,
html body .tribe-events-c-top-bar__today-button,
html body .tribe-events .tribe-events-c-top-bar__today-button,
html body .tribe-events-view--month .tribe-events-c-top-bar__today-button,
html body .tribe-events .tribe-events-c-search__button,
html body .tribe-common-c-btn-border,
html body .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button,
html body .tribe-events-nav-previous a,
html body .tribe-events-nav-next a,
html body .djvlad-calendar-link,
html body .tribe-events-schedule > div:not(.djvlad-subscribe-btn) {
    transition-property: transform, box-shadow, border-color, color, background-color !important;
    transition-duration: .14s !important;
    transition-timing-function: cubic-bezier(.23, 1, .32, 1) !important;
}
html body .tribe-events .tribe-events-c-view-selector__button,
html body .tribe-events .tribe-events-c-view-selector__list-item-link,
html body .tribe-events .tribe-events-c-events-bar__search-button,
html body .tribe-events-c-subscribe-dropdown__list-item-link,
html body .tribe-events-meta-value a,
html body .tribe-events-address a,
html body .tribe-events-gmap,
html body .tribe-events-event-categories a,
html body .tribe-events-single .tribe-events-back a,
html body .tribe-events-calendar-latest-past__event-title-link {
    transition-property: transform, color, background-color, border-color !important;
    transition-duration: .15s !important;
    transition-timing-function: cubic-bezier(.23, 1, .32, 1) !important;
}
html body .tribe-events .tribe-events-calendar-list__event-title-link,
html body .tribe-common .tribe-events-calendar-list__event-title-link {
    transition-property: color, text-shadow !important;
    transition-duration: .15s !important;
    transition-timing-function: cubic-bezier(.23, 1, .32, 1) !important;
}
html body .tribe-events-c-search,
html body .tribe-events .tribe-events-c-search__input-control {
    transition-property: border-color, box-shadow !important;
    transition-duration: .15s !important;
    transition-timing-function: cubic-bezier(.23, 1, .32, 1) !important;
}
html body .tribe-events-meta-group {
    transition-property: background-color, border-color !important;
    transition-duration: .2s !important;
    transition-timing-function: cubic-bezier(.23, 1, .32, 1) !important;
}
html body .tribe-events-c-nav__prev svg,
html body .tribe-events-c-nav__next svg,
html body .tribe-events-c-subscribe-dropdown svg,
html body .tribe-events-c-subscribe-dropdown__button-icon,
html body .tribe-events-c-subscribe-dropdown__export-icon {
    transition-property: fill, stroke !important;
    transition-duration: .15s !important;
    transition-timing-function: cubic-bezier(.23, 1, .32, 1) !important;
}

/* Cards: 220ms explicit transform/box-shadow (was 400ms spring on `all`). */
html body .tribe-events .tribe-events-calendar-list__event-row,
html body .tribe-common .tribe-events-calendar-list__event-row,
html body li.tribe-events-calendar-list__event-row,
html body .tribe-events .tribe-events-calendar-latest-past__event-row,
html body .tribe-common .tribe-events-calendar-latest-past__event-row {
    transition-property: transform, box-shadow !important;
    transition-duration: .22s !important;
    transition-timing-function: cubic-bezier(.23, 1, .32, 1) !important;
}

/* Month view micro-interactions: explicit, 150ms. */
html body .tribe-events-calendar-month__day {
    transition-property: background-color !important;
    transition-duration: .15s !important;
    transition-timing-function: cubic-bezier(.23, 1, .32, 1) !important;
}
html body .tribe-events-calendar-month__calendar-event,
html body .tribe-events-calendar-month__calendar-event-title-link {
    transition-property: transform, color !important;
    transition-duration: .15s !important;
    transition-timing-function: cubic-bezier(.23, 1, .32, 1) !important;
}

/* Date-rail shine sweep rides the compositor (was animating `left`). */
html body .tribe-events-calendar-list__event-date-tag::before {
    left: 0 !important;
    transform: translateX(-100%) !important;
    transition: transform .5s cubic-bezier(.77, 0, .175, 1) !important;
}
html body .tribe-events-calendar-list__event-row:hover .tribe-events-calendar-list__event-date-tag::before {
    left: 0 !important;
    transform: translateX(100%) !important;
}

/* Dead motion stripped: permanently-invisible legacy card layers. */
html body .tribe-events-calendar-list__event::before,
html body .tribe-events-calendar-list__event::after {
    content: none !important;
    transition: none !important;
}
html body .tribe-events .tribe-events-calendar-list__event,
html body .tribe-common .tribe-events-calendar-list__event {
    transition: none !important;
    will-change: auto !important;
}
html body .tribe-events-calendar-list__event-date-tag {
    transition: none !important;
}

/* Page-load entrance: same choreography, less syrup (last keyframes win). */
@keyframes fadeSlideUp {
    from { opacity: 0; transform: translateY(12px) }
    to   { opacity: 1; transform: translateY(0) }
}
@keyframes fadeSlideIn {
    from { opacity: 0; transform: translateX(-10px) }
    to   { opacity: 1; transform: translateX(0) }
}
html body .tribe-events-calendar-list__event { animation-duration: .45s !important; }
html body .tribe-events-calendar-list__month-separator { animation-duration: .4s !important; }

/* Flyer breathes 2% on card hover, contained by the wrapper clip.
   Mouse-driven, motion-OK devices only. */
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
    .tribe-common .tribe-events-calendar-latest-past__event-featured-image-wrapper img,
    .tribe-common .tribe-events-calendar-list__event-featured-image-wrapper img,
    html body .tribe-events-calendar-latest-past__event-featured-image img,
    html body .tribe-events-calendar-latest-past__event-featured-image-wrapper img,
    html body .tribe-events-calendar-list__event-featured-image img,
    html body .tribe-events-calendar-list__event-featured-image-wrapper img {
        transition: transform .3s ease-out !important;
        transform: translateZ(0) !important;
        backface-visibility: hidden !important;
    }
    html body .tribe-events-calendar-latest-past__event-row:hover .tribe-events-calendar-latest-past__event-featured-image img,
    html body .tribe-events-calendar-latest-past__event-row:hover .tribe-events-calendar-latest-past__event-featured-image-wrapper img,
    html body .tribe-events-calendar-list__event-row:hover .tribe-events-calendar-list__event-featured-image img,
    html body .tribe-events-calendar-list__event-row:hover .tribe-events-calendar-list__event-featured-image-wrapper img {
        transform: translateZ(0) scale(1.02) !important;
    }
}

/* ---------- 7. PRESS FEEDBACK ---------- */

/* Bar buttons travel 2px into their own hard shadow, 100ms. */
html body .tribe-events .tribe-events-c-nav__prev:active,
html body .tribe-events .tribe-events-c-nav__next:active,
html body .tribe-events .tribe-events-c-top-bar__today-button:active {
    transform: translate(2px, 2px) scale(.97) !important;
    transition-duration: .1s !important;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, .45), 0 2px 6px rgba(0, 0, 0, .4) !important;
}

/* Generic press on the remaining pressables. */
html body .tribe-events .tribe-events-c-search__button:active,
html body .tribe-events .tribe-events-c-view-selector__list-item-link:active,
html body .tribe-events-nav-previous a:active,
html body .tribe-events-nav-next a:active,
html body .djvlad-calendar-link:active,
html body .tribe-events-single .tribe-events-back a:active {
    transform: scale(.97) !important;
    transition-duration: .12s !important;
}

/* Subscribe pill: press into its shadow, red-tinted. */
html body .tribe-common-c-btn-border:active,
html body .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:active,
html body .tribe-events-c-subscribe-dropdown__list-item-link:active {
    transform: translate(2px, 2px) scale(.98) !important;
    transition-duration: .1s !important;
    box-shadow: 2px 2px 0 rgba(237, 28, 36, .3), 0 2px 6px rgba(0, 0, 0, .4) !important;
}

/* "Upcoming" trigger press. */
html body .tribe-events-c-top-bar__datepicker-button:active {
    transform: scale(.98) !important;
    transition: transform .1s ease !important;
}

/* View-dropdown rows + tabs press-fill. */
.tribe-events .tribe-events-c-view-selector__list-item-link:active {
    background: var(--obsidian-elevated) !important;
}

/* Phone icon buttons. */
@media (max-width: 775px) {
    .tribe-events .tribe-events-c-events-bar__search-button:active,
    .tribe-events .tribe-events-c-view-selector__button:active {
        transform: scale(.94) !important;
        transition: transform .1s ease !important;
        background: var(--obsidian-surface) !important;
    }
}

/* Datepicker press feedback (fills, not transforms - table cells). */
.tribe-events .datepicker table tr td.day:active,
.datepicker.dropdown-menu table tr td.day:active,
.tribe-events .datepicker table tr td span:active,
.datepicker.dropdown-menu table tr td span:active,
.tribe-events .datepicker .datepicker-switch:active,
.datepicker.dropdown-menu .datepicker-switch:active,
.tribe-events .datepicker .prev:active,
.tribe-events .datepicker .next:active,
.datepicker.dropdown-menu .prev:active,
.datepicker.dropdown-menu .next:active {
    background: var(--accent-subtle) !important;
    color: #FFFFFF !important;
}
.tribe-events .datepicker table tr td.disabled:active,
.datepicker.dropdown-menu table tr td.disabled:active {
    background: transparent !important;
    color: rgba(255, 255, 255, 0.16) !important;
}

/* Touch devices: no sticky hover motion; presses still compress. */
@media (hover: none), (pointer: coarse) {
    html body .tribe-events-calendar-list__event-row.tribe-events-calendar-list__event-row:hover,
    html body .tribe-events-calendar-latest-past__event-row.tribe-events-calendar-latest-past__event-row:hover {
        transform: none !important;
    }
    .tribe-events-c-subscribe-dropdown__list-item-link:hover,
    .tribe-events-calendar-month__calendar-event:hover,
    .tribe-events-calendar-month__calendar-event-title-link:hover,
    .tribe-events-back a:hover {
        transform: none !important;
    }
}
html body .tribe-events-calendar-list__event-row.tribe-events-calendar-list__event-row:active,
html body .tribe-events-calendar-latest-past__event-row.tribe-events-calendar-latest-past__event-row:active {
    transform: scale(.985) !important;
    transition-duration: .12s !important;
}

/* ---------- 8. POPUP ENTRANCES ---------- */

/* 180ms strong ease-out, scaling from the trigger corner. @starting-style
   fires the transition when display flips from none; older engines keep
   today's instant appearance. Exits stay instant (display set directly). */
.tribe-events .datepicker,
.datepicker.dropdown-menu {
    transform-origin: top left !important;
    transition: opacity .18s cubic-bezier(.23, 1, .32, 1), transform .18s cubic-bezier(.23, 1, .32, 1) !important;
}
.tribe-events-c-subscribe-dropdown__content {
    transform-origin: top left !important;
    transition: opacity .18s cubic-bezier(.23, 1, .32, 1), transform .18s cubic-bezier(.23, 1, .32, 1) !important;
}
@starting-style {
    .tribe-events .datepicker,
    .datepicker.dropdown-menu,
    .tribe-events-c-subscribe-dropdown__content {
        opacity: 0;
        transform: translateY(-6px) scale(.97);
    }
}
@media (max-width: 775px) {
    .tribe-events .tribe-events-c-view-selector__content,
    .tribe-events .tribe-events-c-events-bar__search-container {
        transform-origin: top right !important;
        transition: opacity .18s cubic-bezier(.23, 1, .32, 1), transform .18s cubic-bezier(.23, 1, .32, 1) !important;
    }
    @starting-style {
        .tribe-events .tribe-events-c-view-selector__content,
        .tribe-events .tribe-events-c-events-bar__search-container {
            opacity: 0;
            transform: translateY(-6px) scale(.96);
        }
    }
}

/* ---------- 9. REDUCED MOTION: COMPLETE GATE ---------- */

@media (prefers-reduced-motion: reduce) {
    *, ::before, ::after {
        animation-duration: 0s !important;
        animation-delay: 0s !important;
        transition-duration: 0s !important;
        transition-delay: 0s !important;
    }
    html body .tribe-events-calendar-list__event,
    html body .tribe-events-calendar-list__month-separator {
        animation: none !important;
    }
    .tribe-events .datepicker,
    .datepicker.dropdown-menu,
    .tribe-events-c-subscribe-dropdown__content,
    .tribe-events .tribe-events-c-view-selector__content,
    .tribe-events .tribe-events-c-events-bar__search-container {
        transition: none !important;
        transform: none !important;
    }
}

/* ============================================================
   CONTROL-ROW COHERENCE (v392)
   1) "Upcoming" becomes a pill matching TODAY; the whole row
      shares one 44px height and centerline.
   2) LIST/MONTH/DAY becomes a segmented control: recessed
      track, raised active chip, hardware drop shadow - no more
      flat black slab.
   3) Mobile search panel: the wrapper's rogue black box removed;
      one input field + one full-width button, no box-in-a-box.
   ============================================================ */

/* --- 1. "Upcoming" pill + one aligned control row --- */

html body .tribe-events-c-top-bar__datepicker-button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    background: var(--obsidian-deep) !important;
    border: 1px solid var(--obsidian-border-hover) !important;
    border-radius: var(--radius-md) !important;
    padding: 0 20px !important;
    height: 44px !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    box-shadow: 4px 4px 0 rgba(0, 0, 0, .45), 0 4px 12px rgba(0, 0, 0, .4) !important;
    transition-property: transform, box-shadow, border-color, color !important;
    transition-duration: .14s !important;
    transition-timing-function: cubic-bezier(.23, 1, .32, 1) !important;
}
html body .tribe-events-c-top-bar__datepicker-button:hover {
    border-color: rgba(237, 28, 36, .4) !important;
    box-shadow: 6px 6px 0 rgba(237, 28, 36, .35), 0 8px 24px rgba(0, 0, 0, .4) !important;
}
html body .tribe-events-c-top-bar__datepicker-button:active {
    transform: translate(2px, 2px) scale(.98) !important;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, .45), 0 2px 6px rgba(0, 0, 0, .4) !important;
}

/* One height, one centerline for the whole row (tablet/desktop). */
@media (min-width: 768px) {
    .tribe-common--breakpoint-medium .tribe-events-c-top-bar {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
    }
    html body .tribe-events-c-nav__prev,
    html body .tribe-events-c-nav__next,
    html body .tribe-events-c-top-bar__today-button,
    .tribe-events .tribe-events-c-top-bar__today-button,
    .tribe-events-calendar-month .tribe-events-c-top-bar__today-button,
    .tribe-events-view--month .tribe-events-c-top-bar__today-button {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        height: 44px !important;
        padding: 0 20px !important;
    }
    html body .tribe-events-c-top-bar__today-button,
    .tribe-events .tribe-events-c-top-bar__today-button {
        padding: 0 24px !important;
    }
}

/* Mobile: the pill shrinks to the 38px control row and hugs its text. */
@media (max-width: 775px) {
    html body .tribe-events-c-top-bar__datepicker-button {
        height: 38px !important;
        padding: 0 14px !important;
        border-radius: 8px !important;
        font-size: .9375rem !important;
        gap: 8px !important;
        width: auto !important;
        box-shadow: 3px 3px 0 rgba(0, 0, 0, .45), 0 3px 8px rgba(0, 0, 0, .4) !important;
    }
}

/* --- 2. LIST / MONTH / DAY: segmented control on a hardware slab --- */

@media (min-width: 768px) {
    /* Both bar panels share the deep face + offset drop shadow. */
    .tribe-common--breakpoint-medium .tribe-events-c-search,
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__content {
        background: var(--obsidian-deep) !important;
        border: 1px solid var(--obsidian-border-hover) !important;
        box-shadow: 4px 4px 0 rgba(0, 0, 0, .45), 0 4px 12px rgba(0, 0, 0, .4) !important;
    }
    /* Recessed track... */
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__content {
        padding: 6px !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list {
        gap: 4px !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item-link {
        border-radius: 8px !important;
        padding: 0 22px !important;
        color: var(--text-tertiary) !important;
        border: 1px solid transparent !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item-link:hover {
        background: var(--obsidian-surface) !important;
        color: var(--text-secondary) !important;
    }
    /* ...raised active chip (replaces the dash marker). */
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link {
        background: var(--obsidian-elevated) !important;
        border: 1px solid var(--obsidian-border-hover) !important;
        color: #FFFFFF !important;
        box-shadow: 2px 2px 0 rgba(0, 0, 0, .4) !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link::after {
        display: none !important;
    }
}

/* --- 3. Mobile search panel: one field, one button, no box-in-a-box --- */

@media (max-width: 775px) {
    /* The intermediate wrapper carried the wildcard obsidian-black box. */
    .tribe-events .tribe-events-c-events-bar__search {
        background: transparent !important;
        background-color: transparent !important;
        border: none !important;
        padding: 0 !important;
        width: 100% !important;
    }
    /* The form loses its own second box... */
    .tribe-events .tribe-events-c-search {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        padding: 0 !important;
        display: block !important;
    }
    /* ...the input field and the button carry the UI. */
    .tribe-events .tribe-events-c-search__input-control {
        background: var(--obsidian-void) !important;
        border: 1px solid var(--obsidian-border-hover) !important;
        border-radius: 8px !important;
    }
    .tribe-events .tribe-events-c-search__input {
        padding: 12px 14px 12px 42px !important;
    }
    .tribe-events .tribe-events-c-search__button {
        width: 100% !important;
        margin: 10px 0 0 !important;
        border-radius: 8px !important;
        padding: 13px 16px !important;
    }
}

/* ============================================================
   CONTROL-ROW COHERENCE, ROUND 2 (v393)
   Cascade repairs after live measurement: the pill background
   and slab shadow lost to higher-specificity legacy rules, the
   datepicker WRAPPER (68px) was what flex centered (button rode
   12px high), and the top arrows are bare 24px carets.
   ============================================================ */

/* "Upcoming" pill face (legacy `.tribe-events .` rule was winning). */
html body .tribe-events .tribe-events-c-top-bar__datepicker-button,
html body .tribe-common .tribe-events-c-top-bar__datepicker-button {
    background: var(--obsidian-deep) !important;
}

/* The wrapper collapses to the button's height so the row truly centers. */
html body .tribe-events-c-top-bar__datepicker {
    display: flex !important;
    align-items: center !important;
    height: 44px !important;
}
@media (max-width: 775px) {
    html body .tribe-events-c-top-bar__datepicker { height: 38px !important; }
}

/* Tab slab shadow at (0,3,0)+ to beat the v1 repair block. */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-c-view-selector__content,
html body .tribe-common--breakpoint-medium .tribe-events-c-view-selector__content {
    background: var(--obsidian-deep) !important;
    border: 1px solid var(--obsidian-border-hover) !important;
    box-shadow: 4px 4px 0 rgba(0, 0, 0, .45), 0 4px 12px rgba(0, 0, 0, .4) !important;
}

/* Top arrows: 44px hardware chips matching the pill row (they are
   .tribe-events-c-top-bar__nav-link, a different class from the bottom
   pagination arrows). */
@media (min-width: 768px) {
    html body .tribe-events-c-top-bar__nav {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }
    html body .tribe-events-c-top-bar__nav-link {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 44px !important;
        height: 44px !important;
        background: var(--obsidian-deep) !important;
        border: 1px solid var(--obsidian-border-hover) !important;
        border-radius: var(--radius-md) !important;
        box-shadow: 4px 4px 0 rgba(0, 0, 0, .45), 0 4px 12px rgba(0, 0, 0, .4) !important;
        transition-property: transform, box-shadow, border-color !important;
        transition-duration: .14s !important;
        transition-timing-function: cubic-bezier(.23, 1, .32, 1) !important;
    }
    html body .tribe-events-c-top-bar__nav-link:hover:not([disabled]) {
        border-color: rgba(237, 28, 36, .4) !important;
        box-shadow: 6px 6px 0 rgba(237, 28, 36, .35), 0 8px 24px rgba(0, 0, 0, .4) !important;
    }
    html body .tribe-events-c-top-bar__nav-link:hover:not([disabled]) svg,
    html body .tribe-events-c-top-bar__nav-link:hover:not([disabled]) svg path {
        fill: #ED1C24 !important;
    }
    html body .tribe-events-c-top-bar__nav-link:active:not([disabled]) {
        transform: translate(2px, 2px) !important;
        transition-duration: .1s !important;
        box-shadow: 2px 2px 0 rgba(0, 0, 0, .45), 0 2px 6px rgba(0, 0, 0, .4) !important;
    }
    html body .tribe-events-c-top-bar__nav-link[disabled] {
        opacity: .35 !important;
        box-shadow: 3px 3px 0 rgba(255, 255, 255, .05) !important;
    }
    html body .tribe-events-c-top-bar__nav-link svg,
    html body .tribe-events-c-top-bar__nav-link svg path {
        fill: #FFFFFF !important;
        transition: fill .15s cubic-bezier(.23, 1, .32, 1) !important;
    }
}

/* v394: the pill's legacy margin-bottom:24px shifted it 12px above the row
   centerline inside its flex-centered wrapper. */
html body .tribe-events .tribe-events-c-top-bar__datepicker-button,
html body .tribe-common .tribe-events-c-top-bar__datepicker-button {
    margin: 0 !important;
}

/* ============================================================
   MONTH VIEW REBUILD (v395)
   The grid was a floating spreadsheet: TEC's light-theme gray
   hairlines, full-white adjacent-month numerals, a muddy full-
   cell today wash, and the event chip painted THREE nested
   boxes (container + title + link all carried the gradient).
   ============================================================ */

/* --- The grid becomes a hardware faceplate --- */
html body .tribe-events-calendar-month {
    background: var(--obsidian-void) !important;
    border: 1px solid var(--obsidian-border-hover) !important;
    border-radius: var(--radius-md) !important;
    overflow: hidden !important;
    box-shadow: 4px 4px 0 rgba(0, 0, 0, .45), 0 4px 12px rgba(0, 0, 0, .4) !important;
}

/* Dark hairlines everywhere (TEC ships light-gray #e4e4e4). */
html body .tribe-events-calendar-month__day,
html body .tribe-events-calendar-month__header-column,
html body .tribe-events-calendar-month__week,
html body .tribe-events-calendar-month__body {
    border-color: var(--obsidian-border) !important;
}

/* Weekday header: a quiet labeled rail on a deeper face. */
html body .tribe-events-calendar-month__header-column {
    background: var(--obsidian-deep) !important;
}
html body .tribe-events-calendar-month__header-column-title {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: var(--text-tertiary) !important;
    padding: 12px 8px !important;
    text-align: center !important;
}

/* Day cells: tighter, padded, numerals with real hierarchy. */
@media (min-width: 768px) {
    html body .tribe-events-calendar-month__day {
        min-height: 92px !important;
        padding: 6px !important;
    }
    /* No decorative pseudo markers on desktop cells (stray colored edges). */
    html body .tribe-events-calendar-month__day::before,
    html body .tribe-events-calendar-month__day::after {
        display: none !important;
    }
}
html body .tribe-events-calendar-month__day-date {
    font-size: .875rem !important;
    font-weight: 600 !important;
}

/* Adjacent-month days recede. */
html body .tribe-events-calendar-month__day--past-month,
html body .tribe-events-calendar-month__day--next-month {
    background: rgba(0, 0, 0, .25) !important;
}
html body .tribe-events-calendar-month__day--past-month .tribe-events-calendar-month__day-date,
html body .tribe-events-calendar-month__day--next-month .tribe-events-calendar-month__day-date,
html body .tribe-events-calendar-month__day--past-month .tribe-events-calendar-month__day-date-daynum,
html body .tribe-events-calendar-month__day--next-month .tribe-events-calendar-month__day-date-daynum {
    color: rgba(255, 255, 255, .22) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, .22) !important;
}

/* Today: crisp red numeral chip instead of the muddy cell wash. */
html body .tribe-events-calendar-month__day--current {
    background: transparent !important;
}
html body .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date-daynum {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 27px !important;
    height: 27px !important;
    padding: 0 7px !important;
    background: var(--accent) !important;
    border-radius: 8px !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, .4) !important;
    font-weight: 700 !important;
}

/* --- Event chip: ONE box. Title and link are text, not boxes. --- */
html body .tribe-events-calendar-month__calendar-event {
    background: linear-gradient(135deg, rgba(255, 45, 146, .16) 0%, rgba(255, 107, 53, .08) 100%) !important;
    border-left: 3px solid #FF2D92 !important;
    border-radius: var(--radius-sm) !important;
    padding: 7px 9px !important;
}
html body .tribe-events-calendar-month__calendar-event:hover {
    background: linear-gradient(135deg, rgba(255, 45, 146, .28) 0%, rgba(255, 107, 53, .16) 100%) !important;
}
html body .tribe-events-calendar-month__calendar-event-title,
html body .tribe-events-calendar-month__calendar-event-title-link,
html body .tribe-events-calendar-month__calendar-event-title-link:hover,
html body .tribe-events-calendar-month__calendar-event-title-link:focus {
    background: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}
html body .tribe-events-calendar-month__calendar-event-title {
    margin: 0 !important;
}
html body .tribe-events-calendar-month__calendar-event-title-link {
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}
html body .tribe-events-calendar-month__calendar-event-title-link:hover {
    color: #FF2D92 !important;
    -webkit-text-fill-color: #FF2D92 !important;
}
html body .tribe-events-calendar-month__calendar-event-datetime {
    font-size: 10px !important;
    margin: 0 0 3px !important;
    color: rgba(255, 255, 255, .6) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, .6) !important;
}

/* ============================================================
   BAR-ZONE CRAFT FIXES (v396)
   1) TODAY text was TOP-PINNED: a legacy display:block +
      line-height:14px beat the flex centering.
   2) "Upcoming" rendered at 32px (legacy heading rule) inside a
      44px pill beside 14px TODAY caps - accidental-looking pair.
   3) The wildcard background painted the tab TEXT SPAN and the
      selector SVGs obsidian-black - a box behind the word LIST.
   ============================================================ */

/* TODAY: truly centered label. */
html body .tribe-events .tribe-events-c-top-bar__today-button,
html body .tribe-common .tribe-events-c-top-bar__today-button,
html body .tribe-events-calendar-month .tribe-events-c-top-bar__today-button,
html body .tribe-events-view--month .tribe-events-c-top-bar__today-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}

/* "Upcoming": control-scale type that pairs with the row. */
html body .tribe-events .tribe-events-c-top-bar__datepicker-button,
html body .tribe-common .tribe-events-c-top-bar__datepicker-button,
html body .tribe-events .tribe-events-c-top-bar__datepicker-button time,
html body .tribe-common .tribe-events-c-top-bar__datepicker-button time {
    font-size: 1.0625rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
}
@media (max-width: 775px) {
    html body .tribe-events .tribe-events-c-top-bar__datepicker-button,
    html body .tribe-common .tribe-events-c-top-bar__datepicker-button,
    html body .tribe-events .tribe-events-c-top-bar__datepicker-button time,
    html body .tribe-common .tribe-events-c-top-bar__datepicker-button time {
        font-size: .9375rem !important;
    }
}

/* No black boxes behind tab labels or selector icons. */
html body .tribe-events-c-view-selector__list-item-text,
.tribe-events .tribe-events-c-view-selector__list-item-text,
html body .tribe-events .tribe-events-c-view-selector svg,
html body .tribe-events-c-view-selector__button-icon svg,
html body .tribe-events-c-view-selector__list-item-icon svg {
    background: transparent !important;
    background-color: transparent !important;
}

/* v397: an unbeatable !important display:block keeps flex off the TODAY
   button, so center its label with block-layout alignment instead
   (align-content works on block containers in all current engines and
   nothing else in the cascade sets it). Applied across the pill row;
   harmless where flex is already active. */
.tribe-events-c-top-bar__today-button,
.tribe-events-c-top-bar__datepicker-button,
.tribe-events-c-top-bar__nav-link {
    align-content: center !important;
    text-align: center !important;
}

/* ============================================================
   THE DECK (v398)
   The control zone becomes one piece of CDJ hardware, matching
   the site's deck-menu identity: a single brushed plate holding
   machined keys (LED mode strip on LIST/MONTH/DAY), a recessed
   LCD readout for the date range, and a red performance pad for
   FIND EVENTS. No more scattered look-alike pills.
   ============================================================ */

/* --- The plate: one object holds both control rows --- */
html body .tribe-events .tribe-events-header {
    background: linear-gradient(180deg, #17171C 0%, #101014 100%) !important;
    border: 1px solid #000 !important;
    border-radius: 14px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06), 4px 4px 0 rgba(0, 0, 0, .45), 0 10px 32px rgba(0, 0, 0, .5) !important;
    padding: 16px 16px 18px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    position: relative !important;
}
/* Red gradient hairline along the bottom bezel (site header signature). */
html body .tribe-events .tribe-events-header::after {
    content: '' !important;
    position: absolute !important;
    left: 14px !important;
    right: 14px !important;
    bottom: 7px !important;
    height: 1px !important;
    background: linear-gradient(90deg, rgba(237, 28, 36, .6), rgba(255, 255, 255, .12) 35%, rgba(255, 255, 255, .12)) !important;
    pointer-events: none !important;
}
html body .tribe-events .tribe-events-c-events-bar {
    margin-bottom: 14px !important;
}
@media (max-width: 775px) {
    html body .tribe-events .tribe-events-c-events-bar { margin-bottom: -38px !important; }
    html body .tribe-events .tribe-events-header { padding: 14px 14px 16px !important; }
}

/* --- Machined key chrome (shared): the CDJ toggle's beveled face --- */
html body .tribe-events .tribe-events-c-top-bar__today-button,
html body .tribe-common .tribe-events-c-top-bar__today-button,
html body .tribe-events-calendar-month .tribe-events-c-top-bar__today-button,
html body .tribe-events-view--month .tribe-events-c-top-bar__today-button,
html body .tribe-events-c-top-bar__nav-link,
html body .tribe-events .tribe-events-c-events-bar__search-button,
html body .tribe-events .tribe-events-c-view-selector__button {
    background: linear-gradient(180deg, #27272E 0%, #1B1B21 45%, #131318 100%) !important;
    border: 1px solid #000 !important;
    border-radius: 6px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), inset 0 -2px 3px rgba(0, 0, 0, .5), 0 2px 4px rgba(0, 0, 0, .55) !important;
}
html body .tribe-events .tribe-events-c-top-bar__today-button,
html body .tribe-common .tribe-events-c-top-bar__today-button {
    font-family: var(--font-mono) !important;
    font-size: .75rem !important;
    letter-spacing: .12em !important;
    color: rgba(255, 255, 255, .85) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, .85) !important;
}
html body .tribe-events .tribe-events-c-top-bar__today-button:hover,
html body .tribe-common .tribe-events-c-top-bar__today-button:hover,
html body .tribe-events-c-top-bar__nav-link:hover:not([disabled]) {
    border-color: #000 !important;
    color: #ED1C24 !important;
    -webkit-text-fill-color: #ED1C24 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), inset 0 -2px 3px rgba(0, 0, 0, .5), 0 2px 4px rgba(0, 0, 0, .55), 0 0 10px rgba(237, 28, 36, .12) !important;
    transform: none !important;
}
html body .tribe-events .tribe-events-c-top-bar__today-button:active,
html body .tribe-common .tribe-events-c-top-bar__today-button:active,
html body .tribe-events-c-top-bar__nav-link:active:not([disabled]) {
    transform: translateY(1px) !important;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, .6), 0 1px 2px rgba(0, 0, 0, .5) !important;
}
html body .tribe-events-c-top-bar__nav-link[disabled] {
    opacity: .35 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 1px 2px rgba(0, 0, 0, .4) !important;
}

/* --- The readout: date range is a recessed LCD display, not a button --- */
html body .tribe-events .tribe-events-c-top-bar__datepicker-button,
html body .tribe-common .tribe-events-c-top-bar__datepicker-button {
    background: linear-gradient(180deg, #08080B 0%, #0D0D12 100%) !important;
    border: 1px solid #000 !important;
    border-radius: 6px !important;
    box-shadow: inset 0 2px 6px rgba(0, 0, 0, .7), inset 0 -1px 0 rgba(255, 255, 255, .04), 0 1px 0 rgba(255, 255, 255, .05) !important;
    font-family: var(--font-mono) !important;
    font-size: .9375rem !important;
    font-weight: 600 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    padding: 0 18px !important;
}
html body .tribe-events .tribe-events-c-top-bar__datepicker-button time,
html body .tribe-common .tribe-events-c-top-bar__datepicker-button time {
    font-family: var(--font-mono) !important;
    font-size: .9375rem !important;
    font-weight: 600 !important;
    letter-spacing: .08em !important;
}
html body .tribe-events-c-top-bar__datepicker-button:hover,
html body .tribe-events-c-top-bar__datepicker-button[aria-expanded="true"] {
    box-shadow: inset 0 2px 6px rgba(0, 0, 0, .7), inset 0 -1px 0 rgba(255, 255, 255, .04), 0 1px 0 rgba(255, 255, 255, .05), 0 0 12px rgba(237, 28, 36, .1) !important;
    transform: none !important;
}
html body .tribe-events-c-top-bar__datepicker-button:active {
    transform: none !important;
}
@media (max-width: 775px) {
    html body .tribe-events .tribe-events-c-top-bar__datepicker-button,
    html body .tribe-common .tribe-events-c-top-bar__datepicker-button {
        font-size: .8125rem !important;
        padding: 0 12px !important;
    }
}

/* --- Mode selector: LIST / MONTH / DAY as keys with an LED strip --- */
@media (min-width: 768px) {
    .tribe-common--breakpoint-medium.tribe-events .tribe-events-c-view-selector__content,
    html body .tribe-common--breakpoint-medium .tribe-events-c-view-selector__content {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        overflow: visible !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list { gap: 6px !important; }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item-link {
        background: linear-gradient(180deg, #27272E 0%, #1B1B21 45%, #131318 100%) !important;
        border: 1px solid #000 !important;
        border-radius: 6px !important;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), inset 0 -2px 3px rgba(0, 0, 0, .5), 0 2px 4px rgba(0, 0, 0, .55) !important;
        color: rgba(255, 255, 255, .55) !important;
        padding: 0 22px !important;
        position: relative !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item-link:hover {
        background: linear-gradient(180deg, #2D2D35 0%, #1F1F26 45%, #16161B 100%) !important;
        color: rgba(255, 255, 255, .85) !important;
    }
    /* LED slot on every key; lit red on the active view. */
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item-link::after {
        content: '' !important;
        display: block !important;
        position: absolute !important;
        top: 7px !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        width: 18px !important;
        height: 2px !important;
        border-radius: 1px !important;
        background: rgba(255, 255, 255, .1) !important;
        transition: background .15s ease, box-shadow .15s ease !important;
        bottom: auto !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link {
        background: linear-gradient(180deg, #2F2F38 0%, #202027 45%, #17171C 100%) !important;
        border: 1px solid #000 !important;
        color: #FFFFFF !important;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), inset 0 -2px 3px rgba(0, 0, 0, .5), 0 2px 4px rgba(0, 0, 0, .55) !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link::after {
        display: block !important;
        background: #ED1C24 !important;
        box-shadow: 0 0 6px rgba(237, 28, 36, .8) !important;
    }
}

/* --- Search: recessed LCD field + red performance pad --- */
.tribe-common--breakpoint-medium .tribe-events-c-search,
html body .tribe-common--breakpoint-medium .tribe-events-c-search {
    background: linear-gradient(180deg, #08080B 0%, #0D0D12 100%) !important;
    border: 1px solid #000 !important;
    border-radius: 6px !important;
    box-shadow: inset 0 2px 6px rgba(0, 0, 0, .7), inset 0 -1px 0 rgba(255, 255, 255, .04), 0 1px 0 rgba(255, 255, 255, .05) !important;
}
html body .tribe-events .tribe-events-c-search__button,
html body .tribe-common .tribe-events-c-search__button {
    background: linear-gradient(180deg, #F5383F 0%, #D5171F 55%, #A31218 100%) !important;
    border: 1px solid #000 !important;
    border-radius: 5px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .28), inset 0 -2px 3px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .5) !important;
    font-family: var(--font-mono) !important;
    letter-spacing: .1em !important;
}
html body .tribe-events .tribe-events-c-search__button:hover,
html body .tribe-common .tribe-events-c-search__button:hover {
    background: linear-gradient(180deg, #FF4A51 0%, #E01920 55%, #B01319 100%) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .32), inset 0 -2px 3px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .5), 0 0 12px rgba(237, 28, 36, .25) !important;
    transform: none !important;
}
html body .tribe-events .tribe-events-c-search__button:active,
html body .tribe-common .tribe-events-c-search__button:active {
    transform: translateY(1px) !important;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, .5), 0 1px 2px rgba(0, 0, 0, .4) !important;
}

/* Mobile: field + full-width pad keep the deck chrome. */
@media (max-width: 775px) {
    .tribe-events .tribe-events-c-search__input-control {
        background: linear-gradient(180deg, #08080B 0%, #0D0D12 100%) !important;
        border: 1px solid #000 !important;
        border-radius: 6px !important;
        box-shadow: inset 0 2px 6px rgba(0, 0, 0, .7), inset 0 -1px 0 rgba(255, 255, 255, .04) !important;
    }
    .tribe-events .tribe-events-c-search__button { border-radius: 6px !important; }
    .tribe-events .tribe-events-c-events-bar__search-button,
    .tribe-events .tribe-events-c-view-selector__button { border-radius: 6px !important; }
    .tribe-events .tribe-events-c-events-bar__search-button:active,
    .tribe-events .tribe-events-c-view-selector__button:active {
        transform: translateY(1px) !important;
        background: linear-gradient(180deg, #1B1B21 0%, #131318 100%) !important;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, .6) !important;
    }
}

/* v399: the plate carried 32px of legacy top-bar bottom margin as dead apron. */
html body .tribe-events .tribe-events-c-top-bar,
html body .tribe-common .tribe-events-c-top-bar {
    margin-bottom: 0 !important;
}

/* v400: mobile deck row anchors left ([TODAY][readout] ... [keys]) instead of
   the centered drift a legacy justify-content rule produced. */
@media (max-width: 775px) {
    html body .tribe-events .tribe-events-c-top-bar,
    html body .tribe-common .tribe-events-c-top-bar {
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 8px !important;
    }
    html body .tribe-events .tribe-events-c-top-bar__today-button,
    html body .tribe-common .tribe-events-c-top-bar__today-button {
        height: 38px !important;
        padding: 0 14px !important;
        margin: 0 !important;
    }
}

/* v401: TEC hides TODAY on phones with visibility:hidden, but the invisible
   74px box still occupied the row and shoved the readout off the left edge.
   Collapse anything a11y-hidden in the deck row. */
@media (max-width: 775px) {
    html body .tribe-events .tribe-events-c-top-bar .tribe-common-a11y-hidden,
    html body .tribe-common .tribe-events-c-top-bar .tribe-common-a11y-hidden {
        display: none !important;
    }
}

/* ============================================================
   v402
   1) Mobile search field: the magnifier hugs the right edge
      (absolute right:0) - inset it and clear the text run.
   2) Month grid: day-cell hover painted the square white while
      the numerals stayed white. Hover/selected stay dark.
   ============================================================ */

@media (max-width: 775px) {
    /* Icon breathes 12px off the field edge; text clears it on the right. */
    .tribe-events .tribe-events-c-search__input-control .tribe-common-c-svgicon--search,
    html body .tribe-events-c-search__input-control .tribe-common-c-svgicon--search {
        right: 12px !important;
        left: auto !important;
    }
    .tribe-events .tribe-events-c-search__input,
    html body .tribe-events .tribe-events-c-search__input {
        padding: 12px 44px 12px 14px !important;
    }
}

/* Month grid: hovering or selecting a day never goes light. */
html body .tribe-events-calendar-month__day:hover,
.tribe-events .tribe-events-calendar-month__day:hover,
.tribe-events-calendar-month .tribe-events-calendar-month__day:hover,
html body .tribe-events-calendar-month__day:focus-within,
html body .tribe-events-calendar-month__day-cell--mobile:hover,
html body .tribe-events-calendar-month__day-cell--mobile:focus,
html body .tribe-events-calendar-month__day-cell--selected,
.tribe-events .tribe-events-calendar-month__day-cell--selected,
html body .tribe-events-calendar-month__day-cell--selected:hover {
    background: var(--obsidian-surface) !important;
    background-color: var(--obsidian-surface) !important;
}
/* Numerals stay legible on the dark hover/selected fill. */
html body .tribe-events-calendar-month__day:hover .tribe-events-calendar-month__day-date,
html body .tribe-events-calendar-month__day:hover .tribe-events-calendar-month__day-date-daynum,
html body .tribe-events-calendar-month__day-cell--selected .tribe-events-calendar-month__day-date,
html body .tribe-events-calendar-month__day-cell--selected .tribe-events-calendar-month__day-date-daynum {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}
/* Adjacent-month cells keep their recessed tone even on hover. */
html body .tribe-events-calendar-month__day--past-month:hover,
html body .tribe-events-calendar-month__day--next-month:hover {
    background: rgba(255, 255, 255, .04) !important;
}

/* Mode selector refinement: no black slab behind the keys (the wildcard
   painted every wrapper), tighter cluster, equal-width keys. */
@media (min-width: 768px) {
    html body .tribe-events-c-events-bar__views,
    html body .tribe-events .tribe-events-c-events-bar__views,
    html body .tribe-events .tribe-events-c-view-selector,
    html body .tribe-events .tribe-events-c-view-selector__tabs,
    html body .tribe-events .tribe-events-c-view-selector__content,
    html body .tribe-events .tribe-events-c-view-selector__list,
    html body .tribe-events .tribe-events-c-view-selector__list-item {
        background: transparent !important;
        background-color: transparent !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-events-bar__views,
    html body .tribe-common--breakpoint-medium .tribe-events-c-events-bar__views {
        width: 340px !important;
        flex: 0 0 340px !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list {
        gap: 4px !important;
        width: 100% !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item {
        flex: 1 1 0 !important;
        min-width: 0 !important;
    }
    .tribe-common--breakpoint-medium .tribe-events-c-view-selector__list-item-link {
        width: 100% !important;
        padding: 0 !important;
        justify-content: center !important;
    }
}

/* v403: the selector element carried an explicit ~220px width, so the key
   cluster never filled its 340px track (keys collapsed to 47px). Fill the
   whole chain. */
@media (min-width: 768px) {
    html body .tribe-events .tribe-events-c-view-selector,
    .tribe-common--breakpoint-medium.tribe-events .tribe-events-c-view-selector,
    html body .tribe-events .tribe-events-c-view-selector__content,
    .tribe-common--breakpoint-medium.tribe-events .tribe-events-c-view-selector__content,
    html body .tribe-events .tribe-events-c-view-selector__list,
    .tribe-common--breakpoint-medium.tribe-events .tribe-events-c-view-selector__list {
        width: 100% !important;
        max-width: none !important;
    }
}

/* v404: the key's text SPAN was centered as a box but fills the key and
   left-aligns its own text - the words sat left. Center the text itself. */
html body .tribe-events-c-view-selector__list-item-text,
.tribe-events .tribe-events-c-view-selector__list-item-text,
.tribe-common .tribe-events-c-view-selector__list-item-text {
    text-align: center !important;
}

/* v405: neutralize TEC core's row margin (spacer-9 top + NEGATIVE half-gutter
   sides that hung the cards wider than the container + spacer-8 bottom).
   Rows align flush with the container; 32px bottom keeps the card rhythm. */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-row,
html body .tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-row {
    margin: 0 0 var(--space-8) !important;
}

/* ============================================================
   CARD COLOR ROTATION (v406)
   The legacy nth-child cycle counted month separators as
   siblings and only matched scattered offsets, producing runs
   of pink. :nth-child(An+B of <row>) counts ONLY event rows:
   strict pink -> cyan -> orange -> green rotation, so no two
   neighboring cards ever share a color. (These selectors also
   out-specify every legacy variant rule.)
   ============================================================ */

/* --- Upcoming list --- */
/* Position 1: PINK (restated so legacy offsets can't leak through) */
html body .tribe-events-calendar-list__event-row:nth-child(4n+1 of .tribe-events-calendar-list__event-row) {
    box-shadow: 12px 12px 0 rgba(255, 45, 146, .5), 0 8px 40px rgba(255, 45, 146, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+1 of .tribe-events-calendar-list__event-row):hover {
    box-shadow: 16px 16px 0 rgba(255, 45, 146, .4), 0 12px 48px rgba(255, 45, 146, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+1 of .tribe-events-calendar-list__event-row) .tribe-events-calendar-list__event-date-tag {
    background: linear-gradient(180deg, #ff2d92 0, #e91e7d 100%) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+1 of .tribe-events-calendar-list__event-row) .tribe-events-calendar-list__event {
    background: transparent !important;
}

/* Position 2: CYAN */
html body .tribe-events-calendar-list__event-row:nth-child(4n+2 of .tribe-events-calendar-list__event-row) {
    box-shadow: 12px 12px 0 rgba(0, 212, 255, .5), 0 8px 40px rgba(0, 212, 255, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+2 of .tribe-events-calendar-list__event-row):hover {
    box-shadow: 16px 16px 0 rgba(0, 212, 255, .4), 0 12px 48px rgba(0, 212, 255, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+2 of .tribe-events-calendar-list__event-row) .tribe-events-calendar-list__event-date-tag {
    background: linear-gradient(180deg, #00d4ff 0, #0099cc 100%) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+2 of .tribe-events-calendar-list__event-row) .tribe-events-calendar-list__event {
    background: linear-gradient(145deg, rgba(0, 212, 255, .2) 0, rgba(0, 212, 255, .12) 50%, rgba(0, 212, 255, .04) 100%) !important;
}

/* Position 3: ORANGE */
html body .tribe-events-calendar-list__event-row:nth-child(4n+3 of .tribe-events-calendar-list__event-row) {
    box-shadow: 12px 12px 0 rgba(255, 107, 53, .5), 0 8px 40px rgba(255, 107, 53, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+3 of .tribe-events-calendar-list__event-row):hover {
    box-shadow: 16px 16px 0 rgba(255, 107, 53, .4), 0 12px 48px rgba(255, 107, 53, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+3 of .tribe-events-calendar-list__event-row) .tribe-events-calendar-list__event-date-tag {
    background: linear-gradient(180deg, #ff6b35 0, #e64a19 100%) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n+3 of .tribe-events-calendar-list__event-row) .tribe-events-calendar-list__event {
    background: linear-gradient(145deg, rgba(255, 107, 53, .2) 0, rgba(255, 107, 53, .12) 50%, rgba(255, 45, 146, .06) 100%) !important;
}

/* Position 4: GREEN */
html body .tribe-events-calendar-list__event-row:nth-child(4n of .tribe-events-calendar-list__event-row) {
    box-shadow: 12px 12px 0 rgba(0, 255, 136, .5), 0 8px 40px rgba(0, 255, 136, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n of .tribe-events-calendar-list__event-row):hover {
    box-shadow: 16px 16px 0 rgba(0, 255, 136, .4), 0 12px 48px rgba(0, 255, 136, .3), inset 0 1px 0 rgba(255, 255, 255, .08) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n of .tribe-events-calendar-list__event-row) .tribe-events-calendar-list__event-date-tag {
    background: linear-gradient(180deg, #00ff88 0, #00cc6a 100%) !important;
}
html body .tribe-events-calendar-list__event-row:nth-child(4n of .tribe-events-calendar-list__event-row) .tribe-events-calendar-list__event {
    background: linear-gradient(145deg, rgba(0, 255, 136, .15) 0, rgba(0, 255, 136, .08) 50%, rgba(0, 212, 255, .04) 100%) !important;
}

/* --- Latest-past list: same rotation --- */
html body .tribe-events-calendar-latest-past__event-row:nth-child(4n+1 of .tribe-events-calendar-latest-past__event-row) {
    box-shadow: 12px 12px 0 rgba(255, 45, 146, .5), 0 8px 40px rgba(255, 45, 146, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}
html body .tribe-events-calendar-latest-past__event-row:nth-child(4n+1 of .tribe-events-calendar-latest-past__event-row) .tribe-events-calendar-latest-past__event-date-tag {
    background: linear-gradient(180deg, #ff2d92 0, #e91e7d 100%) !important;
}
html body .tribe-events-calendar-latest-past__event-row:nth-child(4n+2 of .tribe-events-calendar-latest-past__event-row) {
    box-shadow: 12px 12px 0 rgba(0, 212, 255, .5), 0 8px 40px rgba(0, 212, 255, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}
html body .tribe-events-calendar-latest-past__event-row:nth-child(4n+2 of .tribe-events-calendar-latest-past__event-row) .tribe-events-calendar-latest-past__event-date-tag {
    background: linear-gradient(180deg, #00d4ff 0, #0099cc 100%) !important;
}
html body .tribe-events-calendar-latest-past__event-row:nth-child(4n+3 of .tribe-events-calendar-latest-past__event-row) {
    box-shadow: 12px 12px 0 rgba(255, 107, 53, .5), 0 8px 40px rgba(255, 107, 53, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}
html body .tribe-events-calendar-latest-past__event-row:nth-child(4n+3 of .tribe-events-calendar-latest-past__event-row) .tribe-events-calendar-latest-past__event-date-tag {
    background: linear-gradient(180deg, #ff6b35 0, #e64a19 100%) !important;
}
html body .tribe-events-calendar-latest-past__event-row:nth-child(4n of .tribe-events-calendar-latest-past__event-row) {
    box-shadow: 12px 12px 0 rgba(0, 255, 136, .5), 0 8px 40px rgba(0, 255, 136, .25), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}
html body .tribe-events-calendar-latest-past__event-row:nth-child(4n of .tribe-events-calendar-latest-past__event-row) .tribe-events-calendar-latest-past__event-date-tag {
    background: linear-gradient(180deg, #00ff88 0, #00cc6a 100%) !important;
}

/* Compact shadows on phones, per rotation position. */
@media (max-width: 768px) {
    html body .tribe-events-calendar-list__event-row:nth-child(4n+1 of .tribe-events-calendar-list__event-row),
    html body .tribe-events-calendar-latest-past__event-row:nth-child(4n+1 of .tribe-events-calendar-latest-past__event-row) {
        box-shadow: 6px 6px 0 rgba(255, 45, 146, .5), 0 4px 16px rgba(255, 45, 146, .2) !important;
    }
    html body .tribe-events-calendar-list__event-row:nth-child(4n+2 of .tribe-events-calendar-list__event-row),
    html body .tribe-events-calendar-latest-past__event-row:nth-child(4n+2 of .tribe-events-calendar-latest-past__event-row) {
        box-shadow: 6px 6px 0 rgba(0, 212, 255, .5), 0 4px 16px rgba(0, 212, 255, .2) !important;
    }
    html body .tribe-events-calendar-list__event-row:nth-child(4n+3 of .tribe-events-calendar-list__event-row),
    html body .tribe-events-calendar-latest-past__event-row:nth-child(4n+3 of .tribe-events-calendar-latest-past__event-row) {
        box-shadow: 6px 6px 0 rgba(255, 107, 53, .5), 0 4px 16px rgba(255, 107, 53, .2) !important;
    }
    html body .tribe-events-calendar-list__event-row:nth-child(4n of .tribe-events-calendar-list__event-row),
    html body .tribe-events-calendar-latest-past__event-row:nth-child(4n of .tribe-events-calendar-latest-past__event-row) {
        box-shadow: 6px 6px 0 rgba(0, 255, 136, .5), 0 4px 16px rgba(0, 255, 136, .2) !important;
    }
}

/* v407: mirror of the v405 margin fix for phones - TEC's negative
   half-gutter side margins can never apply to event rows at narrow
   widths either; rows sit flush with a clean bottom rhythm. */
@media (max-width: 775px) {
    html body .tribe-events .tribe-events-calendar-list__event-row,
    html body li.tribe-events-calendar-list__event-row,
    .tribe-events .tribe-events-calendar-list__event-row,
    html body .tribe-events .tribe-events-calendar-latest-past__event-row,
    .tribe-events .tribe-events-calendar-latest-past__event-row {
        margin: 0 0 var(--space-6) !important;
    }
}
/* ============================================================================
   v408: SCHEDULE PILL - date on one line, time on the line beneath
   ----------------------------------------------------------------------------
   The pill used to lay date and time out as two COLUMNS on desktop, so each one
   wrapped inside its own half: "September 5," / "2026" beside "10:00 pm -" /
   "10:00 pm" - four text lines where there should be two.

   Measured (headless Chrome, live page):
     >=769px : pill content box 255-314px; an unwrapped date needs 142.7px and
               the time range 149.0px -> a column + nowrap fits with room to spare.
     <=430px : a 45%-wide pill minus 48px of side padding leaves only 74-124px,
               so nowrap CANNOT fit beside the calendar button. Algebraically the
               side-by-side row only clears the date at viewport >= ~456px, so the
               row itself stacks below 576px and hands the pill the full card
               width (viewport - 96px = 224px at 320px, ample).
   ========================================================================== */

html body .djvlad-schedule-details {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: var(--space-1) !important;
    text-align: center !important;
}

html body .djvlad-event-date,
html body .djvlad-event-time {
    display: block !important;
    white-space: nowrap !important;
}

/* Phones: 45% + 48px of padding cannot hold an unwrapped date, so give each
   button its own full-width row rather than shrinking the type to fit. */
@media (max-width: 575px) {
    html body .tribe-events-schedule,
    html body .tribe-events-single .tribe-events-schedule {
        flex-wrap: wrap !important;
        gap: var(--space-4) !important;
    }

    html body .tribe-events-schedule > div:not(.djvlad-subscribe-btn),
    html body .tribe-events-schedule > .djvlad-subscribe-btn {
        width: 100% !important;
    }
}

/* ============================================================================
   v408: EVENT DESCRIPTION - stop reprinting the label, style the real callout
   ----------------------------------------------------------------------------
   The eyebrow was a hard-coded CSS string, and v407:1871 attached it with a
   DESCENDANT combinator: `...tribe-events-content p:first-of-type::before`.
   Because `:first-of-type` is scoped to each element's own parent, that matched
   TWICE on a real event - once above the opening tagline, and again on the first
   <p> inside the trailing <blockquote>. Verified on the live v407 page: two
   nodes reported content "ABOUT THIS EVENT". That duplicate is the "reprint".

   Killing it keeps the descendant form on purpose, so BOTH instances die.
   `content: none` (not '') suppresses the pseudo-element outright - an emptied
   ::before keeps its display:block box and padding-top:var(--space-5), leaving a
   measured 32.4px (mobile) / 50.4px (desktop) ghost gap.

   Everything that STYLES rather than removes is re-scoped with a CHILD
   combinator, so the blockquote's paragraph is no longer swept up by a rule
   meant for the card's own opening line.
   ========================================================================== */

html body .tribe-events-single-event-description.tribe-events-content p:first-of-type::before {
    content: none !important;
}

/* The opening paragraph is an ORDINARY paragraph. It is not marked up as a
   heading, so it does not get heading typography - promoting it would invent a
   hierarchy the author never wrote. It keeps only the top cushion, because the
   removed eyebrow was silently supplying the card's entire lead-in (the card is
   `padding: 0 24px` by design so the flyer meets its edge exactly). */
html body .tribe-events-single-event-description.tribe-events-content > p:first-of-type {
    margin-top: 0 !important;
    padding-top: var(--space-5) !important;
}

@media (max-width: 768px) {
    html body .tribe-events-single-event-description.tribe-events-content > p:first-of-type {
        padding-top: var(--space-4) !important;
    }
}

/* The trailing <blockquote> holds the event's closing tagline ("The last out
   isn't last call."). v407 styled it not at all - no rail, no panel, no padding,
   inheriting a near-black colour - so it read as an ordinary paragraph that
   happened to carry a duplicated label. It is now the pull-quote it was written
   to be: brand-red rail, faint red wash, display type. */
html body .tribe-events-single-event-description.tribe-events-content blockquote {
    display: block !important;
    background: rgba(237, 28, 36, .07) !important;
    border-left: 3px solid var(--accent) !important;
    border-radius: 0 12px 12px 0 !important;
    padding: var(--space-4) var(--space-5) !important;
    margin: var(--space-6) 0 var(--space-5) 0 !important;
    quotes: none !important;
}

html body .tribe-events-single-event-description.tribe-events-content blockquote p {
    font-family: var(--font-heading), 'Plus Jakarta Sans', sans-serif !important;
    font-size: clamp(1.05rem, 1.35vw, 1.2rem) !important;
    font-weight: 600 !important;
    font-style: normal !important;
    line-height: 1.4 !important;
    letter-spacing: -.01em !important;
    color: #FFFFFF !important;
    margin: 0 !important;
    padding-right: 0 !important;
}

@media (max-width: 768px) {
    html body .tribe-events-single-event-description.tribe-events-content blockquote {
        padding: var(--space-3) var(--space-4) !important;
        margin: var(--space-5) 0 var(--space-4) 0 !important;
    }

    html body .tribe-events-single-event-description.tribe-events-content blockquote p {
        font-size: 1.05rem !important;
    }
}
