

/*Primer Bloque*/

.links {
  color: #e3173e;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 16px; /* 114.286% */
}

#bloque1 {
  padding: 150px 80px;
  background-color: #f0f0f0;
  width: auto;
  height: 191px;
  display: flex;
  align-items: center;
}

.contenedor-bloque1{
  display: flex;
  flex-direction: column;
 /* margin: 0 auto;*/
 /*--text-align:center;*/
  
}

.titulo-bloque1 {
  color: #E3173E;
  
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin: 10px !important;
}

.subtitulo-bloque1 {
  color: #595A5B;
  
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin: 10px !important;
}

.descripcion-bloque1{
  color: #595A5B;
  
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  margin: 10px !important;
}

/* Bloque 2*/
#bloque2 {
  padding: 40px 80px;
}

.titulo-bloque2 {
  color: #E3173E;
  text-align: center;
  
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

#bloque2 ul {
  list-style-type: decimal;
}

.contenedor-tablas {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 15px;
  padding-top: 10px !important;
}


.tabla-izquierda{
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width:410px;
  height:348px;
  border-collapse: collapse;
  background: #F2F2F2;
}

.tabla-derecha {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width:440px;
  height:200px;
  border-collapse: collapse;
  background: #F2F2F2;
}


    .btn-rojo {
      background-color: #E3173E;
      color: white;
      padding: 12px 24px;
      border: none;
      border-radius: 50px; /* curvas redondeadas */
      font-size: 14px;
      font-weight: bold;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 10px;
      transition: all 0.3s ease;
      box-shadow: 0 4px 8px rgba(227, 23, 62, 0.4);
    }

    .btn-rojo:hover {
      background-color: #b81232; /* un poco más oscuro */
      transform: translateY(-2px); /* efecto de levantarse */
      box-shadow: 0 6px 12px rgba(227, 23, 62, 0.6);
    }

    .flecha {
      font-size: 18px;
      transition: transform 0.3s ease;
    }

    .btn-rojo:hover .flecha {
      transform: translateX(5px); /* la flecha se mueve al pasar el mouse */
    }

#bloque2 thead {
  width: 410px;
  height: 100px;
  align-self: stretch;
}


.titular-tabla-der{
  color: #FFF;
  
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  background-color: #004576;
}

.subtitulo-DPA{
  color: #FFF;
  
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
  background-color: #004576;
}

.tabla-izquierda th{
  
  color: white;
  
  font-size: 16px;
  font-weight: bold;
  padding: 10px;
  text-align: center;
}


.tabla-izquierda td, .tabla-derecha td {
  
  font-size: 14px;
  padding: 8px;
}

.titulo-tabla-izq{
  color: #FFF;
  
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  background-color: #E3173E;
  text-align: center;
}

@media only screen and (max-width: 768px) {

/*Bloque 1 media*/

#bloque1 {
  height: auto !important;
  padding: 20px !important;
}
#bloque2 {
  padding: 20px !important;
}
#bloque3 {
  padding: 20px !important;
}
#bloque4 {
  padding: 20px !important;
}
#bloque5 {
  padding: 20px !important;
}
  .contenedor-bloque1{
    background-color: #f0f0f0;
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
  } 

/*Bloque 2 media*/
  .tabla-izquierda, .tabla-derecha{
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width:auto;
  height:auto;
  border-collapse: collapse;
  background: #F2F2F2;
}

.contenedor-tablas {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
}

/*Bloque 3 media*/

  .tabla-proceso {
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    border-collapse: collapse;
    background: #F2F2F2;
    
    font-size: 14px;
    height: auto !important;
  }

  .tabla-proceso td {
    padding: 0;
    text-align: center;
	border: 1px solid #eaeaea;
  }

  .contenedor-tablas-proceso {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 20px;
  }

  .tabs-container {
  display: flex;
  width: auto !important;
  height: auto !important;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 16px;
  justify-content: center;
  padding: 0 !important;

  
}

.contentTablitas {
  flex: 1 ;
  /*display: flex ;*/
  flex-direction: column ;
  align-items: center ;
  background-color: #F2F2F2;
  width: 100%;
  height: auto;
  min-height: 272px;
}


.tabs-container--DPA {
  display: flex;
  width: auto !important;
  height: auto !important;
  padding-top: 25px;
  padding-bottom: 25px;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 16px;
}

#tabs-dpa{
  padding: 0px !important;
}
/*Bloque 4 media*/

#bloque4{
  padding:  40px 80px 15px 80px;
}

.contenedor-tabla-dpa{
  padding-bottom: 20px !important;
  padding-left: 0px !important;
  padding-right: 0px !important;
}


/*Bloque 5 media*/


}

/* Bloque 3 */
#bloque3 {
  padding: 0px 80px 15px 80px; 

}

.titulo-bloque3 {
  color: #E3173E;
  text-align: center;
  
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  padding-bottom: 0px;
}

.contenedor-tablas-proceso {
  display: flex;
  flex-wrap:wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 20px;
  padding-top: 20px;
}

.tabla-proceso {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  border-collapse: collapse;
  background: #F2F2F2;

  font-size: 14px;
  width: 600px;
  height: auto !important;
}

.titulares-tabla-proceso {
  color: #FFF;
  
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  background: #595A5B;
  text-align: center;
}

.tabla-proceso td {
  padding: 45px;
  text-align: center;
  border: 1px solid #eaeaea;
}


.titulares-tabla-proceso{
  color: #FFF;
  
  font-size: 13.612px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  background: #595A5B;
  align-self: stretch;
}



/*Tabs*/

.tabs-container {
  display: flex;
  /*align-items: center;*/
  margin: 0 auto;
  height: auto;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 16px;
  padding: 0px 40px;
  width: auto;
  max-width: 780px;
}

.tabs {
  display: flex;
  flex-direction: column;
  /*justify-content: center;*/
  align-items: center;
  gap: 7.268px;
  height: auto;
}

.tab {
  display: flex;
  width: 61.049px;
  height: 61.049px;
  justify-content: center;
  align-items: center;
  background-color: #898989;
  cursor: pointer;
}

.tab.active {
  background-color: #E3173E;
}

.step-number {
  font-size: 24px;
  font-weight: bold;
  color: #FFFFFF
}

.step-text {
  writing-mode: vertical-rl;
  margin-left: 5px;
  transform: rotate(180deg);
  color: #FFFFFF
  
}

.contentTablitas {
  flex: 1 ;
  /*display: flex ;*/
  flex-direction: column ;
  align-items: center ;
  background-color: #F2F2F2;
  width: 100%;
  height: auto;
  min-height: 272px;
}

#tabs-dpa{
  padding: 0px 80px;
}

.step-content {
  display: none;
}

.step-content.active {
  display: block;
}

.row2 {
  display: flex;
  padding: 5px 30px;
}
.row2-header {
  display: flex;
}

.col2 {
  flex: 1;
  padding: 10px;
}
.col2-header{
  flex: 1;
  display: flex;
  padding: 20px;
  align-items: center;
  flex-wrap: wrap;
  color: #FFF;
  
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  background: #595A5B;
  flex-direction: column;
  align-items: flex-start;
}

.contenido-final{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-self: stretch;
  padding: 5px 40px;
  color:black !important;
}

/*tabla-dpa*/




.row2-tabla {
  display: flex;
  flex-direction: column;
  
}

.col2-tabla {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 20px;
  align-items: flex-start;
  gap: 10px;
  flex-wrap: wrap;
  background: #D9D9D9;
  /*color: #595A5B;*/
  
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
  line-height: 18px;
}
.col2-header{
  flex: 1;
  display: flex;
  padding: 20px;
  flex-wrap: wrap;
  color: #FFF;
  
  font-size: 14px;
  font-style: normal;
  line-height: normal;
  text-transform: uppercase;
  background: #595A5B;
  flex-direction: column;
  align-items: flex-start;
  font-weight: 500;
}

.contenedor-tabla-dpa{
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  padding: 20px 80px;
  width: auto;
  max-width: 900px;
}


/*Bloque 4*/

#tabs-dpa .tab.active {
  background-color: #004576;
}
#tabs-dpa .step-content.active {
  display: block;
}

.tabs-dpa {
  padding: 0px 80px 40px 80px;
}

/*Bloque 5*/

#bloque5 {
  padding: 0px 80px;
}

.titulo-bloque5 {
  color: #E3173E;
  text-align: center;
  
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

#bloque5 .col2-header{
  color: #FFF;
  
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
}

#bloque5 .contenido-final{
  flex: 1 0 0;
  /*color: #595A5B;*/
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 16px; /* 114.286% */
  margin-bottom: 10px;
  background-color: #F2F2F2;
  padding: 15px 30px 15px 30px;
  color:black !important;
}

tbody tr:hover {
  background-color: rgb(133 135 139 / 66%) !important;
}


@media (max-width: 768px) {
  /* Banner hero responsive */
  section#comunicate {
    min-height: 500px;
    height: auto !important;
    background-size: cover;
    background-position: center top !important;
  }

  /* Desplaza el texto del banner hacia la derecha en móvil vertical */
  section#comunicate .lg\:col-span-7 {
    padding-left: 15% !important;
  }

  /* Mueve el formulario debajo del bloque1 en móviles */
  #bloque1 {
    display: flex;
    flex-direction: column;
  }

  /* selecciona el formulario dentro de la sección principal */
  section#comunicate .lg\:col-span-5 {
    order: 3 !important;
    margin-top: 30px !important;
  }

  /* centrado y ajuste visual */
  section#comunicate .lg\:col-span-5 > div {
    margin: 0 auto;
    width: 100%;
    max-width: 500px;
  }

  #bloque1 .lg\:col-span-5 {
    width: 100%;
    max-width: 500px;
    margin: 20px auto;
  }

  .md\:bg-\[url\(\'\.\.\/\.\.\/assets\/images\/landing-carrera\/bg\.jpg\'\)\] {
    background-position: 70% 20% !important;
    height: 300px !important;
    margin-top: 120px !important;
  }
}

@media (max-width: 1024px) {
  #bloque1 .lg\:col-span-5 {
    width: 100%;
    max-width: 500px;
    margin: 30px auto;
  }

  /* Neutraliza el margin-top negativo del formulario en tablets/móviles */
  section#comunicate .lg\:col-span-5.mostrar_web {
    margin-top: 0 !important;
  }

  /* Banner hero: altura automática en tablet */
  section#comunicate {
    min-height: 600px;
    height: auto !important;
  }

   .ocultar_web{
    display: block; 
    padding-top: 30px;
  } 
   .mostrar_web{
    display: none;
  } 
}
@media (min-width: 1024px) {
  .ocultar_web{
    display: none;
  }
  .mostrar_web{
    display: block;
  }
}



@media (max-width: 1199px) {
  #formulario {
    padding-top: 40px;
  }
}

@media (min-width: 769px) and (max-width: 1023px) {
  
  .md\:bg-\[url\(\'\.\.\/\.\.\/assets\/images\/landing-carrera\/bg\.jpg\'\)\]{
    background-position: center 20% !important;
    height: 500px !important;
    margin-top: 120px !important;
  }
}

/* Altura mínima del banner en desktop para reemplazar el height fijo eliminado */
@media (min-width: 1024px) {
  section#comunicate {
    min-height: 900px;
  }
}










