/* Recognition frame: seamless vertical marquee.
   Top/bottom rails and visual styling stay untouched. */
.recognition-section .capability-left .capability-run::before,
.recognition-section .capability-right .capability-run::before{
  content:none;
}

.recognition-section .capability-left .capability-run,
.recognition-section .capability-right .capability-run{
  gap:0;
}

/* Each vertical copy contains twice the text length of a horizontal copy.
   Horizontal rails travel one copy in 34s, so 68s preserves the same
   apparent px/sec around all four edges. */
.recognition-section .capability-left .capability-run span,
.recognition-section .capability-right .capability-run span{
  padding-right:1.8em;
}

.recognition-section .capability-right .capability-run{
  animation:recognition-cap-right 68s linear infinite;
}
.recognition-section .capability-left .capability-run{
  animation:recognition-cap-left 68s linear infinite;
}

@keyframes recognition-cap-right{
  from{transform:translate(-50%,-50%) rotate(90deg) translateX(-25%)}
  to{transform:translate(-50%,-50%) rotate(90deg) translateX(25%)}
}
@keyframes recognition-cap-left{
  from{transform:translate(-50%,-50%) rotate(-90deg) translateX(-25%)}
  to{transform:translate(-50%,-50%) rotate(-90deg) translateX(25%)}
}
