/* V8 — contraste garanti sur les surfaces orange */
.button,
.service-grid article:hover,
.service-grid article:hover h3,
.service-grid article:hover p,
.service-grid article:hover b,
.event-card:hover,
.event-card:hover h3,
.event-card:hover p,
.event-card:hover span,
.event-card:hover .tag,
.event-card:hover i,
.package-card.featured,
.package-card.featured h3,
.package-card.featured p,
.package-card.featured li,
.package-card.featured strong,
.package-card.featured small,
.package-card.featured a,
.people article:hover,
.people article:hover h3,
.people article:hover p,
.people article:hover .role,
.choice-grid input:checked + span,
.contact-form .button,
.contact-form .button:hover {
  color: #fff;
}

.button:hover,
.header:not(.scrolled) .button {
  color: var(--burgundy);
}

.builder-form .button:hover,
.contact-form .button:hover {
  color: #fff;
  background: var(--burgundy);
  border-color: var(--burgundy);
}

.package-card.featured li {
  border-color: rgba(255, 255, 255, .34);
}

.package-card.featured .price {
  border-color: rgba(255, 255, 255, .42);
}

.service-grid article:hover b,
.event-card:hover .tag,
.event-card:hover > span,
.event-card:hover i,
.people article:hover .role {
  color: rgba(255, 255, 255, .82);
}

/* Les images sont pilotées exclusivement par GSAP pendant une transition. */
.visual-slide {
  will-change: opacity, visibility, clip-path;
}

@media (prefers-reduced-motion: reduce) {
  .visual-slide {
    transition: none;
  }
}
