/* ==========================================================================
   The Events Calendar — Professional/Classic Theme
   Built for Risehand theme + BvAT brand tokens (--color-set-one-*, --heading-color-one, etc.)
   ========================================================================== */

:root {
  --tec-font-family-sans-serif: var(--font-family-main) !important;
  --tec-font-family-serif: var(--font-family-heading, 'Fraunces', Georgia, serif);
  --tec-color-text-primary: var(--heading-color-one) !important;
  --tec-color-border-secondary: var(--color-set-one-bor-1) !important;

  --tec-font-size-0: 16px;
  --tec-font-size-1: 16px;
  --tec-font-size-2: 16px;

  --tec-color-link-accent: var(--color-set-one-1) !important;
  --tec-color-border-default: var(--color-set-one-bor-1) !important;
  --tec-color-background-secondary-datepicker: var(--color-set-one-bg-l-1) !important;
  --tec-color-accent-primary: var(--color-set-one-2) !important;
  --tec-color-background-view-selector-list-item-hover: var(--color-set-one-bg-l-3) !important;
  --tec-color-border-active-month-grid-hover: var(--color-set-one-1) !important;
  --tec-color-accent-primary-background-datepicker: var(--color-set-one-1) !important;

  /* New tokens for a more classic, editorial feel */
  --tec-radius-lg: 1.5rem;
  --tec-radius-md: 1rem;
  --tec-radius-pill: 999px;
  --tec-shadow-soft: 0 4px 20px rgba(20, 20, 20, 0.06);
  --tec-shadow-card: 0 2px 10px rgba(20, 20, 20, 0.05);
  --tec-transition: all 0.25s ease;
}

/* --------------------------------------------------------------------------
   Single Event Page Shell
   -------------------------------------------------------------------------- */
.tribe-events-single {
  position: relative;
  padding: 48px;
  border-radius: var(--tec-radius-lg);
  border: 1px solid var(--color-set-one-bor-1);
  background: var(--background-white);
  box-shadow: var(--tec-shadow-soft);
}

.tribe-events-single .tribe-events-back {
  position: absolute;
  top: -22px;
  right: 50px;
  margin: unset !important;
  min-height: 40px;
  padding: 8px 24px;
  background: var(--color-set-one-1);
  border-top-left-radius: var(--tec-radius-md);
  border-top-right-radius: var(--tec-radius-md);
  box-shadow: var(--tec-shadow-card);
  transition: var(--tec-transition);
}
.tribe-events-single .tribe-events-back:hover {
  background: var(--color-set-one-2);
}
.tribe-events-single .tribe-events-back * {
  color: var(--color-white) !important;
  font-weight: 600;
  letter-spacing: 0.01em;
}

/* Event title — classic serif treatment, matches Fraunces/IBM Plex pairing */
.tribe-events-single .tribe-events-single-event-title,
.single-tribe_events h1.tribe-events-single-event-title {
  font-family: var(--tec-font-family-serif);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.01em;
  margin-bottom: 1.25rem;
  color: var(--heading-color-one);
}

/* --------------------------------------------------------------------------
   Month Grid
   -------------------------------------------------------------------------- */
html body div .tribe-events-calendar-month__calendar-event-datetime * {
  font-size: 16px !important;
  font-weight: 500 !important;
  color: var(--content-color-one) !important;
  font-family: var(--font-family-main);
}

html body div .tribe-events-calendar-month__calendar-event-datetime {
  margin-bottom: 0.5rem;
}

.tribe-events .datepicker .month.current {
  color: var(--color-white) !important;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__day-cell--desktop * {
  font-size: 17px;
  color: var(--heading-color-one);
  font-weight: 700;
  opacity: 1;
}

.tribe-events .tribe-events-calendar-month {
  margin-bottom: 40px !important;
  border-radius: var(--tec-radius-md);
  overflow: hidden;
}

.tribe-events-calendar-month__day--past-month {
  opacity: 0.35 !important;
}

/* --------------------------------------------------------------------------
   View Selector Tabs
   -------------------------------------------------------------------------- */
.tribe-events .tribe-events-c-view-selector__list-item-text {
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.tribe-events .tribe-events-c-view-selector--tabs .tribe-events-c-view-selector__list-item--active {
  background: var(--color-set-one-2);
  border-radius: var(--tec-radius-pill);
  transition: var(--tec-transition);
}

.tribe-events .tribe-events-c-view-selector--tabs .tribe-events-c-view-selector__list-item--active * {
  color: var(--color-white);
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-c-view-selector--tabs .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link:after {
  background: var(--background-white) !important;
}

/* --------------------------------------------------------------------------
   List / Latest-Past Event Cards
   -------------------------------------------------------------------------- */
.tribe-events-calendar-latest-past__heading {
  margin-bottom: 32px !important;
  font-family: var(--tec-font-family-serif);
  font-weight: 600;
}

.tribe-events-calendar-latest-past__event-row,
.tribe-events-calendar-list__event-row {
  padding: 32px 28px !important;
  background: var(--color-set-one-bg-l-1) !important;
  border-radius: var(--tec-radius-md) !important;
  border: 1px solid var(--color-set-one-bor-1);
  box-shadow: var(--tec-shadow-card);
  transition: var(--tec-transition);
}
.tribe-events-calendar-latest-past__event-row:hover,
.tribe-events-calendar-list__event-row:hover {
  box-shadow: var(--tec-shadow-soft);
  transform: translateY(-2px);
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-latest-past__event-row,
.tribe-events-calendar-list__event-row,
.tribe-events-calendar-list__month-separator {
  margin: 0 0 24px !important;
}

.tribe-events-calendar-list__month-separator {
  font-family: var(--tec-font-family-serif);
  font-weight: 600;
  color: var(--heading-color-one);
}

.tribe-events .tribe-events-calendar-latest-past__event-date-tag-datetime {
  justify-content: center;
  align-items: center;
  max-height: 100px;
  background: var(--background-white);
  border-radius: var(--tec-radius-pill);
  box-shadow: var(--tec-shadow-card);
}

/* --------------------------------------------------------------------------
   Container Resets
   -------------------------------------------------------------------------- */
body .tribe-events-l-container {
  padding: 0px !important;
  max-width: unset !important;
  margin: 0px !important;
}
body .tribe-events-pg-template {
  max-width: unset !important;
  padding: 0px;
  margin: 0px;
}

.tribe-events-calendar-list-nav {
  margin-bottom: 32px !important;
}

/* --------------------------------------------------------------------------
   Buttons — Subscribe / Common Buttons
   -------------------------------------------------------------------------- */
.single-tribe_events .tribe-events-c-subscribe-dropdown__button,
.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn,
.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn,
.tribe-common--breakpoint-medium.tribe-common button.tribe-common-c-btn,
.tribe-block__events-link .tribe-events-c-subscribe-dropdown__button,
.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn-border,
.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn-border {
  border-color: var(--color-set-one-1) !important;
  background-color: var(--color-set-one-1) !important;
  color: var(--color-white) !important;
  border-radius: var(--tec-radius-pill);
  width: unset !important;
  font-weight: 600;
  letter-spacing: 0.01em;
  transition: var(--tec-transition);
  box-shadow: var(--tec-shadow-card);
}
.single-tribe_events .tribe-events-c-subscribe-dropdown__button:hover,
.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn:hover,
.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn:hover,
.tribe-common--breakpoint-medium.tribe-common button.tribe-common-c-btn:hover,
.tribe-block__events-link .tribe-events-c-subscribe-dropdown__button:hover,
.tribe-common--breakpoint-medium.tribe-common .tribe-common-c-btn-border:hover,
.tribe-common--breakpoint-medium.tribe-common a.tribe-common-c-btn-border:hover {
  border-color: var(--color-set-one-2) !important;
  background-color: var(--color-set-one-2) !important;
  box-shadow: var(--tec-shadow-soft);
  transform: translateY(-1px);
}

.single-tribe_events .tribe-events .tribe-events-c-subscribe-dropdown__container,
.tribe-block__events-link .tribe-events .tribe-events-c-subscribe-dropdown__container {
  width: 260px !important;
  border-radius: var(--tec-radius-md);
  box-shadow: var(--tec-shadow-soft);
}

/* --------------------------------------------------------------------------
   Content Typography
   -------------------------------------------------------------------------- */
.tribe-events-content ul,
.tribe-events-content ol,
.tribe-events-notices ul,
.tribe-events-notices ol {
  padding: 0px !important;
}
.tribe-events-content ol li,
.tribe-events-content ul li,
.tribe-events-content p,
.tribe-events-notices ol li,
.tribe-events-notices ul li,
.tribe-events-notices p {
  color: var(--content-color-one);
  line-height: 1.75;
  font-size: 17px;
}

.tribe-common .tribe-common-c-svgicon--messages-not-found path {
  stroke: var(--color-white) !important;
}

.tribe-events-c-subscribe-dropdown {
  margin-top: 0px !important;
}

.tribe-events-meta-group a {
  color: var(--color-set-one-1);
  font-weight: 500;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: var(--tec-transition);
}
.tribe-events-meta-group a:hover {
  border-bottom-color: var(--color-set-one-1);
}

/* --------------------------------------------------------------------------
   Schedule Pill
   -------------------------------------------------------------------------- */
.tribe-events-schedule {
  text-align: center;
  background: var(--color-set-one-bg-l-1);
  justify-content: center;
  border-radius: var(--tec-radius-pill);
  max-width: -moz-fit-content;
  max-width: fit-content;
  padding: 8px 28px;
  border: 1px solid var(--color-set-one-bor-1);
}
.tribe-events-schedule * {
  font-size: 18px;
  font-weight: 500;
}

/* --------------------------------------------------------------------------
   Pagination / Navigation
   -------------------------------------------------------------------------- */
.tribe-events-nav-pagination,
.tribe-events .tribe-events-c-nav__list {
  position: relative;
  padding: 0px;
}

.tribe-events-nav-pagination ul,
.tribe-events .tribe-events-c-nav__list {
  gap: 1rem;
  padding: 0px !important;
  text-align: center;
}
.tribe-events-nav-pagination ul li,
.tribe-events .tribe-events-c-nav__list li {
  margin: 0px;
  padding: 0px;
}
.tribe-events-nav-pagination ul li a,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__next,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__prev,
.tribe-events .tribe-events-c-nav__list li a,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__next,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__prev {
  padding: 12px 22px !important;
  border: 1px solid var(--color-set-one-bor-1) !important;
  border-radius: var(--tec-radius-pill) !important;
  font-size: 17px !important;
  line-height: 24px !important;
  color: var(--heading-color-one) !important;
  font-weight: 600 !important;
  display: flex;
  gap: 0.5rem;
  transition: var(--tec-transition);
}
.tribe-events-nav-pagination ul li a::before,
.tribe-events-nav-pagination ul li a::after,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__next::before,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__next::after,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__prev::before,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__prev::after,
.tribe-events .tribe-events-c-nav__list li a::before,
.tribe-events .tribe-events-c-nav__list li a::after,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__next::before,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__next::after,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__prev::before,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__prev::after {
  display: none !important;
}
.tribe-events-nav-pagination ul li a svg path,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__next svg path,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__prev svg path,
.tribe-events .tribe-events-c-nav__list li a svg path,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__next svg path,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__prev svg path {
  fill: var(--heading-color-one) !important;
  transition: var(--tec-transition);
}
.tribe-events-nav-pagination ul li a span,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__next span,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__prev span,
.tribe-events .tribe-events-c-nav__list li a span,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__next span,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__prev span {
  display: inline-flex !important;
}
.tribe-events-nav-pagination ul li a:hover,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__next:hover,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__prev:hover,
.tribe-events .tribe-events-c-nav__list li a:hover,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__next:hover,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__prev:hover {
  background: var(--color-set-one-1);
  border-color: var(--color-set-one-1);
  color: var(--color-white) !important;
  box-shadow: var(--tec-shadow-card);
}
.tribe-events-nav-pagination ul li a:hover svg path,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__next:hover svg path,
.tribe-events-nav-pagination ul li .tribe-events-c-nav__prev:hover svg path,
.tribe-events .tribe-events-c-nav__list li a:hover svg path,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__next:hover svg path,
.tribe-events .tribe-events-c-nav__list li .tribe-events-c-nav__prev:hover svg path {
  fill: var(--color-white) !important;
}

.tribe-events-calendar-day-nav.tribe-events-c-nav {
  margin-bottom: 32px !important;
}

/* --------------------------------------------------------------------------
   Top Bar
   -------------------------------------------------------------------------- */
.tribe-events-c-top-bar__nav-list {
  padding: 0px !important;
  align-items: center;
}
.tribe-events-c-top-bar__nav-list li a {
  width: 48px !important;
  height: 48px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 50px;
  border: 1px solid var(--color-set-one-bor-1) !important;
  transition: var(--tec-transition);
}
.tribe-events-c-top-bar__nav-list li a:hover {
  background: var(--color-set-one-bg-l-1);
  border-color: var(--color-set-one-1) !important;
}

.tribe-events-c-top-bar__today-button {
  min-height: 48px !important;
  background-color: var(--color-set-one-2) !important;
  border-color: var(--color-set-one-2) !important;
  color: var(--color-white) !important;
  font-size: 17px !important;
  line-height: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: var(--tec-radius-pill) !important;
  font-weight: 700 !important;
  padding: 10px 22px !important;
  transition: var(--tec-transition);
}
.tribe-events-c-top-bar__today-button:hover {
  background-color: var(--color-set-one-1) !important;
  border-color: var(--color-set-one-1) !important;
}

.admin-bar .tribe-events .datepicker {
  padding: 12px !important;
}

/* --------------------------------------------------------------------------
   Datepicker
   -------------------------------------------------------------------------- */
.tribe-events .datepicker .month,
.tribe-events .datepicker .year {
  font-weight: 600;
  line-height: normal;
  font-size: 17px;
}

.tribe-events .datepicker .datepicker-months .next,
.tribe-events .datepicker .datepicker-months .prev,
.tribe-events .datepicker .datepicker-years .datepicker-switch,
.tribe-events .datepicker .datepicker-years .next,
.tribe-events .datepicker .datepicker-years .prev {
  padding: 10px !important;
  background-color: var(--color-set-one-bg-l-1) !important;
  border-radius: 8px;
}

.tribe-common .tribe-common-form-control-text__input:focus {
  border-color: var(--color-set-one-1) !important;
  outline: unset;
}

.tribe-events .datepicker .datepicker-months .datepicker-switch {
  background: unset !important;
  margin: 0 !important;
  padding: 0px !important;
  font-size: 22px;
  font-weight: 700;
  font-family: var(--tec-font-family-serif);
  color: var(--color-set-one-1);
}

/* --------------------------------------------------------------------------
   Messages
   -------------------------------------------------------------------------- */
.tribe-events .tribe-events-c-messages__message {
  background: var(--color-set-one-2);
  border-radius: var(--tec-radius-md);
}

.tribe-events .tribe-events-c-messages__message * {
  font-size: 17px;
  font-weight: 600;
  color: var(--color-white);
}

.post-type-archive-tribe_events button:focus {
  border-color: unset !important;
  box-shadow: unset !important;
  outline: unset !important;
}

.tribe-events button.tribe-events-c-top-bar__datepicker-button {
  font-size: 19px !important;
  line-height: 28px !important;
  font-weight: 700 !important;
  color: var(--heading-color-one) !important;
  font-family: var(--tec-font-family-serif);
}

#tribe-events-footer {
  border-top: 0px;
}

/* --------------------------------------------------------------------------
   Venue & Meta
   -------------------------------------------------------------------------- */
.tribe-events-start-date-label,
.tribe-events-start-time-label,
.tribe-venue,
.tribe-venue-tel-label {
  font-weight: 600;
  color: var(--heading-color-one);
}

.tribe-events-venue-map {
  border-radius: var(--tec-radius-md);
  overflow: hidden;
  margin: 0px !important;
  box-shadow: var(--tec-shadow-card);
}

.tribe-events-venue-map,
.tribe-events-venue-map > iframe {
  max-height: 400px !important;
}

.tribe-events-event-meta {
  display: flex;
  width: 100% !important;
  padding: 28px 40px !important;
  border: unset !important;
  background-color: var(--color-set-one-bg-l-1) !important;
  justify-content: center;
  border-radius: var(--tec-radius-md);
  margin-bottom: 1.5rem !important;
}
.tribe-events-event-meta .tribe-events-meta-group {
  width: 33.33% !important;
  min-width: 33.33%;
  flex: unset !important;
  margin: unset !important;
  padding: unset !important;
  border: unset !important;
}

.tribe-events-event-meta:before,
.tribe-events-event-meta ~ div:not(.tribe-events-event-meta, .event-tickets) {
  display: none;
}

.tribe-events-event-image img {
  width: 100%;
  height: auto;
  border-radius: var(--tec-radius-md);
  margin-bottom: 1.5rem;
}

.tribe-events-single .tribe-events-sub-nav {
  flex-wrap: wrap;
  gap: 0.75rem;
}

/* --------------------------------------------------------------------------
   Sidebar Widgets
   -------------------------------------------------------------------------- */
.single-tribe_events .all_side_bar .widget {
  padding: 30px 40px 38px;
  border-radius: var(--tec-radius-md);
  background: var(--color-set-one-bg-l-1);
  box-shadow: var(--tec-shadow-card);
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width: 992px) {
  .single-tribe_events .all_side_bar {
    margin-top: 32px;
  }
}

@media (max-width: 768px) {
  .tribe-events-event-meta {
    padding: 20px !important;
  }
  .tribe-events-single .tribe-events-sub-nav {
    justify-content: center;
  }
  .tribe-events-single {
    padding: 24px 0px 0px;
    border-radius: unset;
    border-top-width: 1px;
    border-left-width: 0;
    border-right-width: 0;
    border-bottom-width: 0;
    box-shadow: none;
  }
  .tribe-events-single .tribe-events-back {
    top: -20px;
    right: 20px;
  }
  .tribe-events-schedule {
    padding: 6px 18px;
  }
  .tribe-events-schedule * {
    font-size: 15px;
  }
  .tribe-events-event-meta {
    flex-wrap: wrap;
  }
  .tribe-events-event-meta .tribe-events-meta-group {
    width: 47% !important;
    min-width: 47%;
  }
  .single-tribe_events .all_side_bar .widget {
    padding: 18px 22px 22px;
  }
}

@media (min-width: 1024px) {
  .tribe-common--breakpoint-medium.tribe-events .tribe-events-c-nav__list-item {
    width: 48% !important;
  }
}
/*# sourceMappingURL=events.css.map */