.ru-applications-buttons-row {
  margin: 65px 0;
}
.ru-applications-buttons-row button {
  margin-right: 30px;
}
@media screen and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .ru-applications-buttons-row button {
    width: auto;
  }
}
.rising-up-applications-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 350px));
  row-gap: 40px;
  column-gap: 2%;
  align-items: stretch;
}
@media (max-width: 1240px) {
  .rising-up-applications-row {
    flex-wrap: nowrap;
  }
}
@media (max-width: 850px) {
  .rising-up-applications-row {
    grid-template-columns: repeat(1, 1fr);
    column-gap: 0;
  }
  .rising-up-applications-row .ru-single-application {
    max-width: 100%;
  }
}
.ru-single-application {
  border: 1px solid #E3E4E5;
  max-width: 350px;
  width: 100%;
  margin-bottom: 50px;
}
.ru-single-application .ru-single-application-top-container video,
.ru-single-application .ru-single-application-top-container img {
  width: 349px;
}
.ru-single-application .ru-single-application-bot-container {
  padding: 50px 50px 35px;
}
.ru-single-application .ru-single-application-bot-container .ru-single-application-company-name {
  color: #D5190E;
  font-size: 22px;
  text-transform: uppercase;
}
.ru-single-application .ru-single-application-bot-container .ru-single-application-company-country {
  display: inline-block;
  font-size: 14px;
  text-transform: uppercase;
  margin-bottom: 15px;
}
.ru-single-application .ru-single-application-bot-container .ru-single-application-company-description {
  margin-bottom: 50px;
}
@media (max-width: 850px) {
  .ru-single-application {
    width: 100%;
  }
  .ru-single-application .ru-single-application-top-container video,
  .ru-single-application .ru-single-application-top-container img {
    width: 100%;
  }
}
/* Garantiza ancho y posición del bloque superior */
.ru-single-application-top-container {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
}
/* El contenedor de vídeo nunca es inline ni se colapsa */
.video-container {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
}
/* Sólo aplica a tarjetas con vídeo externo */
.video-container[data-external='true'] {
  /* La miniatura crea la altura (16:9) y ocupa el área completa */
  /* Controles y iframe ocupan todo el contenedor (superpuestos) */
  /* Al reproducir, ocultamos el póster sin quitar su altura */
}
.video-container[data-external='true'] .poster {
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  /* 16:9 */
  background-size: cover;
  background-position: center;
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  transition: opacity .15s ease;
}
.video-container[data-external='true'] .video-controls,
.video-container[data-external='true'] iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.video-container[data-external='true'] iframe {
  border: 0;
  display: block;
  z-index: 1;
}
.video-container[data-external='true'] .video-controls {
  z-index: 2;
  /* por encima del iframe antes de reproducir */
  background: transparent;
}
.video-container[data-external='true'].is-playing .poster {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.video-container[data-external='true'].is-playing .video-controls {
  display: none;
  /* que no tape el vídeo en reproducción */
}
/* Tarjetas DAM (sin data-external) */
.video-container:not([data-external='true']) video {
  display: block;
  width: 100%;
  height: auto;
  /* respeta el poster/ratio que ya tenías */
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  object-fit: cover;
  /* si el alto viene forzado por CSS, no deforma */
}
.video-duration {
  display: none !important;
}
