/* =========================================================
   AXR TEC Next Event Card – Styles
   - Dark friendly
   - Hover swap: event photo -> venue track outline
   - Race Day badge
   - Countdown styling
   ========================================================= */

.tec-next-event--inherit,
.tec-next-event--inherit * {
  color: #fff;
}

/* Title link: white default, allow theme hover colour */
.tec-next-event--inherit .tec-ne-title-link {
  color: #fff;
  text-decoration: none;
}
.tec-next-event--inherit .tec-ne-title-link:hover,
.tec-next-event--inherit .tec-ne-title-link:focus {
  color: unset;
  text-decoration: underline;
}

/* Grid layout */
.tec-next-event--inherit .tec-ne-grid {
  display: grid;
  grid-template-columns: 1fr 360px;
  column-gap: 40px;
  align-items: start;
}

/* Text rhythm */
.tec-next-event--inherit .tec-ne-title {
  margin: 0 0 14px 0;
  padding: 0;
  line-height: 1.15;
}

.tec-next-event--inherit .tec-ne-dates {
  margin: 0 0 10px 0;
}

.tec-next-event--inherit .tec-ne-venue {
  margin: 0 0 14px 0;
}

.tec-next-event--inherit .tec-ne-venue-title {
  font-weight: 700;
  font-style: italic;
}

.tec-next-event--inherit .tec-ne-excerpt {
  line-height: 1.6;
}

/* Race Day badge */
.tec-next-event--inherit .tec-ne-badge {
  display: inline-block;
  font-weight: 800;
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 6px 10px;
  border-radius: 3px;
  margin: 2px 0 14px 0;
}

.tec-next-event--inherit .tec-ne-badge--race-day {
  background: #e10600;
  color: #fff;
}

/* Countdown */
.tec-next-event--inherit .tec-ne-countdown {
  margin: 0 0 14px 0;
  font-weight: 800;
  letter-spacing: 0.2px;
}
.tec-next-event--inherit .tec-ne-countdown__label {
  opacity: 0.9;
  margin-right: 8px;
}
.tec-next-event--inherit .tec-ne-countdown__time {
  font-variant-numeric: tabular-nums;
}

/* Media + hover swap */
.tec-next-event--inherit .tec-ne-media {
  align-self: start;
}

.tec-next-event--inherit .tec-ne-media-link {
  display: block;
  position: relative;
}

.tec-next-event--inherit .tec-ne-image {
  display: block;
  width: 100%;
  height: auto;
}

/* Hover image sits on top */
.tec-next-event--inherit .tec-ne-image--hover {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;          /* ideal for transparent track outlines */
  opacity: 0;
  pointer-events: none;
  transition: opacity 180ms ease-in-out;
}

/* Dim photo on hover to let outline pop */
.tec-next-event--inherit .tec-ne-image--photo {
  transition: opacity 180ms ease-in-out;
}

.tec-next-event--inherit .tec-ne-media-link:hover .tec-ne-image--hover,
.tec-next-event--inherit .tec-ne-media-link:focus .tec-ne-image--hover {
  opacity: 1;
}

.tec-next-event--inherit .tec-ne-media-link:hover .tec-ne-image--photo,
.tec-next-event--inherit .tec-ne-media-link:focus .tec-ne-image--photo {
  opacity: 0.25;
}

/* Responsive stack */
@media (max-width: 900px) {
  .tec-next-event--inherit .tec-ne-grid {
    grid-template-columns: 1fr;
    row-gap: 18px;
  }
}