.ai-page {
    --rojo-oscuro: #A80028;
    --rojo-intenso:#FF085C;
    --rosa-transparente:#A800284D;
    --granate:#44000f;
    --fondo-menu:#FDF9F5;
    --rosa-claro: #fef6f7;
}


/* Banner */
.banner-texto .banner-video {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
    overflow: hidden;
}

.banner-texto .banner-video video {
    width: 100%;
    height: 100%;
    object-position: center;
    object-fit: cover;
}

.banner-texto .titulo, .banner-texto .texto {
    width: 620px;
    max-width: 100%;

}

.banner-texto .titulo {
    font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-72);
    text-transform: uppercase;
    color: var(--azul);
    padding-top: var(--margin-elementos-int);
    padding-bottom: var(--margin-elementos-int);
}

.banner-texto .texto {
     font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-21);
    text-transform: uppercase;
    color: var(--azul);
    background-color: var(--second-color);
    padding-right: var(--margin-elementos-int);
    padding-left: 0;
    text-decoration: none;
}   

.banner-texto .banner {
    display: flex;
    flex-direction: column;
    justify-content: end;
    padding-bottom: 0;
}

/* Introduccion */
.section-container.introduccion .row{
    align-items: center;
}
.introduccion .col_3_4 {
    padding-left: calc((2 / 12) * 100%);
    padding-right: 0;
}

.introduccion h2 {
    font-weight: 500;
    font-size: var(--size-60);
    letter-spacing: 0%;
    text-transform: unset;

}

.introduccion .subtitulo {
    font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-28);
    color: var(--azul);
}

/* Soluciones */
.solucion_numero{
    font-family: var(--header-family);
    font-weight: 300;
    font-style: Light;
    font-size: var(--size-15);
    text-transform: uppercase;
    color: var(--azul);
}

.solucion_titulo {
    font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-21);
    text-transform: uppercase;
    color: var(--azul);
    margin-bottom: var(--margin-elementos);
}

.solucion_texto, .solucion_texto p{
    font-family: var(--body-family);
    font-weight: 400;
    font-size: var(--size-14);
    color:var(--azul);
}

.solucion {
    padding: var(--margin-elementos);
    border-right: 1px solid var(--gris-03);
    border-bottom: 1px solid var(--gris-03);
    height: 100%;
}

.soluciones .row.row_grid.grid_4 > .col:nth-child(4n + 1):nth-last-child(-n + 4) .solucion,
.soluciones .row.row_grid.grid_4 > .col:nth-child(4n + 1):nth-last-child(-n + 4) ~ .col .solucion {
    border-bottom: none;
}


/* último de cada fila en desktop (4 columnas) */
.soluciones .row.row_grid.grid_4 > .col:nth-child(4n) .solucion {
    border-right: none;
}


.soluciones .row.row_grid {
    gap: 0;
}


/* Clientes */
.clientes h2 {
    font-family: var(--header-family);
    font-weight: 500;
    font-style: Medium;
    font-size: var(--size-60);
    color: var(--azul);
    display: inline-block;
     max-width: min-content;
     padding-bottom: var(--margin-elementos);
    text-transform: none;
}

.clientes .cliente-logo img {
    height: 64px;
    width: auto;
    object-fit: contain;
}

.listado_clientes {
    display: flex;
    flex-wrap: wrap;
    gap: var(--margin-bloques);
}

/* Bloque texto e imagen */

.bloque-texto-e-imagen-inner {
    position: relative
}

.bloque-texto-e-imagen-bg {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.container_imagen {
    max-width: 2100px;
    width: 100%;
    margin: auto
}

.bloque-texto-e-imagen-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bloque-texto-e-imagen-bg-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(235.09deg, rgba(168, 0, 40, 0) 7.89%, #A80028 58.85%);
}

.bloque-texto-e-imagen-inner .row {
    padding: var(--padding-interior) 0;
    align-items: center;
   
}

.bloque-texto-e-imagen-texto {
    font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-28);
    color: var(--second-color);
    margin-bottom: var(--margin-bloques);
}

.bloque-texto-e-imagen-antetitulo {
    font-family: var(--header-family);
    font-weight: 400;
    font-size: var(--size-32);
    color: var(--second-color);
    margin-bottom: var(--margin-elementos);
}

.bloque-texto-e-imagen-titulo{
    font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-72);
    color: var(--second-color);
    text-transform: unset;
}

.bloque-texto-e-imagen-inner .col.titulos {
    padding-right: calc(100% / 12 );
} 

.bloque-texto-e-imagen-inner >.container >.row {
    padding-top: calc(2 * var(--padding-interior));
    padding-bottom: calc(2 * var(--padding-interior));
}
    

.bloque-texto-e-imagen-inner .col.caja {
    box-shadow: 0px 0px 13.3px 0px #00000040;
    backdrop-filter: blur(13px);
    -webkit-backdrop-filter: blur(13px);
    padding: var(--padding-interior);
    color: var(--azul);
}

.bloque-texto-e-imagen-item-titulo {
    font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-28);
    text-transform: uppercase;
    color: var(--second-color);
    margin-bottom: var(--margin-elementos);
}

.bloque-texto-e-imagen-item-texto {
    font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-15);
    color: var(--second-color);
    margin-bottom: var(--padding-interior);
    text-transform: uppercase;
}

.bloque-texto-e-imagen-texto-final {
    font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-28);
    color: var(--second-color);
}

/* Retos */
.retos-dual-listado {
    display: flex;
    flex-direction: column;
}

.reto-dual-tab {
    border: none;
    background: none;
    padding: var(--margin-elementos-int);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.reto-dual-contenido {
	display: none;
}

.reto-dual-contenido.active {
	display: block;
}

.reto-dual-numero {
    font-family: var(--header-family);
    font-weight: 300;
    font-size: var(--size-15);
    text-transform: uppercase;
    color: var(--azul);
}

.reto-dual-tab.active {
    background-color: var(--rosa-claro);
}

.reto-dual-tab:hover {
    cursor: pointer;
    background-color: var(--rosa-claro);
}

.reto-dual-tab:hover .reto-dual-numero, 
.reto-dual-tab:hover .reto-dual-tab-titulo {
    color: var(--rojo);
}

.reto-dual-tab-titulo {
    font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-21);
    text-transform: uppercase;
    color: var(--azul);
}

.retos-dual .row {
    align-items: stretch;
}

.retos-dual-contenidos, .reto-dual-contenido {
    height: 100%;
}

.reto-dual-item-pregunta {
    font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-21);
    text-transform: uppercase;
     color: var(--rojo-oscuro);
     margin-bottom: var(--margin-elementos);
}

    
.reto-dual-item-respuesta {
    font-family: var(--body-family);
    font-weight: 400;
    font-size: var(--size-18);
    letter-spacing: 0%;
    color: var(--rojo-oscuro);
    width: 100%;
}

.active .reto-dual-numero, .active .reto-dual-tab-titulo {
    color: var(--rojo);
}

.retos-dual-antetitulo {
    font-family: var(--header-family);
    font-weight: 400;
    font-style: Regular;
    font-size: var(--size-32);
    text-transform: uppercase;
    color: var(--azul);
    padding-right: var(--padding-interior);
}

.retos-dual-titulo {
    font-family: var(--header-family);
    font-weight: 500;
    font-style: Medium;
    font-size: var(--size-60);
    padding-right: calc(100% / 12 * 3);
    margin-bottom: var(--padding-interior);
    text-transform: unset;
}

.reto-dual-texto-final {
    font-family: var(--header-family);
    font-weight: 400;
    font-size: var(--size-32);
    color: var(--rojo-oscuro);
    width: 100%;
}

.reto-dual-contenido.active {
    padding: var(--padding-interior);
    background-color: var(--rosa-claro);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--margin-elementos);
}

.reto-dual-descripcion {
    font-family: var(--header-family);
    font-weight: 600;
    font-size: var(--size-28);
    color: var(--rojo-oscuro);
}

.reto-dual-tab-mobile {
    display: none;
}

.banner-cta.texto_izq .titulo{
    font-weight: 500;
}

.banner-cta.texto_izq .texto{
    width: 50%;
    padding-top: var(--padding-interior);
}
/* Lideres */
.lideres-ia h2 {
    font-family: var(--header-family);
    font-weight: 700;
    font-style: Bold;
    font-size: var(--size-21);
    letter-spacing: 0%;
    text-transform: uppercase;
}

.lideres-ia .col_3_4 {
    padding-left: calc(100% / 12);
    padding-right: 0;
}

.bloque-equipo.col {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: calc(100% / 12 * 1);
}


.lideres-ia .persona {
    margin-bottom: var(--margin-bloques);
}

@media (max-width: 1024px) {
    .introduccion h2{
        font-weight: 600;
    }
	.soluciones .row.row_grid.grid_4 {
		grid-template-columns: repeat(2, 1fr);
	}

	.soluciones .row.row_grid.grid_4 > .col .solucion {
		border-right: 1px solid var(--gris-03);
		border-bottom: 1px solid var(--gris-03);
	}

    .soluciones .row.row_grid.grid_4 > .col:nth-child(4n + 1):nth-last-child(-n + 4) .solucion,
    .soluciones .row.row_grid.grid_4 > .col:nth-child(4n + 1):nth-last-child(-n + 4) ~ .col .solucion {
        border-bottom: 1px solid var(--gris-03);
    }

     .soluciones .row.row_grid.grid_4 > .col:nth-last-child(3):nth-child(2n + 1) .solucion,
    .soluciones .container .row.row_grid.grid_4 > .col:nth-last-child(2):nth-child(2n) .solucion {
        border-bottom: 1px solid var(--gris-03);
    }

	.soluciones .row.row_grid.grid_4 > .col:nth-child(2n) .solucion {
		border-right: none;
	}

    /*
    si la última fila tiene 2 elementos, quita border-bottom a esos 2
    si la última fila tiene 1 elemento, se lo quita solo a ese 1
    todas las filas anteriores mantienen su border-bottom
    */

	.soluciones .container .row.row_grid.grid_4 > .col:last-child:nth-child(2n) .solucion,
    .soluciones .container .row.row_grid.grid_4 > .col:nth-last-child(2):nth-child(2n + 1) .solucion,
    .soluciones .container .row.row_grid.grid_4 > .col:last-child:nth-child(2n + 1) .solucion {
        border-bottom: none;
    }

    .soluciones .row.row_grid.grid_4 > .col:nth-last-child(1):nth-child(2n + 1) .solucion {
        border-right: 1px solid var(--gris-03);
    }

    .lideres-ia .col_3_4 {
        padding-left: var(--margin-bloques);
    }
}

@media (max-width: 980px) {
    .lideres-ia .col_3_4, .lideres-ia .col_1_4 {
        padding-left: 0;
        width: 100%!important;
    } 
}

@media (max-width: 768px) {
    .introduccion .col_3_4 {
        padding-left: 0;
    }

    .banner-texto .titulo {
        font-family: var(--header-family);
        font-weight: 600;
        font-size: var(--size-72);
        text-transform: uppercase;
        color: var(--azul) !important;
        padding-top: var(--margin-elementos-int);
        background-color: var(--second-color);
        padding-left: 0;
        width: 90%;
        padding-bottom: var(--margin-elementos-int);
    }

    .banner-texto .texto {        
        color: var(--azul) !important;
        width: 90%;
    }   

    .banner-texto .banner {
        display: flex;
        flex-direction: column;
        justify-content: end;
        padding-bottom: 0;
    }

    .solucion {
        padding: 0;
        border: none;
        padding-bottom: var(--padding-interior);
    }

    .solucion_numero {
        margin-bottom: 0 ;
        
    }

    .soluciones .row.row_grid.grid_4 {
        display: flex;  
        flex-direction: column;
    }
    
    .bloque-equipo .persona a {
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        gap: var(--margin-elementos);
    }

    .soluciones .container .row.row_grid.grid_4 > .col .solucion,
    .soluciones .row.row_grid.grid_4 > .col .solucion {
        border: none !important;
    }


    .lideres-ia h2 {
        margin-bottom: var(--margin-bloques);
    }
    .retos-dual-titulo {
        padding-right: 0;
    }

    .reto-dual-tab-mobile {
        display: flex;
        width: 100%;
        padding: 0;
        
    }

    .reto-dual-tab:hover {
        background-color: transparent;
    }


    .clientes .cliente-logo img {
        height: 26px;
    }

    .clientes h2 {
        max-width: none;
    }

    .retos-dual-listado {
        display: none;
    }

    .reto-dual-contenido {
        display: block;
        padding: 0;
        background: none;
        height: auto;
    }

    .reto-dual-contenido.active {
        margin-bottom: var(--padding-interior);
    }


    .reto-dual-tab.active {
        padding: 0;
        margin-bottom: var(--margin-bloques);
    }

    .reto-dual-tab {
        padding: var(--margin-bloques);
    }

    .retos-dual-contenido > :not(.reto-dual-tab-mobile) {
        display: none;
    }

    .reto-dual-contenido > .reto-dual-descripcion,
    .reto-dual-contenido > .reto-dual-preguntas,
    .reto-dual-contenido > .reto-dual-texto-final {
        display: none !important;
    }

    .reto-dual-contenido.active {
        padding: var(--margin-bloques);
    }

    .reto-dual-contenido.active > .reto-dual-descripcion,
    .reto-dual-contenido.active > .reto-dual-preguntas,
    .reto-dual-contenido.active > .reto-dual-texto-final {
        display: block !important;
    }

    .reto-dual-tab {
    position: relative;
}

    .reto-dual-tab::after {
        content: '';
        width: 20px;
        height: 20px;
        position: absolute;
        top: var(--margin-bloques);
        right: var(--margin-bloques);
        background-image: url(../images/mas_negro.svg);
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
    }

    .reto-dual-tab.active::after {
        background-image: url(../images/menos_rojo.svg);
        top: 0;
        right: 0;
    }

    .bloque-equipo.col {
	    column-gap: var(--margin-bloques);
    }

   .bloque-tendencias .row_ver_todo {
        display: block;
   }

   .bloque-tendencias {
    padding-bottom: 0;
   }

   .bloque-tendencias .row_ver_todo a{
        padding: 10px 30px;
        width: 100%;
        border: 1px solid var(--azul);
        font-weight: 600;
        font-size: var(--size-18);
        width: 100%;
        margin-bottom: 0;
    }

    .bloque-tendencias.destacado {
        padding-bottom: var(--padding-interior);
    }

    .bloque-tendencias.destacado .row_ver_todo a {
        margin-bottom: var(--margin-bloques);
    }

    .banner-cta .banner {
        aspect-ratio: 3/4;
    }

    .banner-cta.texto_izq .contenido_cta {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

}