.context-card-hover {
    transition: transform 0.3s ease;
}

.context-card-hover:hover {
    transform: scale(1.05);
}

.context-border-w-4 {
    border-left-width: 4px !important;
}

.lineup-circle-hero__portrait {
    width: 12rem;
    height: 12rem;
}

.lineup-circle-hero__min-shrink {
  min-width: 0;
}

.spotlight-carousel-timeline__radial {
    background: radial-gradient(ellipse at 50% 50%, currentColor 0%, transparent 70%);
    opacity: 0.05;
}

@keyframes spotlight-carousel-timeline__slide-in {
    from { opacity: 0; transform: translateX(32px); }
    to { opacity: 1; transform: translateX(0); }
}

.spotlight-carousel-timeline__slide--hidden {
    display: none;
}

.spotlight-carousel-timeline__slide--visible {
    animation: spotlight-carousel-timeline__slide-in 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

.spotlight-carousel-timeline__dot--active {
    width: 24px;
    height: 0.5rem;
    filter: brightness(1.05);
}

.spotlight-carousel-timeline__dot--idle {
    width: 8px;
    height: 0.5rem;
    filter: brightness(0.55);
}

.spotlight-carousel-timeline__accent {
    height: 4px;
    width: 3rem;
}

.spotlight-carousel-timeline__btn {
    width: 2.5rem;
    height: 2.5rem;
}

/* Декор картки + великі лапки — позиціонування; розміри медіа в @sem */
.quote-decor-a {
  position: absolute;
  top: 0;
  right: 0;
  width: 8rem;
  height: 8rem;
  transform: translate(4rem, -4rem);
  opacity: 0.3;
}

.quote-decor-b {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 6rem;
  height: 6rem;
  transform: translate(-3rem, 3rem);
  opacity: 0.3;
}

.quote-mark {
  position: absolute;
  top: 1rem;
  right: 1rem;
  font-size: 6rem;
  font-family: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
  opacity: 0.2;
}

