/* =========================================================
   Calendar Page — The Events Calendar
   Scoped to: body.page-template-page-calendar-php
========================================================= */

body.page-template-page-calendar-php {
    --maroon: #5a0011;
    --maroon-dark: #3f000c;
    --maroon-light: #7a1a2e;
    --gold: #f6c74c;
    --gold-soft: rgba(246, 199, 76, .14);
    --border: rgba(90, 0, 17, .08);
    --border-soft: rgba(90, 0, 17, .05);
    --text: #241a1d;
    --muted: #6d5b61;
    --shadow-sm: 0 10px 30px rgba(0, 0, 0, .08);
    --shadow-md: 0 30px 70px rgba(0, 0, 0, .12);
    --shadow-gold: 0 14px 30px rgba(246, 199, 76, .18);
    background: #faf8f5;
}

body.page-template-page-calendar-php .site-main {
    padding-top: 0;
}

/* =========================================================
   Hero
========================================================= */

body.page-template-page-calendar-php .hero {
    background-position: center 55%;
}

/* =========================================================
   Calendar Section
========================================================= */

body.page-template-page-calendar-php .calendar-page {
    padding: 0 0 24px;
}

body.page-template-page-calendar-php .calendar-intro.page-intro {
    margin-bottom: 38px;
}

body.page-template-page-calendar-php .calendar-intro.page-intro .page-intro-head,
body.page-template-page-calendar-php .calendar-intro.page-intro .intro-panel {
    max-width: var(--max);
    margin-left: auto;
    margin-right: auto;
}

body.page-template-page-calendar-php .calendar-shell {
    position: relative;
    overflow: hidden;
    padding: 40px 40px 18px;
    border: 1px solid var(--border);
    border-radius: 28px;
    background:
        radial-gradient(900px 420px at 20% 0%, rgba(246, 199, 76, .10), transparent 60%),
        linear-gradient(180deg, rgba(255, 255, 255, .97), rgba(255, 255, 255, .92));
    box-shadow:
        0 40px 90px rgba(0, 0, 0, .10),
        inset 0 1px 0 rgba(255, 255, 255, .72);
    backdrop-filter: blur(8px);
}

body.page-template-page-calendar-php .calendar-shell::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .14), transparent 20%),
        radial-gradient(700px 220px at 0% 0%, rgba(246, 199, 76, .10), transparent 60%);
}

/* =========================================================
   Base
========================================================= */

body.page-template-page-calendar-php .tribe-common,
body.page-template-page-calendar-php .tribe-events {
    color: var(--text);
}

body.page-template-page-calendar-php .tribe-events a,
body.page-template-page-calendar-php .tribe-common a {
    transition:
        background-color .22s ease,
        border-color .22s ease,
        color .22s ease,
        box-shadow .22s ease,
        transform .22s ease;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-view,
body.page-template-page-calendar-php .tribe-events-calendar-month__body,
body.page-template-page-calendar-php .tribe-events-calendar-month__grid,
body.page-template-page-calendar-php .tribe-events-calendar-month__table {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* =========================================================
   Top Bar
========================================================= */

body.page-template-page-calendar-php .tribe-events .tribe-events-header,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar {
    margin-bottom: 10px;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar {
    gap: 10px;
    padding-bottom: 12px;
    border: 0;
    border-bottom: 1px solid var(--border);
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__today-button {
    display: none;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__datepicker {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 0 0 14px !important;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__datepicker-button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--maroon-dark) !important;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__datepicker-time {
    display: inline-flex !important;
    align-items: center !important;
    color: var(--maroon-dark) !important;
    font-size: 32px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
    letter-spacing: -.01em !important;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__datepicker-mobile {
    display: none !important;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__datepicker-desktop {
    display: inline !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    white-space: nowrap !important;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__events-bar,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-events-bar {
    border: 0;
    background: transparent;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-search__input-control--keyword .tribe-events-c-search__input {
    min-height: 50px;
    padding: 12px 18px 12px 44px;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    color: var(--text);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-search__input-control--keyword .tribe-events-c-search__input::placeholder {
    color: var(--muted);
}

/* =========================================================
   View Switcher
========================================================= */

body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__content,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__list {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0 !important;
    min-height: 46px;
    padding: 2px !important;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: #fff;
    box-shadow: none;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__list-item {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__list-item-link,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__button {
    position: relative;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    min-width: 52px !important;
    min-height: 40px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: var(--text);
    font-weight: 700;
    line-height: 1 !important;
    box-shadow: none !important;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__list-item-link:hover,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__button:hover {
    background: rgba(90, 0, 17, .08) !important;
    color: var(--maroon-dark) !important;
    text-decoration: none;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__list-item--active,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__button--active,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__list-item--active::before,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__button--active::before,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__list-item--active::after,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__button--active::after {
    background: transparent !important;
    box-shadow: none !important;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__button--active {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background: transparent !important;
    color: var(--maroon-dark) !important;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link::after,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__button--active::after {
    content: "";
    position: absolute;
    left: 50% !important;
    right: auto !important;
    bottom: -2px;
    width: 34px !important;
    height: 2px;
    border-radius: 999px;
    background: var(--maroon-dark);
    transform: translateX(-50%) !important;
}


/* =========================================================
   Day Cells
========================================================= */

body.page-template-page-calendar-php .tribe-events-calendar-month__table {
    border-collapse: separate;
    border-spacing: 0;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__week {
    gap: 10px;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day {
    min-height: 150px;
    overflow: hidden;
    border: 1px solid var(--border-soft);
    border-radius: 14px;
    background: #fff;
    transition:
        background-color .22s ease,
        box-shadow .22s ease,
        border-color .22s ease,
        transform .22s ease;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day:hover {
    z-index: 2;
    background: rgba(246, 199, 76, .06);
    border-color: rgba(246, 199, 76, .24);
    box-shadow:
        inset 0 0 0 1px rgba(246, 199, 76, .32),
        0 8px 16px rgba(0, 0, 0, .04);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day--other-month {
    background: rgba(249, 246, 242, .85);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day-date {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    min-width: 34px;
    height: 34px;
    margin: 8px;
    border-radius: 50%;
    color: #222;
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day--current {
    background: rgba(246, 199, 76, .14);
    box-shadow: inset 0 0 0 2px rgba(246, 199, 76, .45);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date {
    background: rgba(255, 255, 255, .8);
    color: var(--maroon-dark);
    box-shadow: var(--shadow-gold);
}

/* =========================================================
   Event Bars
========================================================= */

body.page-template-page-calendar-php .tribe-events-calendar-month__events {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 4px !important;
    padding: 6px 8px 8px !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event {
    margin-bottom: 0;
    border-radius: 6px;
    box-shadow: 0 4px 8px rgba(90, 0, 17, .14);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-link {
    background: linear-gradient(135deg, #7b1630 0%, var(--maroon) 58%, var(--maroon-dark) 100%) !important;
    border-radius: 8px !important;
    border: 1px solid rgba(255, 255, 255, .10) !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-list__event-row,
body.page-template-page-calendar-php .tribe-events-calendar-day__event {
    background:
        radial-gradient(700px 220px at 0% 0%, rgba(246, 199, 76, .10), transparent 60%),
        linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .72)) !important;
    border: 1px solid rgba(90, 0, 17, .08) !important;
    box-shadow:
        0 16px 34px rgba(0, 0, 0, .08),
        inset 0 1px 0 rgba(255, 255, 255, .72) !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-link:hover {
    background: linear-gradient(135deg, #8e203d 0%, var(--maroon-light) 55%, var(--maroon) 100%);
    box-shadow: 0 6px 14px rgba(90, 0, 17, .20);
    transform: translateY(-1px);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-datetime,
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event-bar-datetime {
    display: none !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-title,
body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-title a {
    display: block;
    width: 100%;
    color: #fff !important;
    font-size: .78rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: -.01em;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__more-events-link {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(246, 199, 76, .18);
    color: var(--maroon-dark);
    font-size: .72rem;
    font-weight: 800;
    text-decoration: none;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__more-events-link:hover {
    background: rgba(246, 199, 76, .28);
    color: var(--maroon-dark);
}

/* =========================================================
   Subscribe — hidden
========================================================= */

body.page-template-page-calendar-php .tribe-events .tribe-events-c-subscribe-dropdown {
    display: none !important;
}

/* =========================================================
   Focus
========================================================= */

body.page-template-page-calendar-php .tribe-events a:focus-visible,
body.page-template-page-calendar-php .tribe-events button:focus-visible,
body.page-template-page-calendar-php .tribe-events input:focus-visible {
    outline: 2px solid rgba(246, 199, 76, .78);
    outline-offset: 2px;
    box-shadow: 0 0 0 4px rgba(246, 199, 76, .18);
}

/* =========================================================
   Mobile
========================================================= */

@media (max-width: 900px) {
    body.page-template-page-calendar-php .calendar-shell {
        padding: 24px 24px 18px;
    }

    body.page-template-page-calendar-php .tribe-events-calendar-month__day {
        min-height: 84px;
    }
}

@media (max-width: 767px) {
    body.page-template-page-calendar-php .calendar-page {
        padding: 28px 0 36px;
    }

    body.page-template-page-calendar-php .calendar-shell {
        padding: 18px 14px;
        border-radius: 22px;
    }

    body.page-template-page-calendar-php .tribe-events .tribe-events-calendar-month-nav__month,
    body.page-template-page-calendar-php .tribe-events .tribe-events-calendar-month-nav h2,
    body.page-template-page-calendar-php .tribe-events .tribe-events-calendar-month-nav h3 {
        font-size: 1.45rem !important;
    }
}

/* =========================================================
   Hard overrides
========================================================= */

/* weekday row */
body.page-template-page-calendar-php .calendar-shell .tribe-events-calendar-month__header,
body.page-template-page-calendar-php .calendar-shell .tribe-events-calendar-month__header-row {
    display: table-row !important;
}

body.page-template-page-calendar-php .calendar-shell .tribe-events-calendar-month__header-column {
    display: table-cell !important;
    width: 14.2857% !important;
    text-align: center !important;
    vertical-align: middle !important;
    padding: 10px 6px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.page-template-page-calendar-php .calendar-shell .tribe-events-calendar-month__header-column-title,
body.page-template-page-calendar-php .calendar-shell .tribe-events-calendar-month__header-column abbr {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    color: var(--maroon-dark) !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    white-space: nowrap !important;
    overflow: visible !important;
}

/* event text visibility */
body.page-template-page-calendar-php .calendar-shell .tribe-events-calendar-month__calendar-event-title,
body.page-template-page-calendar-php .calendar-shell .tribe-events-calendar-month__calendar-event-title a {
    color: #fff !important;
    opacity: 1 !important;
    font-size: .8rem !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
}

/* event pill */
body.page-template-page-calendar-php .calendar-shell .tribe-events-calendar-month__calendar-event-link {
    display: flex !important;
    align-items: center !important;
    min-height: 36px !important;
    padding: 6px 10px !important;
    background: linear-gradient(135deg, #7b1630 0%, var(--maroon) 58%, var(--maroon-dark) 100%) !important;
}

body.page-template-page-calendar-php .calendar-shell .tribe-events-calendar-month__header-column-title,
body.page-template-page-calendar-php .calendar-shell .tribe-events-calendar-month__header-column abbr {
    text-align: center;
    width: 100%;
    display: block;
}

body.page-template-page-calendar-php .calendar-shell .tribe-events-calendar-month__header-column {
    padding: 12px 0;
}

/* force month event bars maroon */
body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event,
body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-link,
body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-link:visited {
    background: #5a0011 !important;
    background-image: none !important;
    border: 1px solid #3f000c !important;
    box-shadow: 0 4px 10px rgba(90, 0, 17, .22) !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-title,
body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-title a {
    color: #fff !important;
    opacity: 1 !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-link:hover {
    background: #7a1a2e !important;
    background-image: none !important;
}

/* tighten event bar width + add top spacing */
body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event {
    margin: 3px auto 0 !important;
    width: calc(100% - 20px);
    padding: 4px 10px !important;
    border-radius: 8px !important;
    font-size: .82rem !important;
}

.tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date {
    box-shadow:
        0 8px 20px rgba(246, 199, 76, .35),
        inset 0 1px 0 rgba(255, 255, 255, .9);
}

/* =========================================================
   TEC List + Day View Polish
========================================================= */

/* overall spacing */
body.page-template-page-calendar-php .tribe-events .tribe-events-l-container {
    padding-top: 4px;
}

/* rows become cards */
body.page-template-page-calendar-php .tribe-events-calendar-list__event-row,
body.page-template-page-calendar-php .tribe-events-calendar-day__event {
    margin: 0 0 18px !important;
    padding: 22px 24px !important;
    border: 1px solid rgba(90, 0, 17, .08) !important;
    border-radius: 18px !important;
    background:
        radial-gradient(700px 220px at 0% 0%, rgba(246, 199, 76, .10), transparent 60%),
        linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .72)) !important;
    box-shadow:
        0 16px 34px rgba(0, 0, 0, .08),
        inset 0 1px 0 rgba(255, 255, 255, .72) !important;
    backdrop-filter: blur(10px);
}

/* hover */
body.page-template-page-calendar-php .tribe-events-calendar-list__event-row:hover,
body.page-template-page-calendar-php .tribe-events-calendar-day__event:hover {
    border-color: rgba(246, 199, 76, .34) !important;
    box-shadow:
        0 18px 40px rgba(0, 0, 0, .10),
        inset 0 0 0 1px rgba(246, 199, 76, .16) !important;
}

/* title */
body.page-template-page-calendar-php .tribe-events-calendar-list__event-title,
body.page-template-page-calendar-php .tribe-events-calendar-day__event-title {
    margin: 0 0 8px !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-list__event-title a,
body.page-template-page-calendar-php .tribe-events-calendar-day__event-title a {
    color: var(--maroon-dark) !important;
    font-size: clamp(1.25rem, 1.4vw, 1.7rem) !important;
    font-weight: 900 !important;
    line-height: 1.08 !important;
    letter-spacing: -.02em !important;
    text-decoration: none !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-list__event-title a:hover,
body.page-template-page-calendar-php .tribe-events-calendar-day__event-title a:hover {
    color: var(--maroon) !important;
}

/* meta line */
body.page-template-page-calendar-php .tribe-events-calendar-list__event-datetime,
body.page-template-page-calendar-php .tribe-events-calendar-day__event-datetime,
body.page-template-page-calendar-php .tribe-events-calendar-list__event-date-tag,
body.page-template-page-calendar-php .tribe-events-calendar-day__event-date-tag {
    color: var(--text) !important;
    font-weight: 700 !important;
}

/* list date column */
body.page-template-page-calendar-php .tribe-events-calendar-list__event-date-tag {
    min-width: 88px !important;
    padding-right: 18px !important;
}

/* day-of-week label */
body.page-template-page-calendar-php .tribe-events-calendar-list__event-date-tag-weekday,
body.page-template-page-calendar-php .tribe-events-calendar-day__event-date-tag-weekday {
    color: var(--maroon-dark) !important;
    font-size: .82rem !important;
    font-weight: 800 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
}

/* day number badge */
body.page-template-page-calendar-php .tribe-events-calendar-list__event-date-tag-daynum,
body.page-template-page-calendar-php .tribe-events-calendar-day__event-date-tag-daynum {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 52px !important;
    height: 52px !important;
    margin-top: 8px !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .95), rgba(255, 248, 232, .88)) !important;
    color: var(--maroon-dark) !important;
    font-size: 1.6rem !important;
    font-weight: 900 !important;
    box-shadow:
        0 10px 22px rgba(246, 199, 76, .20),
        inset 0 1px 0 rgba(255, 255, 255, .85) !important;
}

/* time / meta */
body.page-template-page-calendar-php .tribe-events-calendar-list__event-datetime,
body.page-template-page-calendar-php .tribe-events-calendar-day__event-datetime {
    margin: 0 0 10px !important;
    color: var(--muted) !important;
    font-size: .98rem !important;
    font-weight: 700 !important;
}

/* divider lines softer */
body.page-template-page-calendar-php .tribe-events-calendar-list__month-separator,
body.page-template-page-calendar-php .tribe-events-calendar-day__hour-separator {
    border-color: rgba(90, 0, 17, .10) !important;
}

/* nav links */
body.page-template-page-calendar-php .tribe-events-c-nav__list-item-link {
    color: var(--maroon-dark) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

body.page-template-page-calendar-php .tribe-events-c-nav__list-item-link:hover {
    color: var(--maroon) !important;
}

/* day view time rail */
body.page-template-page-calendar-php .tribe-events-calendar-day__hour-separator-time {
    color: var(--maroon-dark) !important;
    font-weight: 800 !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-day__event {
    max-width: 1120px;
}

body.page-template-page-calendar-php .tribe-events-calendar-day__event-details {
    max-width: 760px;
}

/* mobile */
@media (max-width: 767px) {

    body.page-template-page-calendar-php .tribe-events-calendar-list__event-row,
    body.page-template-page-calendar-php .tribe-events-calendar-day__event {
        padding: 18px 16px !important;
        border-radius: 16px !important;
    }

    body.page-template-page-calendar-php .tribe-events-calendar-list__event-title a,
    body.page-template-page-calendar-php .tribe-events-calendar-day__event-title a {
        font-size: 1.2rem !important;
    }

    body.page-template-page-calendar-php .tribe-events-calendar-list__event-date-tag-daynum,
    body.page-template-page-calendar-php .tribe-events-calendar-day__event-date-tag-daynum {
        min-width: 46px !important;
        height: 46px !important;
        font-size: 1.35rem !important;
    }
}

/* =========================================================
   CALENDAR — MONTH VIEW POLISH
========================================================= */

/* center weekday headers */
.tribe-events-calendar-month__header-column {
    text-align: center;
    font-weight: 900;
    letter-spacing: .08em;
    font-size: 13px;
    color: var(--maroon);
    padding: 12px 0;
}

/* calendar grid */
.tribe-events-calendar-month__body {
    border-radius: 14px;
    overflow: hidden;
}

/* day cells */
.tribe-events-calendar-month__day {
    background: #fff;
    transition: background .18s ease, transform .18s ease;
}

/* hover day */
.tribe-events-calendar-month__day:hover {
    background: rgba(246, 199, 76, .08);
}

/* day number */
.tribe-events-calendar-month__day-number {
    font-weight: 900;
    font-size: 20px;
    color: #4b4f57;
}

/* today's highlight */
.tribe-events-calendar-month__day--current {
    background: linear-gradient(180deg,
            rgba(246, 199, 76, .18),
            rgba(246, 199, 76, .06));
}

/* event pill */
.tribe-events-calendar-month__event {
    border-radius: 999px;
    font-weight: 700;
    font-size: 13px;
    padding: 6px 12px;
}

/* event color */
.tribe-events-calendar-month__event-title {
    color: #fff;
}

/* event background */
.tribe-events-calendar-month__event {
    background: linear-gradient(180deg,
            #7a001a,
            #4a000f);
    box-shadow: 0 6px 14px rgba(0, 0, 0, .18);
}

/* hover event */
.tribe-events-calendar-month__event:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(0, 0, 0, .25);
}

/* more events link */
.tribe-events-calendar-month__more-events {
    font-weight: 700;
    font-size: 12px;
    color: var(--maroon);
}

/* weekend tint */
.tribe-events-calendar-month__day--weekend {
    background: rgba(0, 0, 0, .015);
}

/* Weekday headers */
.tribe-events-calendar-month__header-column-title,
.tribe-events-calendar-month__header-column abbr {
    font-size: 0.85rem !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    color: var(--maroon-dark) !important;
}

/* Weekend headers */
.tribe-events-calendar-month__header-column:first-child abbr,
.tribe-events-calendar-month__header-column:last-child abbr {
    color: var(--maroon);
}

/* =========================================================
   CALENDAR PREMIUM FINISHING PASS
========================================================= */

/* 1) stronger weekday headers */
body.page-template-page-calendar-php .tribe-events-calendar-month__header-column-title,
body.page-template-page-calendar-php .tribe-events-calendar-month__header-column abbr {
    font-size: .86rem !important;
    font-weight: 900 !important;
    letter-spacing: .10em !important;
    color: var(--maroon-dark) !important;
}

/* weekend header tint */
body.page-template-page-calendar-php .tribe-events-calendar-month__header-column:first-child abbr,
body.page-template-page-calendar-php .tribe-events-calendar-month__header-column:last-child abbr {
    color: var(--maroon) !important;
}

/* 2) subtle luxury top glow on the whole month grid */
body.page-template-page-calendar-php .tribe-events-calendar-month {
    position: relative;
}

body.page-template-page-calendar-php .tribe-events-calendar-month::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(900px 240px at 50% 0%, rgba(246, 199, 76, .10), transparent 60%);
    z-index: 1;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__header,
body.page-template-page-calendar-php .tribe-events-calendar-month__body {
    position: relative;
    z-index: 2;
}

/* 3) richer day hover */
body.page-template-page-calendar-php .tribe-events-calendar-month__day:hover {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(255, 250, 240, .98));
    box-shadow:
        inset 0 0 0 1px rgba(246, 199, 76, .30),
        0 10px 20px rgba(0, 0, 0, .04);
}

/* 4) elegant date numbers */
body.page-template-page-calendar-php .tribe-events-calendar-month__day-date {
    font-size: 17px !important;
    font-weight: 900 !important;
    color: #3d4350 !important;
}

/* today number stronger */
body.page-template-page-calendar-php .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date {
    background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(255, 248, 232, .92)) !important;
    color: var(--maroon-dark) !important;
}

/* 5) event bars feel more premium */
body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-link {
    border: 1px solid rgba(255, 255, 255, .10) !important;
    box-shadow:
        0 6px 14px rgba(90, 0, 17, .18),
        inset 0 1px 0 rgba(255, 255, 255, .10) !important;
}

/* hover shimmer feel */
body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-link:hover {
    box-shadow:
        0 10px 20px rgba(90, 0, 17, .24),
        0 0 0 1px rgba(246, 199, 76, .12) inset !important;
}

/* 6) more-events chip nicer */
body.page-template-page-calendar-php .tribe-events-calendar-month__more-events-link {
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .45);
}

/* 7) soften the next-month row */
body.page-template-page-calendar-php .tribe-events-calendar-month__day--other-month {
    opacity: .82;
}

/* 8) slight card lift on event days */
body.page-template-page-calendar-php .tribe-events-calendar-month__day:has(.tribe-events-calendar-month__events) {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .99), rgba(252, 249, 244, .96));
}

/* 9) tighter spacing for event stacks */
body.page-template-page-calendar-php .tribe-events-calendar-month__events {
    gap: 5px !important;
}

/* 10) make the shell feel a little more premium */
body.page-template-page-calendar-php .calendar-shell {
    box-shadow:
        0 40px 90px rgba(0, 0, 0, .10),
        0 0 0 1px rgba(255, 255, 255, .45) inset,
        inset 0 1px 0 rgba(255, 255, 255, .72);
}

/* =========================================================
   CALENDAR FINAL POLISH
========================================================= */

/* kill the weird empty middle pill / spacer */
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__content::before,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__views::before,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector::before {
    display: none !important;
    content: none !important;
}

/* tighten top controls */
body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar {
    align-items: center;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__events-bar {
    margin-right: 14px;
}

/* stronger month header divider */
body.page-template-page-calendar-php .tribe-events-calendar-month__header,
body.page-template-page-calendar-php .tribe-events-calendar-month__header-row {
    border-bottom: 1px solid rgba(90, 0, 17, .10);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(249, 247, 243, .98));
}

/* weekday labels stronger */
body.page-template-page-calendar-php .tribe-events-calendar-month__header-column-title,
body.page-template-page-calendar-php .tribe-events-calendar-month__header-column abbr {
    color: var(--maroon-dark) !important;
    font-size: .80rem !important;
    font-weight: 900 !important;
    letter-spacing: .10em !important;
}

/* month grid a little richer */
body.page-template-page-calendar-php .tribe-events-calendar-month__day {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(252, 251, 248, .96));
}

/* slightly distinguish weekends */
body.page-template-page-calendar-php .tribe-events-calendar-month__day--weekend {
    background:
        linear-gradient(180deg, rgba(252, 250, 246, .98), rgba(248, 246, 242, .96));
}

/* better hover */
body.page-template-page-calendar-php .tribe-events-calendar-month__day:hover {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(255, 249, 236, .98));
    box-shadow:
        inset 0 0 0 1px rgba(246, 199, 76, .26),
        0 8px 18px rgba(0, 0, 0, .04);
}

/* current day needs to pop more */
body.page-template-page-calendar-php .tribe-events-calendar-month__day--current {
    background:
        radial-gradient(220px 90px at 50% 0%, rgba(246, 199, 76, .16), rgba(246, 199, 76, 0) 65%),
        linear-gradient(180deg, rgba(255, 252, 244, .98), rgba(255, 248, 231, .96));
    box-shadow:
        inset 0 0 0 2px rgba(246, 199, 76, .48),
        0 10px 22px rgba(246, 199, 76, .08);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day--current::before {
    top: 0;
    left: 8px;
    right: 8px;
    height: 3px;
    background: linear-gradient(90deg, var(--gold), var(--gold-deep), var(--gold));
}

/* date numbers more premium */
body.page-template-page-calendar-php .tribe-events-calendar-month__day-date {
    font-size: 17px;
    font-weight: 900;
    color: #4a4f5b;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date {
    background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(255, 249, 236, .94));
    color: var(--maroon-dark);
    box-shadow:
        0 8px 20px rgba(246, 199, 76, .30),
        inset 0 1px 0 rgba(255, 255, 255, .92);
}

/* event pills larger and stronger */
body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event {
    width: calc(100% - 12px);
    margin: 4px auto 0 !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-link {
    min-height: 30px !important;
    padding: 5px 10px !important;
    border-radius: 10px !important;
    border: 1px solid rgba(255, 255, 255, .08) !important;
    box-shadow:
        0 6px 14px rgba(90, 0, 17, .20),
        inset 0 1px 0 rgba(255, 255, 255, .10) !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-link:hover {
    box-shadow:
        0 10px 20px rgba(90, 0, 17, .24),
        0 0 0 1px rgba(246, 199, 76, .14) inset !important;
}

/* titles inside pills slightly cleaner */
body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-title,
body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event-title a {
    font-size: .80rem !important;
    font-weight: 800 !important;
    line-height: 1.05 !important;
}

/* more events chip */
body.page-template-page-calendar-php .tribe-events-calendar-month__more-events-link {
    background: rgba(246, 199, 76, .16);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .45);
}

/* smoother shell */
body.page-template-page-calendar-php .calendar-shell {
    box-shadow:
        0 40px 90px rgba(0, 0, 0, .10),
        0 0 0 1px rgba(255, 255, 255, .42) inset,
        inset 0 1px 0 rgba(255, 255, 255, .72);
}

/* search and view pills cleaner */
body.page-template-page-calendar-php .tribe-events .tribe-events-c-search__input-control--keyword .tribe-events-c-search__input,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__content,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector__list {
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .82),
        0 8px 20px rgba(0, 0, 0, .03);
}

/* responsive */
@media (max-width: 900px) {
    body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar {
        grid-template-columns: 1fr !important;
    }

    body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__views,
    body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector {
        justify-content: flex-start !important;
    }
}

/* =========================================================
   SEARCH SUBMIT BUTTON — HARD RESET
========================================================= */

body.page-template-page-calendar-php .tribe-events button.tribe-common-c-btn.tribe-events-c-search__button,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-search__button {
    all: unset;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;

    min-width: 132px !important;
    height: 50px !important;
    padding: 0 20px !important;

    border-radius: 999px !important;
    border: 0 !important;

    background: linear-gradient(180deg, var(--maroon-light), var(--maroon)) !important;
    color: #fff !important;

    font-size: 15px !important;
    font-weight: 800 !important;
    font-family: inherit !important;
    line-height: 1 !important;
    letter-spacing: .01em !important;
    text-decoration: none !important;
    text-align: center !important;
    white-space: nowrap !important;

    opacity: 1 !important;
    visibility: visible !important;
    text-indent: 0 !important;
    overflow: visible !important;

    box-shadow: 0 12px 26px rgba(90, 0, 17, .18) !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

body.page-template-page-calendar-php .tribe-events button.tribe-common-c-btn.tribe-events-c-search__button:hover,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-search__button:hover,
body.page-template-page-calendar-php .tribe-events button.tribe-common-c-btn.tribe-events-c-search__button:focus,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-search__button:focus {
    background: linear-gradient(180deg, #8c2439, var(--maroon-dark)) !important;
    color: #fff !important;
    box-shadow: 0 16px 30px rgba(90, 0, 17, .22) !important;
    transform: translateY(-1px);
}

body.page-template-page-calendar-php .tribe-events button.tribe-common-c-btn.tribe-events-c-search__button::before,
body.page-template-page-calendar-php .tribe-events button.tribe-common-c-btn.tribe-events-c-search__button::after,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-search__button::before,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-search__button::after {
    content: none !important;
    display: none !important;
}

/* =========================================================
   OTHER MONTH DAYS
========================================================= */

body.page-template-page-calendar-php .tribe-events-calendar-month__day--other-month {
    background: linear-gradient(180deg, rgba(246, 243, 238, .96), rgba(242, 238, 232, .92)) !important;
    opacity: 1 !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day--other-month .tribe-events-calendar-month__day-date,
body.page-template-page-calendar-php .tribe-events-calendar-month__day--other-month .tribe-events-calendar-month__day-date-link,
body.page-template-page-calendar-php .tribe-events-calendar-month__day--other-month .tribe-events-calendar-month__day-date-tag {
    color: #8d8589 !important;
    opacity: 1 !important;
}

/* tighter top controls */
body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar {
    grid-template-columns: minmax(280px, 1fr) auto auto !important;
    column-gap: 10px !important;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-search__button {
    min-width: 140px !important;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-view-selector,
body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__views {
    justify-self: end !important;
}

body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar__datepicker-time {
    color: var(--maroon-dark) !important;
    font-size: 30px !important;
    font-weight: 850 !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day--current {
    box-shadow:
        inset 0 0 0 2px rgba(246, 199, 76, .56),
        0 10px 24px rgba(246, 199, 76, .12);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day--other-month {
    background: linear-gradient(180deg, rgba(248, 246, 242, .96), rgba(244, 241, 236, .92)) !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event {

    border-radius: 999px;
    padding: 5px 10px;

    background: linear-gradient(180deg,
            #8d001c 0%,
            #6e0016 100%);

    box-shadow:
        0 2px 6px rgba(0, 0, 0, .18),
        inset 0 1px 0 rgba(255, 255, 255, .15);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event:hover {

    transform: translateY(-1px);

    box-shadow:
        0 6px 12px rgba(0, 0, 0, .18),
        inset 0 1px 0 rgba(255, 255, 255, .18);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day-date,
body.page-template-page-calendar-php .tribe-events-calendar-month__day-date-link {

    font-weight: 700;
    letter-spacing: .02em;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day {

    border-color: rgba(0, 0, 0, .06);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day:hover {

    background: rgba(255, 255, 255, .65);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__header {

    background: linear-gradient(180deg,
            rgba(246, 199, 76, .12) 0%,
            rgba(246, 199, 76, .03) 100%);

    border-bottom: 1px solid rgba(246, 199, 76, .35);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day {

    background: linear-gradient(180deg,
            rgba(255, 255, 255, .95),
            rgba(248, 246, 242, .92));
}

body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event:hover {

    transform: translateY(-1px);

    box-shadow:
        0 6px 14px rgba(0, 0, 0, .18),
        inset 0 1px 0 rgba(255, 255, 255, .18);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__header {

    background: linear-gradient(180deg,
            rgba(246, 199, 76, .08) 0%,
            rgba(246, 199, 76, .02) 100%);

    border-bottom: 1px solid rgba(246, 199, 76, .25);
}

body.page-template-page-calendar-php .tribe-events-calendar-month__day--current {

    box-shadow:
        inset 0 0 0 2px rgba(246, 199, 76, .45),
        0 8px 18px rgba(246, 199, 76, .10);
}

/* =========================================
   Calendar Navigation Polish
========================================= */

/* arrows */
body.page-template-page-calendar-php .tribe-events-c-top-bar__nav-link {

    display: flex;
    align-items: center;
    justify-content: center;

    width: 36px;
    height: 36px;

    border-radius: 999px;

    background: rgba(255, 255, 255, .65);

    transition:
        background .18s ease,
        box-shadow .18s ease,
        transform .18s ease;
}

body.page-template-page-calendar-php .tribe-events-c-top-bar__nav-link:hover {

    background: rgba(90, 0, 17, .08);

    transform: translateY(-1px);

    box-shadow: 0 4px 10px rgba(0, 0, 0, .12);
}


/* THIS MONTH button */

body.page-template-page-calendar-php .tribe-events-c-top-bar__today-button {

    border-radius: 999px;

    padding: 6px 14px;

    font-weight: 600;

    background: rgba(255, 255, 255, .75);

    border: 1px solid rgba(0, 0, 0, .08);

    transition:
        background .18s ease,
        box-shadow .18s ease;
}

body.page-template-page-calendar-php .tribe-events-c-top-bar__today-button:hover {

    background: rgba(246, 199, 76, .12);

    box-shadow: 0 4px 12px rgba(0, 0, 0, .10);
}


/* month dropdown */

body.page-template-page-calendar-php .tribe-events-c-top-bar__datepicker-time {

    letter-spacing: .02em;

    font-weight: 800;
}

body.page-template-page-calendar-php .tribe-events-c-top-bar__datepicker-button:hover {

    color: var(--maroon);
}

/* Remove blue focus box from month dropdown */

body.page-template-page-calendar-php .tribe-events-c-top-bar__datepicker-button:focus,
body.page-template-page-calendar-php .tribe-events-c-top-bar__datepicker-button:focus-visible {

    outline: none !important;
    box-shadow: none !important;
}

/* tighten weekday gold highlight */

body.page-template-page-calendar-php .tribe-events-calendar-month__header {

    background: linear-gradient(180deg,
            rgba(246, 199, 76, .06) 0%,
            rgba(246, 199, 76, .015) 60%,
            transparent 100%);

    border-bottom: 1px solid rgba(246, 199, 76, .22);
}

/* =========================================
   Calendar Mobile Improvements
========================================= */

@media (max-width: 768px) {

    /* reduce padding around calendar container */
    body.page-template-page-calendar-php .tribe-events {

        padding-left: 10px;
        padding-right: 10px;
    }


    /* stack top bar controls nicely */
    body.page-template-page-calendar-php .tribe-events .tribe-events-c-top-bar {

        grid-template-columns: 1fr;
        row-gap: 10px;
    }


    /* make search full width */
    body.page-template-page-calendar-php .tribe-events-c-search {

        width: 100%;
    }


    /* shrink event pills slightly */
    body.page-template-page-calendar-php .tribe-events-calendar-month__calendar-event {

        font-size: 12px;
        padding: 4px 8px;
    }


    /* slightly taller day cells for readability */
    body.page-template-page-calendar-php .tribe-events-calendar-month__day {

        min-height: 90px;
    }


    /* tighten day numbers */
    body.page-template-page-calendar-php .tribe-events-calendar-month__day-date {

        font-size: 14px;
    }

}


/* =========================================================
   MULTI-DAY EVENT BARS — ACTUAL FIX
========================================================= */

/* wrapper spacing so the whole multiday event sits like the single-day top pill */
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event-wrapper {
    margin: 4px 0 6px 0 !important;
}

/* reset article/wrapper noise */
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event,
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event-bar {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* visible stretched bar */
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event-bar-inner,
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event-bar-inner--hover {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 24px !important;
    height: 24px !important;
    padding: 1px 10px !important;
    box-sizing: border-box !important;

    background: linear-gradient(180deg, #640011 0%, #47000c 100%) !important;
    color: #fff !important;

    border: 1px solid rgba(255, 255, 255, .07) !important;
    box-shadow:
        0 3px 8px rgba(0, 0, 0, .16),
        inset 0 1px 0 rgba(255, 255, 255, .08) !important;

    border-radius: 3px !important;
}

/* default title styling */
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event-bar-title,
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event-bar-title a {
    color: #fff !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: -.01em !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* start cap */
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event--start .tribe-events-calendar-month__multiday-event-bar-inner,
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event--start .tribe-events-calendar-month__multiday-event-bar-inner--hover {
    border-top-left-radius: 999px !important;
    border-bottom-left-radius: 999px !important;
    border-top-right-radius: 3px !important;
    border-bottom-right-radius: 3px !important;
}

/* middle segment */
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event--middle .tribe-events-calendar-month__multiday-event-bar-inner,
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event--middle .tribe-events-calendar-month__multiday-event-bar-inner--hover {
    border-radius: 3px !important;
}

/* end cap */
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event--end .tribe-events-calendar-month__multiday-event-bar-inner,
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event--end .tribe-events-calendar-month__multiday-event-bar-inner--hover {
    border-top-right-radius: 999px !important;
    border-bottom-right-radius: 999px !important;
    border-top-left-radius: 3px !important;
    border-bottom-left-radius: 3px !important;
}

/* fix radius for width-1 multiday events */

body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event--width-1 .tribe-events-calendar-month__multiday-event-bar-inner,
body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event--width-1 .tribe-events-calendar-month__multiday-event-bar-inner--hover {
    border-top-left-radius: 2px !important;
    border-bottom-left-radius: 2px !important;
    border-top-right-radius: 4px !important;
    border-bottom-right-radius: 4px !important;
}

body.page-template-page-calendar-php .tribe-events-calendar-month__multiday-event--width-1.tribe-events-calendar-month__multiday-event--start .tribe-events-calendar-month__multiday-event-bar-inner {
    border-top-left-radius: 4px !important;
    border-bottom-left-radius: 4px !important;
    border-top-right-radius: 2px !important;
    border-bottom-right-radius: 2px !important;
}
