/* ==========================================================================
   AF ROTTERDAM — THE EVENTS CALENDAR OVERRIDES
   Targets both Views V2 (default) and legacy views
   ========================================================================== */

/* ── General reset on TEC containers ── */
.tribe-events *,
.tribe-events *::before,
.tribe-events *::after {
  box-sizing: border-box;
}

/* ── TEC color vars override ── */
.tribe-events {
  --tec-color-accent-primary:       var(--afr-red);
  --tec-color-accent-primary-hover: var(--afr-red-dark, #C1121F);
  --tec-color-background-primary:   var(--afr-navy);
  --tec-color-text-primary:         var(--afr-dark);
  --tec-color-text-secondary:       var(--afr-muted);
  --tec-font-family-sans-serif:     var(--afr-font-body);
  --tec-font-family-serif:          var(--afr-font-display);
}

/* ── Page header ── */
.tribe-events-header,
.tribe-events .tribe-events-header {
  background: linear-gradient(135deg, var(--afr-navy) 0%, var(--afr-navy-dark, #001540) 100%) !important;
  padding: 3rem var(--afr-content-pad) !important;
}
.tribe-events-header h1,
.tribe-events-header .tribe-events-pro-photo__header-title {
  color: #fff !important;
  font-family: var(--afr-font-display) !important;
}

/* ── Navigation buttons ── */
.tribe-events .tribe-events-c-nav__next,
.tribe-events .tribe-events-c-nav__prev,
.tribe-events .tribe-events-c-top-bar__nav-list-item-link {
  color: var(--afr-navy) !important;
  font-family: var(--afr-font-body);
  font-weight: 700;
  letter-spacing: 0.04em;
}
.tribe-events .tribe-events-c-nav__next:hover,
.tribe-events .tribe-events-c-nav__prev:hover { color: var(--afr-red) !important; }

/* ── View switcher ── */
.tribe-events .tribe-events-c-view-selector__button {
  border-radius: 0 !important;
  font-family: var(--afr-font-body);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.tribe-events .tribe-events-c-view-selector__button--active {
  background: var(--afr-navy) !important;
  color: #fff !important;
}

/* ── Event cards (list & grid views) ── */
.tribe-events .tribe-events-calendar-list__event-row,
.tribe-events .tribe-common-g-image__figure {
  border-radius: 0 !important;
}

.tribe-events .tribe-events-calendar-list__event-wrapper {
  background: var(--afr-white);
  box-shadow: var(--afr-shadow-card);
  margin-bottom: 1.5rem !important;
  transition: box-shadow 0.22s ease, transform 0.22s ease;
}
.tribe-events .tribe-events-calendar-list__event-wrapper:hover {
  box-shadow: var(--afr-shadow-hover);
  transform: translateY(-2px);
}

.tribe-events .tribe-events-calendar-list__event-datetime-wrapper {
  background: var(--afr-navy) !important;
  color: #fff !important;
  border-radius: 0 !important;
}
.tribe-events .tribe-events-calendar-list__event-datetime-wrapper * { color: #fff !important; }

.tribe-events .tribe-events-calendar-list__event-title,
.tribe-events .tribe-events-calendar-list__event-title a {
  font-family: var(--afr-font-display) !important;
  font-size: 1.25rem !important;
  color: var(--afr-dark) !important;
}
.tribe-events .tribe-events-calendar-list__event-title a:hover { color: var(--afr-navy) !important; }

/* ── Month view ── */
.tribe-events .tribe-events-calendar-month__calendar-event {
  border-radius: 0 !important;
}
.tribe-events .tribe-events-calendar-month__calendar-event-featured-image-link { border-radius: 0 !important; }
.tribe-events .tribe-events-calendar-month__calendar-event-title a {
  font-family: var(--afr-font-display) !important;
}

.tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date {
  background: var(--afr-red) !important;
  color: #fff !important;
  border-radius: 0 !important;
}

/* ── "Buy tickets" / RSVP button ── */
.tribe-events .tribe-tickets__buy,
.tribe-events a.tribe-event-url,
.tribe-events .tribe-events-c-small-cta__link {
  background: var(--afr-red) !important;
  color: #fff !important;
  border-radius: 0 !important;
  font-family: var(--afr-font-body) !important;
  font-size: 0.8125rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 0.85em 2em !important;
  text-decoration: none !important;
  transition: background 0.22s ease !important;
}
.tribe-events .tribe-tickets__buy:hover,
.tribe-events a.tribe-event-url:hover,
.tribe-events .tribe-events-c-small-cta__link:hover {
  background: var(--afr-navy) !important;
}

/* ── Single event (when viewed via TEC template, not our custom single.html) ── */
.single-tribe_events .tribe-events-single-event-title {
  font-family: var(--afr-font-display);
  color: var(--afr-dark);
}

.tribe-events-single .tribe-events-schedule {
  background: var(--afr-navy-light, #E8EDF5);
  border-left: 4px solid var(--afr-navy);
  padding: 0.75rem 1.25rem;
  font-family: var(--afr-font-body);
  font-weight: 600;
  color: var(--afr-navy);
}

.tribe-venue-map-link a,
.tribe-events-single-section .tribe-venue a {
  color: var(--afr-navy);
}

/* ── Event cost ── */
.tribe-events-single .tribe-events-schedule abbr,
.tribe-price-point {
  color: var(--afr-navy) !important;
  font-weight: 700;
  font-family: var(--afr-font-display);
}

/* ── Tag + Category links ── */
.tribe-events .tribe-events-calendar-list__event-taxonomy a,
.tribe-events .tribe-event-categories a {
  color: var(--afr-navy);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
}
.tribe-events .tribe-events-calendar-list__event-taxonomy a:hover { color: var(--afr-red); }

/* ── Featured image in list ── */
.tribe-events .tribe-events-calendar-list__event-featured-image-link img {
  border-radius: 0 !important;
}

/* ── "All events" link ── */
.tribe-events-back a,
.tribe-events .tribe-events-c-nav__list-item--prev a,
.tribe-events .tribe-events-c-nav__list-item--next a {
  color: var(--afr-navy);
  font-weight: 700;
}

/* ── Responsive ── */
@media (max-width: 767px) {
  .tribe-events .tribe-events-header { padding: 2rem var(--afr-content-pad) !important; }
}
