/* =========================================================
   BELIZE — ENDORSEMENT PROCEDURE ANIMATION ONLY
   Keeps original layout completely intact
   ========================================================= */

#belize-endorsement
.blz2-panel.dark
.blz2-steps{
  position:relative !important;
  overflow:hidden !important;
}


/* ---------------------------------------------------------
   MOVING LIGHT DOWN THE EXISTING TIMELINE
   --------------------------------------------------------- */

#belize-endorsement
.blz2-panel.dark
.blz2-steps::after{
  content:"";
  position:absolute;

  left:17px;
  top:18px;

  width:3px;
  height:58px;

  z-index:2;
  pointer-events:none;

  border-radius:999px;

  background:
    linear-gradient(
      to bottom,
      transparent 0%,
      rgba(110,220,255,.28) 18%,
      #7ce5ff 48%,
      rgba(83,199,239,.58) 72%,
      transparent 100%
    );

  box-shadow:
    0 0 8px rgba(90,210,248,.75),
    0 0 18px rgba(65,178,224,.42);

  animation:
    blzEndorseTimeline 5.4s linear infinite;
}

@keyframes blzEndorseTimeline{

  0%{
    transform:translateY(-65px);
    opacity:0;
  }

  8%{
    opacity:1;
  }

  88%{
    opacity:1;
  }

  100%{
    transform:translateY(390px);
    opacity:0;
  }
}


/* ---------------------------------------------------------
   IMPORTANT:
   RESTORE ORIGINAL NUMBER POSITIONING
   --------------------------------------------------------- */

#belize-endorsement
.blz2-panel.dark
.blz2-step-num{
  position:absolute !important;

  left:2px !important;
  top:13px !important;

  width:33px !important;
  height:33px !important;
  min-width:33px !important;
  min-height:33px !important;

  padding:0 !important;

  display:grid !important;
  place-items:center !important;

  border-radius:50% !important;

  background:#123f58;
  border:1px solid rgba(112,210,241,.45);
  color:#86d9f3;

  box-sizing:border-box !important;

  z-index:4 !important;

  animation:
    blzEndorseStepPulse 5.4s ease-in-out infinite;
}


/* sequential timing */

#belize-endorsement
.blz2-step:nth-child(1)
.blz2-step-num{
  animation-delay:0s;
}

#belize-endorsement
.blz2-step:nth-child(2)
.blz2-step-num{
  animation-delay:.9s;
}

#belize-endorsement
.blz2-step:nth-child(3)
.blz2-step-num{
  animation-delay:1.8s;
}

#belize-endorsement
.blz2-step:nth-child(4)
.blz2-step-num{
  animation-delay:2.7s;
}

#belize-endorsement
.blz2-step:nth-child(5)
.blz2-step-num{
  animation-delay:3.6s;
}

#belize-endorsement
.blz2-step:nth-child(6)
.blz2-step-num{
  animation-delay:4.5s;
}


@keyframes blzEndorseStepPulse{

  0%,78%,100%{
    background:#123f58;
    border-color:rgba(112,210,241,.45);
    color:#86d9f3;

    box-shadow:
      0 0 0 rgba(74,197,236,0);

    transform:scale(1);
  }

  8%{
    background:#2b8fba;
    border-color:#8ee8ff;
    color:#ffffff;

    box-shadow:
      0 0 0 5px rgba(77,194,232,.10),
      0 0 15px rgba(81,210,248,.58);

    transform:scale(1.08);
  }

  17%{
    background:#1d6f94;
    border-color:#70d7f6;
    color:#ffffff;

    box-shadow:
      0 0 11px rgba(80,203,241,.32);

    transform:scale(1.03);
  }
}


/* ---------------------------------------------------------
   SUBTLE MATCHING ROW GLOW
   --------------------------------------------------------- */

#belize-endorsement
.blz2-panel.dark
.blz2-step{
  animation:
    blzEndorseRowGlow 5.4s ease-in-out infinite;
}

#belize-endorsement .blz2-step:nth-child(1){
  animation-delay:0s;
}

#belize-endorsement .blz2-step:nth-child(2){
  animation-delay:.9s;
}

#belize-endorsement .blz2-step:nth-child(3){
  animation-delay:1.8s;
}

#belize-endorsement .blz2-step:nth-child(4){
  animation-delay:2.7s;
}

#belize-endorsement .blz2-step:nth-child(5){
  animation-delay:3.6s;
}

#belize-endorsement .blz2-step:nth-child(6){
  animation-delay:4.5s;
}

@keyframes blzEndorseRowGlow{

  0%,78%,100%{
    background:rgba(255,255,255,0);
  }

  8%{
    background:
      linear-gradient(
        90deg,
        rgba(69,180,220,.09),
        rgba(69,180,220,.025) 72%,
        transparent
      );
  }

  18%{
    background:rgba(255,255,255,0);
  }
}


@media (prefers-reduced-motion:reduce){

  #belize-endorsement
  .blz2-panel.dark
  .blz2-steps::after,

  #belize-endorsement
  .blz2-panel.dark
  .blz2-step-num,

  #belize-endorsement
  .blz2-panel.dark
  .blz2-step{
    animation:none !important;
  }
}
