/* =============================================================================
   The Mad House Newcastle — Events Calendar Pro — Full Dark Theme
   ============================================================================= */

/* ═══════════════════════════════════════════════════════════════════════════
   The Mad House — Events Calendar Pro — Full Dark Theme  (v2)
   Covers: list/latest-past view, month, day, single event, archives
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── TEC CSS variable overrides ─────────────────────────────────────────── */
.tribe-events-page-template {
  --tec-color-accent-primary:           #F95FA0;
  --tec-color-accent-primary-hover:     #e04090;
  --tec-color-accent-primary-active:    #e04090;
  --tec-color-background-primary:       #000000;
  --tec-color-background-secondary:     #111111;
  --tec-color-text-primary:             #ffffff;
  --tec-color-text-secondary:           #aaaaaa;
  --tec-color-background-primary-alt:   #0d0d0d;
  --tec-color-background-secondary-alt: #111111;
  --tec-color-background-view-selector: #0d0d0d;
  --tec-color-accent-secondary:         #F95FA0;
  --tec-color-text-view-selector-list-item: #cccccc;
  --tec-color-text-view-selector-list-item-hover: #F95FA0;
  --tec-color-border-events-bar:        rgba(249,95,160,0.6);
  --tec-color-border-secondary:         #333333;
  --tec-color-background-events-bar:    #0d0d0d;
  --tec-color-background:               #000000;
  --tec-font-family-sans-serif:         'Albert Sans', sans-serif;
  --tec-font-family-base:               'Albert Sans', sans-serif;
  background: #000 !important;
}

/* ── Page scaffold ───────────────────────────────────────────────────────── */
.tribe-events-page-template,
.tribe-events-page-template .tribe-events,
.tribe-events-page-template .tribe-events-l-container,
.tribe-events-page-template .tribe-common-l-container {
  background: #000 !important;
  color: #fff !important;
}
.tribe-events-page-template #page,
.tribe-events-page-template #content,
.tribe-events-page-template #primary,
.tribe-events-page-template #main,
.tribe-events-page-template .entry-content,
.tribe-events-page-template .ast-container {
  background: #000 !important;
}
.tribe-events-page-template .tribe-events-l-container { max-width: 1040px !important; }

/* ── Reset Astra article/post bg ────────────────────────────────────────── */
.tribe-events-page-template .ast-article-post,
.tribe-events-page-template .ast-article-single,
.tribe-events-page-template .ast-grid-common-col,
.tribe-events-page-template .ast-separate-container .ast-article-post,
.tribe-events-page-template .ast-separate-container .ast-article-single,
.tribe-events-page-template .ast-article-post:hover {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}
body.single-tribe_events .ast-article-post,
body.single-tribe_events .ast-article-single,
body.single-tribe_events .ast-separate-container .ast-article-post,
body.single-tribe_events .ast-separate-container .ast-article-single {
  background: #000 !important;
  box-shadow: none !important;
  border: none !important;
}

/* ── Events header bar ──────────────────────────────────────────────────── */
.tribe-events-page-template .tribe-events-header {
  background: #000 !important;
  border-bottom: 1px solid #1e1e1e !important;
}

/* ── "No upcoming events" / notices bar ─────────────────────────────────── */
.tribe-events-page-template .tribe-events-c-messages,
.tribe-events-page-template .tribe-events-c-messages__message,
.tribe-events-page-template .tribe-events-view-v2-messages,
.tribe-events-page-template .tribe-events-v2-messages,
.tribe-events-page-template .tribe-events-c-messages__inner,
.tribe-events-page-template [class*="tribe-events-c-messages"] {
  background: #1a1a1a !important;
  background-color: #1a1a1a !important;
  color: #aaaaaa !important;
  border: 1px solid #333 !important;
  border-radius: 6px !important;
  padding: 12px 20px !important;
}

/* ── Search bar ──────────────────────────────────────────────────────────── */
.tribe-events-page-template .tribe-events-c-events-bar,
.tribe-events-page-template .tribe-events-c-events-bar--border,
body .tribe-events-page-template .tribe-events .tribe-events-c-events-bar--border {
  background: #0d0d0d !important;
  border: 1px solid rgba(249,95,160,0.6) !important;
  border-radius: 6px !important;
}
/* Remove inner borders on search container and input controls */
.tribe-events-page-template .tribe-events-c-events-bar__search-container,
.tribe-events-page-template .tribe-events-c-search__input-control {
  border: none !important;
  border-color: transparent !important;
  background: transparent !important;
}
.tribe-events-page-template .tribe-common-form-control-text__input,
.tribe-events-page-template .tribe-events-c-search__input {
  background: #1a1a1a !important;
  border: 1px solid #2a2a2a !important;
  color: #fff !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 15px !important;
  border-radius: 4px !important;
  padding: 10px 14px !important;
}
.tribe-events-page-template .tribe-common-form-control-text__input::placeholder { color: #555 !important; }
.tribe-events-page-template .tribe-common-form-control-text__input:focus,
.tribe-events-page-template .tribe-events-c-search__input:focus {
  border-color: #F95FA0 !important;
  outline: none !important;
  box-shadow: none !important;
}
.tribe-events-page-template .tribe-common-form-control-text__label { color: #555 !important; }
.tribe-events-page-template .tribe-events-c-search__input-control-icon-svg path,
.tribe-events-page-template .tribe-events-c-events-bar__search-button-icon-svg path { fill: #555 !important; }
.tribe-events-page-template .tribe-common-c-btn.tribe-events-c-search__button,
.tribe-events-page-template .tribe-events-c-search__button {
  background: #F95FA0 !important;
  color: #000 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 900 !important;
  border: none !important;
  border-radius: 4px !important;
  padding: 11px 24px !important;
  font-size: 14px !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}

/* ── View selector tabs ──────────────────────────────────────────────────── */
.tribe-events-page-template .tribe-events-c-view-selector,
.tribe-events-page-template .tribe-events-c-view-selector--tabs,
.tribe-events-page-template .tribe-events-c-view-selector--labels,
.tribe-events-page-template .tribe-events-c-events-bar__views,
.tribe-events-page-template .tribe-events-c-events-bar--border,
.tribe-events-page-template .tribe-events-c-events-bar__main,
.tribe-events-page-template .tribe-events-c-events-bar__inner,
.tribe-events-page-template .tribe-events-c-events-bar__actions,
.tribe-events-page-template .tribe-events-c-events-bar__filter-button-bar {
  background: #0d0d0d !important;
  background-color: #0d0d0d !important;
}
/* Target the exact element TEC sets white — .tribe-events-c-view-selector__content */
.tribe-events-page-template .tribe-events-c-view-selector__content,
.tribe-events-page-template .tribe-events-c-view-selector--tabs .tribe-events-c-view-selector__content,
.tribe-events .tribe-events-c-view-selector--tabs .tribe-events-c-view-selector__content {
  background: #0d0d0d !important;
  background-color: #0d0d0d !important;
  border: none !important;
  box-shadow: none !important;
}
/* Active tab underline — keep pink */
.tribe-events-page-template .tribe-events-c-view-selector--tabs .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link:after {
  background-color: #F95FA0 !important;
}
.tribe-events-page-template .tribe-events-c-view-selector__list { list-style: none !important; }
.tribe-events-page-template .tribe-events-c-view-selector__list-item-link,
body .tribe-events-page-template .tribe-events .tribe-events-c-view-selector__list-item-link,
body .tribe-events-page-template .tribe-events-c-view-selector__list-item-text {
  color: #cccccc !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: .1em !important;
  border-bottom: 2px solid transparent !important;
  padding-bottom: 4px !important;
  text-decoration: none !important;
}
body .tribe-events-page-template .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link,
body .tribe-events-page-template .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-text {
  color: #F95FA0 !important;
  border-bottom-color: #F95FA0 !important;
}
.tribe-events-page-template .tribe-events-c-view-selector__list-item-icon svg path { fill: #aaaaaa !important; }
.tribe-events-page-template .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-icon svg path { fill: #F95FA0 !important; }
.tribe-events-page-template .tribe-events-c-view-selector__button {
  background: transparent !important;
  border: none !important;
  color: #aaaaaa !important;
}
/* Broad fallback — catches any TEC version's view selector text/buttons */
body .tribe-events-page-template [class*="view-selector"] button,
body .tribe-events-page-template [class*="view-selector"] a,
body .tribe-events-page-template [class*="view-selector"] span,
body .tribe-events-page-template [class*="view-selector"] [class*="list-item-link"],
body .tribe-events-page-template [class*="view-selector"] [class*="list-item-text"] {
  color: #cccccc !important;
}
body .tribe-events-page-template [class*="view-selector"] [class*="--active"] button,
body .tribe-events-page-template [class*="view-selector"] [class*="--active"] a,
body .tribe-events-page-template [class*="view-selector"] [class*="--active"] span {
  color: #F95FA0 !important;
}

/* ── Top bar (TODAY / date nav / arrows) ─────────────────────────────────── */
.tribe-events-page-template .tribe-events-c-top-bar {
  background: #000 !important;
  padding: 12px 0 !important;
}
.tribe-events-page-template .tribe-events-c-top-bar__today-button {
  color: #F95FA0 !important;
  font-family: 'Albert Sans', sans-serif !important;
  border: 1px solid rgba(249,95,160,.4) !important;
  border-radius: 4px !important;
  padding: 6px 14px !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  background: transparent !important;
}
.tribe-events-page-template .tribe-events-c-top-bar__today-button:hover {
  background: rgba(249,95,160,.08) !important;
}
.tribe-events-page-template .tribe-events-c-top-bar__datepicker-time,
.tribe-events-page-template .tribe-events-top-bar-date {
  color: #fff !important;
  font-family: 'Oswald', sans-serif !important;
  font-size: 20px !important;
  font-weight: 600 !important;
}
.tribe-events-page-template .tribe-events-c-top-bar__datepicker-button {
  color: #fff !important;
  background: transparent !important;
  border: none !important;
  font-family: 'Oswald', sans-serif !important;
  font-size: 18px !important;
}
/* Nav arrow buttons < > */
.tribe-events-page-template .tribe-common-c-btn-icon,
.tribe-events-page-template .tribe-events-c-top-bar__nav-link {
  background: #111 !important;
  border: 1px solid #333 !important;
  border-radius: 4px !important;
  color: #aaa !important;
  width: 32px !important;
  min-width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: border-color .2s, color .2s !important;
  overflow: visible !important;
}
.tribe-events-page-template .tribe-common-c-btn-icon:hover:not(:disabled),
.tribe-events-page-template .tribe-events-c-top-bar__nav-link:hover:not(:disabled) {
  border-color: #F95FA0 !important;
  color: #F95FA0 !important;
}
.tribe-events-page-template .tribe-common-c-btn-icon:disabled,
.tribe-events-page-template .tribe-events-c-top-bar__nav-link:disabled {
  opacity: .3 !important;
  cursor: default !important;
}
.tribe-events-page-template .tribe-common-c-btn-icon svg,
.tribe-events-page-template .tribe-events-c-top-bar__nav-link svg {
  width: 10px !important;
  height: 14px !important;
  display: block !important;
  flex-shrink: 0 !important;
  pointer-events: none !important;
}
.tribe-events-page-template .tribe-common-c-btn-icon svg path,
.tribe-events-page-template .tribe-events-c-top-bar__nav-link svg path {
  fill: currentColor !important;
}
/* SVG icon wrappers */
.tribe-events-page-template .tribe-common-c-svgicon {
  display: block !important;
  width: 10px !important;
  height: 14px !important;
}

/* ── Month separator ─────────────────────────────────────────────────────── */
.tribe-events-page-template .tribe-events-calendar-list__month-separator,
.tribe-events-page-template .tribe-events-calendar-latest-past__month-separator {
  list-style: none !important;
  border-bottom: 1px solid #1e1e1e !important;
  margin-bottom: 20px !important;
  padding-bottom: 14px !important;
}
.tribe-events-page-template .tribe-events-calendar-list__month-separator-text,
.tribe-events-page-template .tribe-events-calendar-latest-past__month-separator-text {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #555 !important;
  text-transform: uppercase !important;
  letter-spacing: .16em !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   LIST VIEW
   ══════════════════════════════════════════════════════════════════════════ */
.tribe-events-page-template .tribe-events-calendar-list { list-style: none !important; padding: 0 !important; }
.tribe-events-page-template .tribe-events-calendar-list__event-row {
  list-style: none !important;
  background: #111 !important;
  border-radius: 8px !important;
  margin-bottom: 12px !important;
  overflow: hidden !important;
  border: 1px solid #1e1e1e !important;
  transition: border-color .2s ease !important;
}
.tribe-events-page-template .tribe-events-calendar-list__event-row:hover { border-color: #F95FA0 !important; }
.tribe-events-page-template .tribe-events-calendar-list__event-date-tag {
  background: #0d0d0d !important;
  padding: 24px 16px !important;
  min-width: 72px !important;
  border-right: 1px solid #1e1e1e !important;
}
.tribe-events-page-template .tribe-events-calendar-list__event-date-tag-weekday {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: .1em !important;
  color: #555 !important;
}
.tribe-events-page-template .tribe-events-calendar-list__event-date-tag-daynum {
  font-family: 'Oswald', sans-serif !important;
  font-size: 40px !important;
  font-weight: 700 !important;
  color: #F95FA0 !important;
  line-height: 1 !important;
}
.tribe-events-page-template .tribe-events-calendar-list__event-wrapper,
.tribe-events-page-template .tribe-events-calendar-list__event {
  background: #111 !important;
  box-shadow: none !important;
  margin: 0 !important;
}
.tribe-events-page-template .tribe-events-calendar-list__event-title-link,
.tribe-events-page-template .tribe-events-calendar-list__event-title a,
.tribe-events-page-template .tribe-events-calendar-list__event-title-link:visited {
  color: #fff !important;
  text-decoration: none !important;
  font-family: 'Oswald', sans-serif !important;
  font-weight: 600 !important;
}
.tribe-events-page-template .tribe-events-calendar-list__event-title-link:hover { color: #F95FA0 !important; }
.tribe-events-page-template .tribe-events-calendar-list__event-datetime,
.tribe-events-page-template .tribe-events-calendar-list__event-datetime-wrapper {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 13px !important;
  color: #777 !important;
}
.tribe-events-page-template .tribe-events-calendar-list__event-venue {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 13px !important;
  color: #666 !important;
}
.tribe-events-page-template .tribe-events-calendar-list__event-description p {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 14px !important;
  color: #777 !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   LATEST / PAST VIEW
   ══════════════════════════════════════════════════════════════════════════ */
.tribe-events-page-template .tribe-events-calendar-latest-past__event-row {
  list-style: none !important;
  background: #111 !important;
  border-radius: 8px !important;
  margin-bottom: 12px !important;
  overflow: hidden !important;
  border: 1px solid #1e1e1e !important;
  transition: border-color .2s ease !important;
  display: flex !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-row:hover { border-color: #F95FA0 !important; }
.tribe-events-page-template .tribe-events-calendar-latest-past__event-date-tag {
  background: #0d0d0d !important;
  padding: 24px 16px !important;
  min-width: 80px !important;
  border-right: 1px solid #1e1e1e !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-date-tag-month {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  color: #555 !important;
  display: block !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-date-tag-daynum {
  font-family: 'Oswald', sans-serif !important;
  font-size: 40px !important;
  font-weight: 700 !important;
  color: #F95FA0 !important;
  line-height: 1 !important;
  display: block !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-date-tag-year {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 11px !important;
  color: #444 !important;
  display: block !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-wrapper,
.tribe-events-page-template .tribe-events-calendar-latest-past__event {
  background: #111 !important;
  box-shadow: none !important;
  margin: 0 !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-details {
  padding: 20px 24px !important;
  flex: 1 !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-title {
  font-family: 'Oswald', sans-serif !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  margin-bottom: 8px !important;
  line-height: 1.2 !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-title-link,
.tribe-events-page-template .tribe-events-calendar-latest-past__event-title a,
.tribe-events-page-template .tribe-events-calendar-latest-past__event-title-link:visited {
  color: #fff !important;
  text-decoration: none !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-title-link:hover,
.tribe-events-page-template .tribe-events-calendar-latest-past__event-title a:hover {
  color: #F95FA0 !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-datetime {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 13px !important;
  color: #777 !important;
  margin-bottom: 6px !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-venue {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 13px !important;
  color: #666 !important;
  font-style: normal !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-venue-title { color: #999 !important; font-weight: 600 !important; }
.tribe-events-page-template .tribe-events-calendar-latest-past__event-description p {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 14px !important;
  color: #777 !important;
  line-height: 1.65 !important;
  margin-top: 10px !important;
}
/* Featured image */
.tribe-events-page-template .tribe-events-calendar-latest-past__event-featured-image-wrapper {
  flex-shrink: 0 !important;
  max-width: 210px !important;
  align-self: stretch !important;
}
.tribe-events-page-template .tribe-events-calendar-latest-past__event-featured-image {
  width: 100% !important;
  height: 100% !important;
  min-height: 150px !important;
  object-fit: cover !important;
  display: block !important;
}

/* ── Shared event time colours ───────────────────────────────────────────── */
.tribe-events-page-template .tribe-event-date-start,
.tribe-events-page-template .tribe-event-time {
  color: #5BC8F5 !important;
  font-weight: 600 !important;
  font-family: 'Albert Sans', sans-serif !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   MONTH VIEW — tribe-events-calendar-month__* (correct class names)
   ══════════════════════════════════════════════════════════════════════════ */
/* CSS variable overrides for month day numbers */
.tribe-events-page-template {
  --tec-color-day-marker-month:                #F95FA0;
  --tec-color-day-marker-month-hover:          #e04090;
  --tec-color-day-marker-current-month:        #F95FA0;
  --tec-color-day-marker-past-month:           #666666;
  --tec-color-background-month-grid-body:      #111111;
  --tec-color-background-month-grid:           #0d0d0d;
  --tec-color-border-month-grid:               #222222;
}
/* Month header row (M T W T F S S) */
.tribe-events-page-template .tribe-events-calendar-month__header-row {
  background: #0d0d0d !important;
  border-bottom: 1px solid #222 !important;
}
.tribe-events-page-template .tribe-events-calendar-month__header-column-title {
  color: #aaaaaa !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .1em !important;
}
/* Month grid body */
.tribe-events-page-template .tribe-events-calendar-month__body,
.tribe-events-page-template .tribe-events-calendar-month {
  background: #0d0d0d !important;
  border: 1px solid #222 !important;
}
/* Individual day cells */
.tribe-events-page-template .tribe-events-calendar-month__day-cell {
  background: #111 !important;
  border-right: 1px solid #1a1a1a !important;
  border-bottom: 1px solid #1a1a1a !important;
  min-height: 90px !important;
}
.tribe-events-page-template .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-cell,
.tribe-events-page-template .tribe-events-calendar-month__day--selected .tribe-events-calendar-month__day-cell {
  background: rgba(249,95,160,0.12) !important;
}
/* Day number — pink */
.tribe-events-page-template .tribe-events-calendar-month__day-date,
.tribe-events-page-template .tribe-events-calendar-month__day-date-daynum,
.tribe-events-page-template .tribe-events-calendar-month__day-date-link {
  color: #F95FA0 !important;
  font-family: 'Oswald', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
/* Past days slightly dimmer */
.tribe-events-page-template .tribe-events-calendar-month__day--past .tribe-events-calendar-month__day-date,
.tribe-events-page-template .tribe-events-calendar-month__day--past .tribe-events-calendar-month__day-date-daynum,
.tribe-events-page-template .tribe-events-calendar-month__day--past .tribe-events-calendar-month__day-date-link {
  color: #cc4d80 !important;
  opacity: 0.7 !important;
}
/* Event pills */
.tribe-events-page-template .tribe-events-calendar-month__calendar-event {
  background: rgba(249,95,160,.15) !important;
  border-radius: 3px !important;
}
.tribe-events-page-template .tribe-events-calendar-month__calendar-event-title,
.tribe-events-page-template .tribe-events-calendar-month__calendar-event-title-link {
  color: #fff !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 11px !important;
  text-decoration: none !important;
}
.tribe-events-page-template .tribe-events-calendar-month__more-events-link {
  color: #F95FA0 !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 11px !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   DAY VIEW — Previous/Next Day buttons visible
   ══════════════════════════════════════════════════════════════════════════ */
.tribe-events-page-template .tribe-events-calendar-day__event-row {
  list-style: none !important;
  background: #111 !important;
  border-radius: 8px !important;
  margin-bottom: 12px !important;
  border: 1px solid #1e1e1e !important;
  overflow: hidden !important;
}
.tribe-events-page-template .tribe-events-calendar-day__event-row:hover { border-color: #F95FA0 !important; }
.tribe-events-page-template .tribe-events-calendar-day__event-title-link,
.tribe-events-page-template .tribe-events-calendar-day__event-title-link:visited {
  color: #fff !important;
  font-family: 'Oswald', sans-serif !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.tribe-events-page-template .tribe-events-calendar-day__event-title-link:hover { color: #F95FA0 !important; }
.tribe-events-page-template .tribe-events-calendar-day__event-datetime {
  color: #777 !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 13px !important;
}
/* Time marker line */
.tribe-events-page-template .tribe-events-calendar-day__time-separator,
.tribe-events-page-template .tribe-events-calendar-day__time-separator-text {
  color: #555 !important;
  border-color: #333 !important;
  font-family: 'Albert Sans', sans-serif !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   BOTTOM PAGINATION — PREVIOUS DAY / NEXT DAY + Previous Events / Next Events
   ══════════════════════════════════════════════════════════════════════════ */
.tribe-events-page-template .tribe-events-calendar-list-nav,
.tribe-events-page-template .tribe-events-c-nav {
  border-top: 1px solid #1e1e1e !important;
  padding-top: 28px !important;
  margin-top: 16px !important;
}
.tribe-events-page-template .tribe-events-c-nav__list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
}
.tribe-events-page-template .tribe-events-c-nav__list-item { list-style: none !important; }
.tribe-events-page-template button.tribe-events-c-nav__prev,
.tribe-events-page-template button.tribe-events-c-nav__next,
.tribe-events-page-template a.tribe-events-c-nav__prev,
.tribe-events-page-template a.tribe-events-c-nav__next,
.tribe-events-page-template .tribe-events-c-nav__prev,
.tribe-events-page-template .tribe-events-c-nav__next {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .07em !important;
  color: #ffffff !important;
  background: #1a1a1a !important;
  border: 1px solid #444 !important;
  border-radius: 4px !important;
  padding: 10px 18px !important;
  cursor: pointer !important;
  transition: border-color .2s, color .2s, background .2s !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  text-decoration: none !important;
}
.tribe-events-page-template button.tribe-events-c-nav__prev:not(:disabled):hover,
.tribe-events-page-template button.tribe-events-c-nav__next:not(:disabled):hover,
.tribe-events-page-template a.tribe-events-c-nav__prev:hover,
.tribe-events-page-template a.tribe-events-c-nav__next:hover {
  border-color: #F95FA0 !important;
  color: #F95FA0 !important;
  background: #1a1a1a !important;
}
.tribe-events-page-template button.tribe-events-c-nav__prev:disabled,
.tribe-events-page-template button.tribe-events-c-nav__next:disabled {
  opacity: .35 !important;
  cursor: not-allowed !important;
}
.tribe-events-page-template .tribe-events-c-nav__prev svg,
.tribe-events-page-template .tribe-events-c-nav__next svg {
  width: 8px !important;
  height: 13px !important;
  display: block !important;
  flex-shrink: 0 !important;
}
.tribe-events-page-template .tribe-events-c-nav__prev svg path,
.tribe-events-page-template .tribe-events-c-nav__next svg path { fill: currentColor !important; }
.tribe-events-page-template .tribe-events-c-nav__today,
.tribe-events-page-template a.tribe-events-c-nav__today {
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 12px !important;
  color: #F95FA0 !important;
  border: 1px solid rgba(249,95,160,.35) !important;
  border-radius: 4px !important;
  padding: 8px 16px !important;
  background: transparent !important;
  cursor: pointer !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  text-decoration: none !important;
}
.tribe-events-page-template .tribe-events-c-nav__today:hover { background: rgba(249,95,160,.08) !important; }

/* ══════════════════════════════════════════════════════════════════════════
   SINGLE EVENT PAGE
   ══════════════════════════════════════════════════════════════════════════ */
/* Scaffold */
.tribe-events-page-template.single-tribe_events #page,
.tribe-events-page-template.single-tribe_events #content,
.tribe-events-page-template.single-tribe_events #primary,
.tribe-events-page-template.single-tribe_events #main,
.tribe-events-page-template.single-tribe_events article,
.tribe-events-page-template.single-tribe_events .entry-content,
.tribe-events-page-template.single-tribe_events .tribe-events-single {
  background: #000 !important;
}
/* Hide Astra title + meta */
.tribe-events-page-template.single-tribe_events .entry-title,
.tribe-events-page-template.single-tribe_events .entry-meta,
.tribe-events-page-template.single-tribe_events .ast-post-format-content {
  display: none !important;
}
/* Event title h1 */
.tribe-events-page-template .tribe-events-single-event-title {
  color: #fff !important;
  font-family: 'Oswald', sans-serif !important;
  font-weight: 700 !important;
  font-size: 36px !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
  line-height: 1.15 !important;
  margin-bottom: 12px !important;
}
/* Schedule (date/time under title) */
.tribe-events-page-template .tribe-events-schedule {
  color: #777 !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 14px !important;
  margin-bottom: 16px !important;
  border-bottom: 1px solid #1e1e1e !important;
  padding-bottom: 16px !important;
}
/* Featured image */
.tribe-events-page-template .tribe-events-event-image img {
  border-radius: 8px !important;
  display: block !important;
  width: 100% !important;
  max-height: 500px !important;
  object-fit: cover !important;
}
/* Event description area */
.tribe-events-page-template .tribe-events-single-event-description,
.tribe-events-page-template .tribe-events-single-event-description p,
.tribe-events-page-template .tribe-events-single-event-description li {
  color: rgba(255,255,255,.75) !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}
.tribe-events-page-template .tribe-events-single-event-description a { color: #F95FA0 !important; }
.tribe-events-page-template .tribe-events-single-event-description h2,
.tribe-events-page-template .tribe-events-single-event-description h3 {
  color: #fff !important;
  font-family: 'Oswald', sans-serif !important;
}
/* Meta groups (Details, Venue, Organizer) — dark cards */
.tribe-events-page-template .tribe-events-meta-group,
.tribe-events-page-template .tribe-events-meta-group-gig,
.tribe-events-page-template .tribe-events-meta-group-venue,
.tribe-events-page-template .tribe-events-meta-group-organizer,
.tribe-events-page-template .tribe-events-event-meta,
.tribe-events-page-template .tribe-events-event-meta.primary,
.tribe-events-page-template .tribe-events-event-meta.secondary,
.tribe-events-page-template .tribe-venue-location {
  background: #111 !important;
  background-color: #111 !important;
  border: 1px solid #1e1e1e !important;
  border-radius: 8px !important;
  padding: 20px 24px !important;
  margin-bottom: 16px !important;
  color: #ccc !important;
}
.tribe-events-page-template .tribe-events-single-section-title {
  color: #fff !important;
  font-family: 'Oswald', sans-serif !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
  letter-spacing: .1em !important;
  border-bottom: 1px solid #1e1e1e !important;
  padding-bottom: 10px !important;
  margin-bottom: 12px !important;
}
.tribe-events-page-template .tribe-events-meta-list { list-style: none !important; padding: 0 !important; }
.tribe-events-page-template .tribe-events-meta-item { margin-bottom: 8px !important; }
.tribe-events-page-template .tribe-events-meta-label {
  color: #555 !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  display: block !important;
}
.tribe-events-page-template .tribe-events-meta-value,
.tribe-events-page-template .tribe-events-meta-value abbr,
.tribe-events-page-template .tribe-events-meta-group p,
.tribe-events-page-template .tribe-events-meta-group address {
  color: #ccc !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 14px !important;
}
.tribe-events-page-template .tribe-events-meta-group a,
.tribe-events-page-template .tribe-events-event-meta a {
  color: #F95FA0 !important;
  text-decoration: none !important;
}
.tribe-events-page-template .tribe-events-meta-group a:hover { text-decoration: underline !important; }
/* dt/dd labels in meta */
.tribe-events-page-template .tribe-events-event-meta dt {
  color: #555 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  font-family: 'Albert Sans', sans-serif !important;
}
.tribe-events-page-template .tribe-events-event-meta dd {
  color: #ccc !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 14px !important;
}
/* "All Events" back link */
.tribe-events-page-template .tribe-events-back a {
  color: #888 !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 13px !important;
  text-decoration: none !important;
}
.tribe-events-page-template .tribe-events-back a:hover { color: #F95FA0 !important; }
/* Single event navigation (Prev/Next event) */
.tribe-events-page-template .tribe-events-nav-pagination {
  border-top: 1px solid #1e1e1e !important;
  padding-top: 20px !important;
  margin-top: 20px !important;
}
.tribe-events-page-template .tribe-events-sub-nav { list-style: none !important; padding: 0 !important; display: flex !important; justify-content: space-between !important; }
.tribe-events-page-template .tribe-events-nav-previous a,
.tribe-events-page-template .tribe-events-nav-next a {
  color: #ffffff !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .07em !important;
  text-decoration: none !important;
  background: #1a1a1a !important;
  border: 1px solid #444 !important;
  border-radius: 4px !important;
  padding: 10px 18px !important;
  display: inline-block !important;
}
.tribe-events-page-template .tribe-events-nav-previous a:hover,
.tribe-events-page-template .tribe-events-nav-next a:hover {
  border-color: #F95FA0 !important;
  color: #F95FA0 !important;
}
/* "This event has passed" notice */
.tribe-events-page-template .tribe-events-notices,
.tribe-events-page-template .tribe-events-notices li {
  background: #1a1a1a !important;
  border: 1px solid #2a2a2a !important;
  border-radius: 6px !important;
  color: #aaa !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 13px !important;
  list-style: none !important;
  padding: 10px 16px !important;
  margin-bottom: 16px !important;
}
/* Add to calendar button */
.tribe-events-page-template .tribe-events-widget-countdown__header,
.tribe-events-page-template .tribe-block__event-links a,
.tribe-events-page-template .tribe-events-gcal,
.tribe-events-page-template .tribe-events-ical {
  color: #F95FA0 !important;
  border-color: rgba(249,95,160,.4) !important;
  font-family: 'Albert Sans', sans-serif !important;
}

/* ── Subscribe dropdown ──────────────────────────────────────────────────── */
.tribe-events-page-template .tribe-common-c-btn-border,
.tribe-events-page-template .tribe-events-c-subscribe-dropdown__button {
  border: 1px solid #333 !important;
  border-radius: 4px !important;
  background: #111 !important;
}
.tribe-events-page-template .tribe-events-c-subscribe-dropdown__button button {
  color: #999 !important;
  background: transparent !important;
  border: none !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 12px !important;
  padding: 8px 14px !important;
  cursor: pointer !important;
}
.tribe-events-page-template .tribe-events-c-subscribe-dropdown__button svg path { fill: #666 !important; }
.tribe-events-page-template .tribe-events-c-subscribe-dropdown__container,
.tribe-events-page-template .tribe-events-c-subscribe-dropdown__content {
  background: #1a1a1a !important;
  border: 1px solid #2a2a2a !important;
  border-radius: 6px !important;
}
.tribe-events-page-template .tribe-events-c-subscribe-dropdown__list-item {
  background: #1a1a1a !important;
}
.tribe-events-page-template .tribe-events-c-subscribe-dropdown__list-item-link {
  color: #ccc !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 13px !important;
  text-decoration: none !important;
  background: transparent !important;
  padding: 8px 14px !important;
  display: block !important;
}
.tribe-events-page-template .tribe-events-c-subscribe-dropdown__list-item-link:hover {
  color: #F95FA0 !important;
  background: #252525 !important;
}

/* ── Loader + no-events text ──────────────────────────────────────────────── */
.tribe-events-page-template .tribe-common-c-loader__dot { background: #F95FA0 !important; }
.tribe-events-page-template .tribe-events-view-loader { background: rgba(0,0,0,.9) !important; }
.tribe-events-page-template .tribe-events-after-html p,
.tribe-events-page-template .tribe-events-after-html {
  color: #666 !important;
  font-family: 'Albert Sans', sans-serif !important;
  font-size: 15px !important;
}

/* ── Common text & links ─────────────────────────────────────────────────── */
.tribe-events-page-template .tribe-common-b2 { color: #aaa !important; }
/* Baseline: all links in TEC template = white.
   More-specific rules below (specificity 0,2,0+) keep pink/blue where needed. */
.tribe-events-page-template a,
.tribe-events-page-template a:visited {
  color: #ffffff !important;
  text-decoration: none !important;
}
.tribe-events-page-template a:hover { color: #F95FA0 !important; }
/* tribe-common-anchor-thin explicit override (list/latest-past view) */
.tribe-events-page-template .tribe-common-anchor-thin,
.tribe-events-page-template .tribe-common-anchor-thin:visited {
  color: #ffffff !important;
  text-decoration: none !important;
}
.tribe-events-page-template .tribe-common-anchor-thin:hover { color: #F95FA0 !important; }

/* ══════════════════════════════════════════════════════════════════════════
   MONTH VIEW — MOBILE EVENT LIST (below the calendar grid on small screens)
   Broad attribute selectors used because TEC mobile classes vary by version
   ══════════════════════════════════════════════════════════════════════════ */
body .tribe-events-page-template [class*="mobile-events"] {
  background: #111111 !important;
  border-top: 1px solid #222 !important;
}
/* Event title links — h2/h3 anchors and .tribe-event-url inside mobile area */
body .tribe-events-page-template [class*="mobile-events"] h2 a,
body .tribe-events-page-template [class*="mobile-events"] h3 a,
body .tribe-events-page-template [class*="mobile-events"] .tribe-event-url,
body .tribe-events-page-template [class*="mobile-events"] [class*="event-title"] a,
body .tribe-events-page-template [class*="mobile-events"] [class*="event-title-link"],
body .tribe-events-page-template [class*="mobile-events"] .tribe-events-calendar-month__calendar-event-title-link {
  color: #ffffff !important;
  font-family: 'Oswald', sans-serif !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  text-decoration: none !important;
}
body .tribe-events-page-template [class*="mobile-events"] h2 a:hover,
body .tribe-events-page-template [class*="mobile-events"] h3 a:hover,
body .tribe-events-page-template [class*="mobile-events"] .tribe-event-url:hover {
  color: #F95FA0 !important;
}
/* Event dot indicator on days with events (the small dot below the day number) */
.tribe-events-page-template .tribe-events-calendar-month__calendar-event-mobile-indicator,
.tribe-events-page-template [class*="mobile-indicator"],
.tribe-events-page-template .tribe-events-calendar-month__calendar-event-mobile-indicator svg,
.tribe-events-page-template .tribe-events-calendar-month__calendar-event-mobile-indicator svg circle,
.tribe-events-page-template .tribe-events-calendar-month__calendar-event-mobile-indicator svg path {
  fill: #F95FA0 !important;
  color: #F95FA0 !important;
  stroke: #F95FA0 !important;
}
