.tabla-programas {
  position: relative;
}

.tabla-programas .tabla-scroll {
  position: relative;
  overflow-x: auto;
  z-index: 0;
}
.tabla-programas .row-section .leyenda.pie sup {
  position: inherit;
}

.tabla-programas .row-section .leyenda .text-transform {
  text-transform: lowercase;
}
.tabla-programas .row-section .leyenda .text-transform::first-letter {
  text-transform: uppercase;
}

.tabla-programas .tabla-fixed-superpuesta {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 50vw;
  max-width: 50vw;
  background: #fff;
}

.tabla-programas .tabla-fixed-superpuesta .contenido-del-programa .row-section {
  min-width: 50vw;
  max-width: 50vw;
}

.tabla-programas .tabla-fixed-superpuesta .contenido-del-programa .leyenda {
  min-width: 50vw;
  max-width: 50vw;
}

.tabla-programas .contenido-del-programa .row-header {
  display: flex;
  align-items: center;
  min-height: 80px;
  max-height: 80px;
}

.tabla-programas .contenido-del-programa .row-header .datos {
  min-height: 80px;
}
.tabla-programas .contenido-del-programa .row-data {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  align-items: stretch;
  position: relative;
}

.tabla-programas .contenido-del-programa .row-section {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  align-items: stretch;
  position: relative;
  /*  margin-bottom: 16px; */
  min-height: 62px;
}
.tabla-programas .contenido-del-programa .row-section .scrollable-data {
  padding-top: 16px;
  padding-bottom: 16px;
}
.tabla-programas .contenido-del-programa .row-header {
  border-bottom: 1px solid #e3d8d0;
  background: var(--Background-02-White-yellow, #fcf9f6);
  color: var(--Clickable-colors-01-Black, #333);
  flex-wrap: nowrap;
}

.tabla-programas .row-header .datos .dato {
  display: flex;
  align-items: center;
  justify-content: center;
}

.tabla-programas .row-header .datos .dato .ellipser {
  display: -webkit-box;
  -webkit-line-clamp: 2; /* Número de líneas que quieres mostrar */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 3.6em;
}

.tabla-programas .tabla-fixed-superpuesta .row-header {
  z-index: 10;
}

.tabla-programas .tabla-scroll .row-header {
  z-index: 10;
}

.tabla-programas .contenido-del-programa .row-section {
  border-bottom: 1px solid #e3d8d0;
  background: #ffffff;
  z-index: 5;
  position: relative;
  color: var(--Text-elements-01-Light-Black, #414345);
}

.tabla-programas .contenido-del-programa .row-section.no-shadow::after {
  background: initial;
}

.tabla-programas .contenido-del-programa .row-header.active {
  position: fixed;
  z-index: 10;
}

.tabla-programas .contenido-del-programa .row-section.active {
  z-index: 11;
  background: #fff;
  /* border-bottom: 1px solid #e3d8d0; */
  position: relative;
}

.tabla-programas .contenido-del-programa .titulo-row,
.tabla-programas .contenido-del-programa .row-data .leyenda,
.tabla-programas .contenido-del-programa .row-header .leyenda {
  color: var(--Text-elements-01-Light-Black, #414345);
}

.tabla-programas .contenido-del-programa .datos {
  display: flex;

  justify-content: space-between;
}

.tabla-programas .contenido-del-programa .dato {
  text-align: center;
  width: 100%;
}
.tabla-programas .contenido-del-programa .row-section .leyenda {
  display: flex;
  align-items: center;
}

@media (min-width: 768px) {
  .tabla-programas .row-section .leyenda img {
    margin-right: 16px;
  }

  .tabla-programas .row-header .leyenda.cabecera {
    padding-left: 52px;
  }

  .tabla-programas .tabla-fixed-superpuesta {
    display: none;
  }

  .tabla-programas .contenido-del-programa .leyenda {
    width: 264px;
  }

  .tabla-programas .contenido-del-programa .datos {
    width: calc(100% - 264px);
  }

  .tabla-programas .contenido-del-programa .leyenda,
  .tabla-programas .contenido-del-programa .dato {
    padding: 12px;
  }
}
@media (min-width: 992px) {
  .tabla-programas .contenido-del-programa .row-section::after {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 0;
    width: 100%;
    opacity: 0.2;
    height: 8px;
    opacity: 0.1;
    background: linear-gradient(to bottom, black, transparent);
  }

  .tabla-programas .contenido-del-programa .row-section.active::after {
    /*  content: "";
    position: absolute;
    bottom: -8px;
    left: 0;
    width: 100%;
    opacity: 0.2;
    height: 8px; */
    /* background: linear-gradient(to bottom, black, transparent); */
  }

  .tabla-programas .fixed-pack::after {
    /*    
    content: "";
    position: absolute;
    bottom: -8px;
    left: 0;
  
    width: 100%;
    opacity: 0.2;
    height: 8px;
    z-index: 11;
    background: linear-gradient(to bottom, black, transparent); */
  }
  .tabla-programas .contenido-del-programa .leyenda {
    width: 500px;
  }

  .tabla-programas .contenido-del-programa .datos {
    width: calc(100% - 500px);
  }

  .tabla-programas .contenido-del-programa .row-section {
    border-bottom: none;
  }
}
@media (max-width: 992px) {
  .tabla-programas .row-section .leyenda.pie {
    display: block !important;
  }
}
@media (max-width: 768px) {
  .tabla-programas .row-section .leyenda.pie {
    display: block !important;
  }

  .tabla-programas .tabla-fixed-superpuesta::after {
    /*  content: "";
    position: absolute;
    top: 0;
    right: -8px;

    width: 8px;
    opacity: 0.5;
    z-index: 10;
    height: 100%;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.1), transparent); */
  }

  .tabla-programas .tabla-fixed-superpuesta::before {
    content: "";
    position: absolute;
    top: 0;
    left: -24px;
    width: 24px;
    opacity: 1;
    z-index: 10;
    height: 100%;
    background: #fff;
  }

  .tabla-programas .degradado-indicador-derecho::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 16px;
    height: 100%;

    background: linear-gradient(to left, white, transparent);
  }

  .tabla-programas .contenido-del-programa .leyenda,
  .tabla-programas .contenido-del-programa .dato {
    padding: 12px;
  }

  .tabla-programas .contenido-del-programa .row-data .leyenda,
  .tabla-programas .contenido-del-programa .row-data .dato {
    padding: 12px 12px;
    min-height: 56px;
  }

  .tabla-programas .contenido-del-programa .dato {
    display: block;
    border-right: 1px solid var(--Visual-Details-02-Light-Brown, #e3d8d0);
    max-width: 40vw;
    min-width: 40vw;
    min-height: 56px;
  }

  .tabla-programas .contenido-del-programa .row-header,
  .tabla-programas .contenido-del-programa .row-section {
    width: auto;
    display: inline-flex;
  }

  .tabla-programas .contenido-del-programa .row-section .leyenda img {
    display: none;
  }

  .tabla-programas .contenido-del-programa .leyenda {
    min-width: 50vw;
    max-width: 50vw;
  }

  .tabla-programas .fixed-pack {
    width: calc(100% - 24px);
  }
}

/* Oculta las barras de scroll, pero mantiene la capacidad de desplazamiento */
.tabla-programas .fixed-pack {
  position: relative;
  overflow-x: scroll;
  -ms-overflow-style: none;
  /* IE y Edge */
  scrollbar-width: none;
  /* Firefox */
}

.tabla-programas .fixed-pack::-webkit-scrollbar {
  /* Chrome, Safari y Opera */
  display: none;
}

.tabla-programas .precios-footer {
  border-radius: 0px 0px 4px 4px;
  background: var(--Background-01-White, #fff);
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.05);
}

.tabla-programas .precios-footer .leyenda {
  padding-left: 16px;
  padding-right: 16px;
  padding-top: 16px;
}

.tabla-programas .precios-footer .leyenda > div {
  border-bottom: 1px solid var(--Colors-Neutral-05-Light-Grey, #dee0e1);
  padding-bottom: 12px;
  color: var(--Text-elements-01-Light-Black, #414345);
}

.tabla-programas .precios-footer .leyenda span {
  width: 390px;
}

.tabla-programas .precios-footer .linea {
  display: flex;
  width: 100%;

  justify-content: space-between;
  align-items: stretch;
  position: relative;
}

.tabla-programas .precios-footer .linea .zona {
  padding-right: 16px;
  padding-left: 16px;
  padding-top: 12px;
}

@media (min-width: 992px) {
  .tabla-programas .precios-footer .linea .datos {
    width: calc(100% - 500px);
  }

  .tabla-programas .precios-footer .linea .zona {
    width: 500px;
  }
}

@media (min-width: 768px) {
  .tabla-programas .precios-footer .linea .datos {
    width: calc(100% - 500px);
  }

  .tabla-programas .precios-footer .linea .zona {
    width: 500px;
  }
}

.tabla-programas .precios-footer .linea .datos {
  display: flex;
  justify-content: space-between;
}

.tabla-programas .precios-footer .linea .datos .dato {
  text-align: center;
  display: block;
  padding: 16px 16px; font-size: 0.8em;
  width: 100%;
  color: var(--Text-elements-01-Light-Black, #414345);
}

@media (max-width: 768px) {
  /* Añadir RTL */
  html[dir="rtl"] .tabla-programas .tabla-scroll {
    direction: rtl;
  }

  html[dir="rtl"] .tabla-programas .tabla-fixed-superpuesta {
    right: 0;
    left: auto;
  }

  html[dir="rtl"] .tabla-programas .tabla-fixed-superpuesta::after {
    right: auto;
    left: -8px;
    background: linear-gradient(to left, rgba(0, 0, 0, 0.1), transparent);
  }

  html[dir="rtl"] .tabla-programas .tabla-fixed-superpuesta::before {
    right: -24px;
    left: auto;
    background: linear-gradient(to right, white, transparent);
  }

  html[dir="rtl"] .tabla-programas .contenido-del-programa .dato {
    border-left: 1px solid var(--Visual-Details-02-Light-Brown, #e3d8d0);
    border-right: none;
  }

  html[dir="rtl"] .tabla-programas .fixed-pack::after {
    left: auto;
    right: 0;
    background: linear-gradient(to left, black, transparent);
  }

  html[dir="rtl"] .tabla-programas .precios-footer .linea .datos {
    direction: rtl;
  }

  /* Otros ajustes RTL específicos */
  html[dir="rtl"] .tabla-programas .contenido-del-programa .row-header,
  html[dir="rtl"] .tabla-programas .contenido-del-programa .row-section {
    direction: rtl;
  }

  html[dir="rtl"] .tabla-programas .degradado-indicador-derecho::before {
    content: "";
    position: absolute;
    top: 0;
    right: calc(100% - 16px);
    width: 16px;
    height: 100%;

    background: linear-gradient(to right, white, transparent);
  }
}

.tabla-programas .programa-detalle-servicio {
  color: var(--Text-elements-02-Grey, #757474);
  margin-top: 8px;
  font-size: 14px !important;
  font-style: normal;
  font-weight: 400;
  line-height: 16px;
}
