/* v60 spacing refinements; v63 smooth event-card interaction without persistent transforms. */

/* The director credit follows the programme in both languages. */
.past-event-fact .programme-director {
  margin: 16px 0 0;
}

/* Keep cities separate from the title, and notes separate from descriptions. */
.card .event-cities {
  margin-bottom: 8px;
}

.event-card-link .card-body > p:not(.event-cities) + p:not(.event-cities) {
  margin-top: 12px;
}

.card h2.event-card-title,
.card h3.event-card-title {
  line-height: 1.25;
}

/* Match the existing navigation-link spacing without moving footer headings. */
.footer-contact-area > a + a {
  margin-top: 8px;
}

.musical-event .musical-address {
  display: block;
  margin-top: 4px;
  font-size: .88rem;
  font-weight: 400;
  line-height: 1.5;
}

.musical-event .musical-visit-details {
  margin: 14px 0 6px;
  font-size: .95rem;
  line-height: 1.65;
}

/* Only linked cards lift; static information and biographies stay in place. */
.card:hover,
.artist-strip:hover,
.event-row:hover,
.poster-spotlight:hover,
.minimal-card:hover {
  transform: none;
}

.artist-strip:hover .strip-media img,
.artist-strip:hover .artist-photo {
  transform: none;
}

/* Relative positioning keeps the same lift without transforming the text layer. */
.event-card-link {
  position: relative;
  top: 0;
  transform: none;
  transition: top .25s ease;
}

.event-card-link > .card {
  transform: none;
  box-shadow: var(--soft-shadow);
  border-color: var(--line) !important;
  transition: box-shadow .25s ease, border-color .25s ease;
}

.motion-ready .event-card-link > .card.reveal-item {
  transform: translateY(28px);
  will-change: auto;
  transition:
    opacity .72s cubic-bezier(.22, .8, .24, 1) var(--reveal-delay, 0ms),
    transform .72s cubic-bezier(.22, .8, .24, 1) var(--reveal-delay, 0ms),
    box-shadow .25s ease 0s,
    border-color .25s ease 0s;
}

.motion-ready .event-card-link > .card.reveal-item.reveal-visible {
  transform: none;
}

.event-card-link:focus-visible {
  top: -2px;
}

.event-card-link:focus-visible > .card {
  box-shadow: 0 18px 44px rgba(21, 50, 74, .13);
  border-color: rgba(31, 93, 99, .30) !important;
}

@media (hover: hover) and (pointer: fine) {
  .event-card-link:hover {
    top: -2px;
  }

  .event-card-link:hover > .card {
    box-shadow: 0 18px 44px rgba(21, 50, 74, .13);
    border-color: rgba(31, 93, 99, .30) !important;
  }
}

/* Keep the artwork and link text still within the moving card. */
.event-card-link > .card .event-image-plain img,
.event-card-link:hover .event-card-more,
.event-card-link:focus-visible .event-card-more {
  transform: none;
}

.event-card-link .event-card-more {
  transition: color .25s ease;
}

@media (prefers-reduced-motion: reduce) {
  .event-card-link,
  .event-card-link:hover,
  .event-card-link:focus-visible {
    top: 0;
  }
}
