.jurado-hero {
  background: var(--color-bg-light);
  padding-block: var(--space-4) var(--space-8);
  text-align: center;
}
.jurado-hero__heading-img { width: min(100%, 480px); aspect-ratio: 927 / 70; margin-inline: auto; }

.jurado-grid-section { background: var(--color-bg-light); }
.jurado-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-8) var(--space-6);
  text-align: center;
}

/* --- entrance: card fades/scales in, --stagger set per-card by scrollReveal.js --- */
.jurado-card {
  opacity: 0;
  transform: scale(0.75);
  transition: opacity 0.7s ease-out, transform 0.7s ease-out;
  transition-delay: var(--stagger, 0ms);
}
.jurado-card.jurado-reveal--visible { opacity: 1; transform: scale(1); }

.jurado-card__media {
  position: relative;
  width: 140px;
  height: 140px;
  margin: 0 auto var(--space-3);
}
.jurado-card__photo,
.jurado-card__photo--placeholder {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 10px 24px rgba(10, 14, 44, 0.15);
  transition: transform 0.3s ease;
}
.jurado-card__photo--placeholder { font-size: 0.65rem; padding: var(--space-1); }
.jurado-card__media:hover .jurado-card__photo { transform: scale(1.05); }

/* soft halo glow, largest layer, behind everything */
.jurado-card__halo {
  position: absolute;
  inset: -30px;
  z-index: 0;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(59, 125, 255, 0.28), transparent 70%);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease, transform 0.4s ease;
  transition-delay: calc(var(--stagger, 0ms) + 100ms);
}
.jurado-reveal--visible .jurado-card__halo { opacity: 0.55; }
.jurado-card__media:hover .jurado-card__halo { opacity: 0.9; transform: scale(1.08); }

/* thin static ring, sits just outside the photo */
.jurado-card__ring {
  position: absolute;
  inset: -6px;
  z-index: 3;
  border-radius: 50%;
  border: 1.5px solid rgba(59, 125, 255, 0.55);
  opacity: 0;
  transform: scale(0.9);
  pointer-events: none;
  transition: opacity 0.4s ease, transform 0.4s ease, border-color 0.3s ease;
  transition-delay: calc(var(--stagger, 0ms) + 500ms);
}
.jurado-reveal--visible .jurado-card__ring { opacity: 1; transform: scale(1); }
.jurado-card__media:hover .jurado-card__ring { border-color: rgba(59, 125, 255, 0.85); }

/* second ring: dashed, low opacity, gently separated, near-imperceptible spin */
.jurado-card__ring-dashed {
  position: absolute;
  inset: -19px;
  z-index: 1;
  border-radius: 50%;
  border: 1px dashed rgba(59, 125, 255, 0.32);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s ease;
  transition-delay: calc(var(--stagger, 0ms) + 550ms);
  animation: jurado-ring-spin 140s linear infinite;
}
.jurado-reveal--visible .jurado-card__ring-dashed { opacity: 1; }
@keyframes jurado-ring-spin {
  to { transform: rotate(360deg); }
}

/* recognition sweep: a bright arc travels once around the ring perimeter */
@property --jurado-sweep-angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}
.jurado-card__ring-sweep {
  position: absolute;
  inset: -6px;
  z-index: 4;
  border-radius: 50%;
  padding: 1.5px;
  pointer-events: none;
  background: conic-gradient(
    from var(--jurado-sweep-angle),
    transparent 0deg,
    transparent 300deg,
    rgba(180, 210, 255, 0) 322deg,
    #ffffff 340deg,
    rgba(180, 210, 255, 0) 358deg,
    transparent 360deg
  );
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0;
}
.jurado-reveal--visible .jurado-card__ring-sweep {
  animation: jurado-sweep-in 1.1s ease-out calc(var(--stagger, 0ms) + 600ms) 1 both;
}
.jurado-card__media:hover .jurado-card__ring-sweep {
  animation: jurado-sweep-hover 0.9s ease-out 1;
}
@keyframes jurado-sweep-in {
  0% { opacity: 0; --jurado-sweep-angle: 0deg; }
  8% { opacity: 1; }
  92% { opacity: 1; }
  100% { opacity: 0; --jurado-sweep-angle: 360deg; }
}
@keyframes jurado-sweep-hover {
  0% { opacity: 0; --jurado-sweep-angle: 0deg; }
  8% { opacity: 1; }
  85% { opacity: 1; }
  100% { opacity: 0; --jurado-sweep-angle: 360deg; }
}

.jurado-card__name {
  margin-top: var(--space-2);
  font-weight: 700;
  font-size: 1rem;
  color: var(--color-text-dark);
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.4s ease, transform 0.4s ease, color 0.25s ease;
  transition-delay: calc(var(--stagger, 0ms) + 350ms);
}
.jurado-reveal--visible .jurado-card__name { opacity: 1; transform: translateY(0); }
.jurado-card__role {
  margin-top: 2px;
  font-size: 0.8rem;
  font-weight: 400;
  line-height: 1.4;
  color: var(--color-silver-400);
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.4s ease, transform 0.4s ease;
  transition-delay: calc(var(--stagger, 0ms) + 420ms);
}
.jurado-reveal--visible .jurado-card__role { opacity: 1; transform: translateY(0); }
.jurado-card__media:hover ~ .jurado-card__name { color: var(--color-blue-600); }

@media (prefers-reduced-motion: reduce) {
  .jurado-card__ring-dashed { animation: none; }
  .jurado-reveal--visible .jurado-card__ring-sweep,
  .jurado-card__media:hover .jurado-card__ring-sweep { animation: none; }
}

@media (min-width: 600px) {
  .jurado-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 900px) {
  .jurado-grid { grid-template-columns: repeat(4, 1fr); }
}
@media (min-width: 1200px) {
  .jurado-grid { grid-template-columns: repeat(5, 1fr); }
}
