/*** RESET ***/
/* Reset CSS básico */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box; /* Garantiza que los paddings y bordes se incluyan en el ancho/alto */
}

html {
    font-size: 100%; /* Asegura que 1rem = 16px por defecto */
    line-height: 1.5; /* Mejor legibilidad */
    -webkit-text-size-adjust: 100%; /* Previene ajustes automáticos de texto en dispositivos móviles */
    scroll-behavior: smooth; /* Transiciones suaves al hacer scroll */
}

body {
    font-family: 'DM-regular', sans-serif; /* Asegura un estilo legible predeterminado */
    background-color: #f5f5f5;
    color: #222222; /* Texto negro por defecto */
    min-height: 100vh;
    text-rendering: optimizeSpeed; /* Mejora el renderizado del texto */
    overflow-x: hidden;
}

a {
    text-decoration: none; /* Quita subrayados predeterminados */
    color: inherit; /* Usa el color del texto del padre */
}

img,
picture,
video,
canvas,
svg {
    max-width: 100%; /* Hace que las imágenes y medios sean responsivos */
    display: block; /* Elimina el espacio en blanco alrededor de imágenes */
}

button,
input,
textarea,
select {
    font: inherit; /* Asegura consistencia en fuentes */
}
/*
ul,
ol {
    list-style: none; Elimina estilos de listas
}*/

table {
    border-collapse: collapse; /* Elimina bordes duplicados en tablas */
    width: 100%; /* Asegura que las tablas ocupen el ancho disponible */
}

blockquote,
q {
    quotes: none; /* Elimina comillas predeterminadas */
}
blockquote::before,
blockquote::after,
q::before,
q::after {
    content: '';
}

hr {
    border: none;
    border-top: 1px solid #ccc; /* Estilo limpio para líneas de separación */
    margin: 1rem 0;
}
/*** FIN RESET ***/


/*** TIPOGRAFÍAS ***/
@font-face {
	font-family: 'DM-regular';
	src: url("../fonts/DMSans-Regular.ttf");
}

@font-face {
	font-family: 'DM-medium';
	src: url("../fonts/DMSans-Medium.ttf");
}

@font-face {
	font-family: 'DM-bold';
	src: url("../fonts/DMSans-Bold.ttf");
}

@font-face {
	font-family: 'DM-semibold';
	src: url("../fonts/DMSans-SemiBold.ttf");
}

@font-face {
	font-family: 'BG-bold';
	src: url("../fonts/BG-Bold.ttf");
}

@font-face {
	font-family: 'BG-semibold';
	src: url("../fonts/BG-Semibold.ttf");
}
/*** FIN TIPOGRAFÍAS ***/

/*** RENGLONES SEPARADORES ***/
.l_row-5 {
	display: block;
	float: left;
	height: 5px;
	width: 100%;
}

.l_row-10 {
	display: block;
	float: left;
	height: 10px;
	width: 100%;
}

.l_row-15 {
	display: block;
	float: left;
	height: 15px;
	width: 100%;
}

.l_row-20 {
	display: block;
	float: left;
	height: 20px;
	width: 100%;
}

.l_row-30 {
	display: block;
	float: left;
	height: 30px;
	width: 100%;
}

.l_row-40 {
	display: block;
	float: left;
	height: 40px;
	width: 100%;
}

.l_row-50 {
	display: block;
	float: left;
	height: 50px;
	width: 100%;
}

.l_row-60 {
	display: block;
	float: left;
	height: 60px;
	width: 100%;
}

.l_row-70 {
	display: block;
	float: left;
	height: 70px;
	width: 100%;
}

.l_row-80 {
	display: block;
	float: left;
	height: 80px;
	width: 100%;
}

.l_row-90 {
	display: block;
	float: left;
	height: 90px;
	width: 100%;
}

.l_row-100 {
	display: block;
	float: left;
	height: 100px;
	width: 100%;
}

/*** linea separación ***/
.l_row-separador {
	border-bottom: 1px solid #dfdfdf;
	display: block;
	float: left;
	height: 1px;
	margin: 10px 0;
	width: 100%;
}
/*** FIN RENGLONES SEPARADORES ***/

/*** INDEX ***/
/* cabecera sitios */
header {
    align-items: center;
    background-color: #121212;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    height: 105px;
    padding: 0 96px;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2000;
}

/* links cabecera */
header a {
    color: #FFF;
}

/* cabecera servicios */
header.header-blue {
    background-color: #0040FF;
}

header.header-blue a.contact {
    background: linear-gradient(to bottom, #0036D6 50%, #F5F5F5 50%);
    background-size: 100% 200%; /* Doble altura para el efecto */
    background-position: top; /* Comienza desde la parte superior */
    transition: background-position 0.2s ease; /* Transición suave */
    backdrop-filter: blur(3px);
}

header.header-blue a.contact:hover {
    background-position: bottom;
    color: #0033CC;
}

/* cabecera culture */
header.header-white {
    background-color: #F5F5F5;
}

header.header-white a.contact {
    background: linear-gradient(to bottom, transparent 50%, #222 50%);
    background-size: 100% 200%; /* Doble altura para el efecto */
    background-position: top; /* Comienza desde la parte superior */
    transition: background-position 0.2s ease; /* Transición suave */
    backdrop-filter: blur(3px);
    border-color: #222;
    color: #222;
}

header.header-white a.contact:hover {
    background-position: bottom;
    color: #f5f5f5;
}

.logo-mobile,
.link-menu-mb {
    display: none;
}

/* boton contacto cabecera */
a.contact {
    align-items: center;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    background: linear-gradient(to bottom, transparent 50%, #ECFF41 50%);
    background-size: 100% 200%; /* Doble altura para el efecto */
    background-position: top; /* Comienza desde la parte superior */
    border: solid 2px #FFF;
    display: flex;
    height: 56px;
    font-family: 'DM-semibold';
    font-size: 1.125rem;
    justify-content: center;
    position: relative;
    transition: background-position 0.2s ease; /* Transición suave */
    width: 181px;
}

a.contact:hover {
    background-position: bottom;
    color: #222222;
}

header.header-white a.contact-selected {
    color: #f5f5f5;
    background-color: #0040FF;
    border-color: #0040FF;
    transition: none;
}

header.header-white a.contact-selected:hover {
    background: #0040FF;
    cursor: default;
    transition: none;
}

/* contenedor navegación */
nav {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
}

/* link navegación */
nav a {
    align-items: center;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    border-radius: 8px;
    display: flex;
    justify-content: center;
    margin-right: 40px;
    padding: 0 8px;
    transition: 0.1s ease;
    height: 40px;
}

nav a:last-child {
    margin-right: 0;
}

nav a:hover {
    background-color: #D6FFE3;
    color: #222222;
    text-decoration: underline;
}

nav a.nav-selected {
    background-color: #71FFA0;
    color: #222222;
    text-decoration: underline;
}

nav a.nav-selected:hover {
    cursor: default;
}

.header-white nav a {
    color: #222;
}

.header-white nav a:hover {
    background-color: #ceedfa;
}

.header-white nav a.nav-selected {
    background-color: #0040FF;
    color: #f5f5f5;
}

/* contenedor seccion hero ppal */
.wrap-hero-home {
    background-color: #333;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    height: 766px;
    margin-top: 105px;
    position: relative;
    width: 100%;
}

/* video hero */
.wrap-hero-home video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: cover; /* Ajusta el video para cubrir el área */
    z-index: 50; /* Envía el video detrás del contenido */
}

/* contenedor contenido sobre video hero */
.wrap-hero-home_content {
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    height: 100%;
    padding: 68px 96px;
    width: 100%;
    position: relative;
    color: white;
    text-align: center;
    z-index: 100;
}

/* label hero */
.wrap-hero-home_content label {
    align-items: center;
    background: url(../img/heart_icon.svg) no-repeat left center;
    display: flex;
    float: left;
    font-family: 'DM-semibold';
    font-size: 1.688rem;
    height: 50px;
    padding-left: 106px;
}

/* contenedor titulos */
.content_titulos {
    align-items: center;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    margin: 0 auto;
    width: 1248px;
}

/* titulo ppal */
.content_titulos h1 {
    font-family: 'BG-bold';
    font-size: 6.125rem;
    margin-bottom: -25px;
    text-align: left;
    width: 90%;
}

.content_titulos h1:last-of-type {
    margin-bottom: 20px;
    text-align: right;
}

/* subtitulo */
.content_titulos p {
    font-family: 'DM-regular';
    font-size: 2.0rem;
    text-align: left;
    width: 90%;
}

/* boton agendar*/
.wrap-hero-home_content a {
    align-items: center;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    border: solid 1px #FFF;
    color: #FFF;
    display: flex;
    font-family: 'DM-regular';
    font-size: 1.125rem;
    width: 210px;
    padding: 16px 20px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin: 0 auto;
    border-radius: 4px;
    border: 1.5px solid var(--White-Smoke, #F5F5F5);
    background: rgba(0, 51, 204, 0.40);
    backdrop-filter: blur(3px);

    background: linear-gradient(to bottom, transparent 50%, #F5F5F5 50%);
    background-size: 100% 200%; /* Doble altura para el efecto */
    background-position: top; /* Comienza desde la parte superior */
    transition: background-position 0.2s ease; /* Transición suave */
}

.wrap-hero-home_content a:hover {
    background-position: bottom;
    color: #0033CC;
}

/* contenedor expertise */
.wrap-expertise-home {
    align-items: center;
    background-color: #F5F5F5;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    width: 100%;
}

/* contenedor titulo separador */
.wrap-expertise-home_wrap-titulo {
    align-items: center;
    background: url(../img/divider-section.png) repeat-x left center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    height: 96px;
    padding: 16px 0;
    margin: 24px 0;
    width: 100%;
}

/* titulo separador */
.wrap-expertise-home_wrap-titulo h2 {
    background: url(../img/hand-rock-icon.svg) no-repeat 32px center #F5F5F5;
    margin-left: 10%;
    padding: 0 32px 0 64px;
}

/* contenedor video */
.wrap-expertise-home_wrap-video {
    align-items: center;
    background-color: #333;
    display: flex;
    float: left;
    flex-flow: column nowrap;
    justify-content: flex-start;
    height: 558px;
    margin-bottom: 130px;
    position: relative;
    width: 1249px;
}

/* video */
.wrap-expertise-home_wrap-video video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: cover; /* Ajusta el video para cubrir el área */
    z-index: 50; /* Envía el video detrás del contenido */
}

/* contenedor solutions */
.wrap-expertise-home_wrap-solutions {
    display: flex;
    flex-flow: column nowrap;
    width: 1249px;
    margin: 0 auto;
    justify-content: flex-start;
    align-items: flex-start;
}

.wrap-expertise-home_wrap-solutions h3 {
    font-family: 'DM-semibold';
    font-size: 3.125rem;
    margin-bottom: 22px;
    text-align: left;
}

.wrap-expertise-home_wrap-solutions p {
    font-size: 1.375rem;
    margin-bottom: 32px;
    text-align: left;
}

.wrap-solutions_wrap-accordion-image {
    align-items: flex-start;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    width: 1249px;
}

.wrap-solutions_wrap-accordion-image img {
    mix-blend-mode: multiply;
    margin-top: 0;
}

/* contenedor acordion */
.wrap-solution_wrap-accordion {
    display: flex;
    flex-flow: column nowrap;
    height: auto;
    width: 50%;
}

/* acordion */
.accordion-item {
    background-color: transparent;
    color: #444;
    cursor: pointer;
    border-bottom: 1.5px solid #454545;
    min-height: 64px;
    margin-bottom: 32px;
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

.accordion-item:hover {
    background-color: #D6FFE3;
}

.accordion-item.active {
    background-color: white;
    border-bottom: solid 1.5px #0040FF;
}

.accordion-header {
    color: #454545;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: 'DM-semibold';
    font-size: 1.5rem;
    height: 64px;
    padding: 4px 16px;
}

.accordion-header .icon {
    background: url(../img/flecha-closed-accordion.png) no-repeat center center;
    height: 36px;
    width: 36px;
    font-size: 18px;
    transition: transform 0.3s ease;
}

.accordion-item:hover .icon {
    background: url(../img/flecha-hover-accordion.png) no-repeat center center;
    background-color: #0040FF;
    transition: transform 0.3s ease;
}

.accordion-item.active .icon {
    background: url(../img/flecha-open-accordion.png) no-repeat center center;
}

.accordion-title {
    flex: 1;
    text-align: left;
}

.accordion-item:hover .accordion-title {
    color: #0033CC;
}

.panel {
    opacity: 0;
    overflow: hidden;
    background-color: white;
    max-height: 0;
    transition: max-height 0.1s ease, opacity 0.5s ease;
}

.panel p {
    display: block;
    margin-bottom: 0!important;
    font-family: 'DM-regular';
    font-size: 1.125rem;
    padding-left: 20px;
    padding-right: 16px;
}

.panel.open {
    padding: 24px 16px 24px 16px;
    display: block;
    float: left;
    opacity: 1;
    width: 100%;
    min-height: 50px;
    transform: translateY(0);
}
/* fin acordion */

.wrap-solutions_wrap-link {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    width: 43.5%;
}

.wrap-solutions_wrap-link span {
    align-items: center;
    color: #4F4F4F;
    display: flex;
    font-family: 'DM-medium';
    font-size: 1.375rem;
    height: 36px;
}

.wrap-solutions_wrap-link a {
    align-items: center;
    background: url(../img/flecha-link.svg) no-repeat 99% center;
    border-bottom: solid 2px #0040FF;
    color: #0040FF;
    display: flex;
    font-family: 'DM-medium';
    font-size: 1.25rem;
    height: 36px;
    padding-right: 36px;
    padding-left: 2px;
    transition: background-color 0.5s ease;
}

.wrap-solutions_wrap-link a:hover {
    background: url(../img/flecha-link-hover.svg) no-repeat 99% center #0040FF;
    color: #F5F5F5;
}

/* contenedor stories */
.wrap-expertise-home_wrap-stories {
    display: flex;
    flex-flow: column nowrap;
    width: 1249px;
    margin: 0 auto;
    justify-content: flex-start;
    align-items: flex-start;
    margin-bottom: 48px;
    margin-top: 136px;
}

.wrap-expertise-home_wrap-stories h4 {
    font-family: 'DM-semibold';
    font-size: 2.625rem;
}

.wrap-stories_wrap-link {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    width: 80%;
}

.wrap-stories_wrap-link span {
    align-items: center;
    color: #4F4F4F;
    display: flex;
    font-family: 'DM-medium';
    font-size: 1.375rem;
    height: 36px;
    margin-right: 20px;
}

.wrap-stories_wrap-link a {
    align-items: center;
    background: url(../img/flecha-link.svg) no-repeat right center;
    border-bottom: solid 2px #0040FF;
    color: #0040FF;
    display: flex;
    font-family: 'DM-medium';
    font-size: 1.25rem;
    height: 36px;
    padding-right: 36px;
    transition: background-color 0.5s ease;
}

.wrap-stories_wrap-link a:hover {
    background: url(../img/flecha-link-hover.svg) no-repeat 99% center #0040FF;
    color: #F5F5F5;
}

/* contenedor casos de exito */
.wrap-caso-exito {
    align-items: center;
    border-bottom: solid 1px #D1D1D1;
    border-top: solid 1px #D1D1D1;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    height: auto;
    transition: background-color 200ms linear;
    width: 100%;
}

.wrap-caso-exito:hover {
    background-color: #121212;
    cursor: pointer;
}

.wrap-caso-exito:hover a {
    background: url(../img/flecha-link-hover.svg) no-repeat 99% center;
    border-color: #FFF;
    color: #FFF;
}

/* caso exito */
.wrap-caso-exito_caso {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    min-height: 350px;
    width: 1249px;
}

.caso_left {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.left_wrap-data {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    gap: 32px;
    width: 50%;
}

.caso_left img {
    height: 76px;
    width: 76px;
}

.left_data-cliente {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    gap: 16px;
    width: 100%;
}

.left_data-cliente h5 {
    font-family: 'BG-semibold';
    font-size: 2.188rem;
    line-height: 2.375rem;
}

.left_data-cliente p {
    font-family: "DM-regular";
    font-size: 1.125rem;
}

.data-cliente_wrap-chip-categoria {
    display: flex;
    align-items: center;
    align-content: center;
    align-self: stretch;
    flex-wrap: wrap;
    gap: 8px;
}

.data-cliente_wrap-chip-categoria span {
    align-items: center;
    -moz-border-radius: 64px;
    -webkit-border-radius: 64px;
    border-radius: 64px;
    border: 1px solid var(--Black-Azabache-950, #222);
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    gap: 8px;
    padding: 4px 12px;
}

.wrap-chip-categoria--join {
    margin-top: 10px;
}

.wrap-chip-categoria--join span {
    background-color: #EEFF86;
}

.wrap-caso-exito:hover .left_data-cliente h5,
.wrap-caso-exito:hover .left_data-cliente p {
    color: #F5F5F5;
}

.wrap-caso-exito:hover .left_data-cliente .data-cliente_wrap-chip-categoria span {
    background-color: #3D3D3D;
    border-color: #F5F5F5;
    color: #F5F5F5;
}

.caso_left a {
    align-items: center;
    background: url(../img/flecha-link.svg) no-repeat 99% center;
    border-bottom: solid 2px #0040FF;
    color: #0040FF;
    display: flex;
    font-family: 'DM-medium';
    font-size: 1.25rem;
    height: 36px;
    padding-right: 36px;
    padding-left: 2px;
    transition: background-color 0.5s ease;
}

.caso_left a:hover {
    background: url(../img/flecha-link-hover.svg) no-repeat 99% center #0040FF;
    color: #F5F5F5;
}

.caso_left a span {
    border-radius: 32px;
    border: 2px solid #222;
    display: flex;
    padding: 2px 16px;
    justify-content: center;
    align-items: center;
    height: 44px;
    gap: 8px;
    width: fit-content;
}

.caso_left a:hover span {
    background-color: #71FFA0;
    border-color: #0033CC!important;
    color: #0033CC!important;
}

.caso_left a span.flecha-caso {
    background: url(../img/flecha-caso.svg) no-repeat center center;
    width: 44px;
}

.wrap-caso-exito:hover .caso_left a span {
    border-color: #F5F5F5;
    color: #F5F5F5;
}

.wrap-caso-exito:hover .caso_left a span.flecha-caso {
    background: url(../img/flecha-caso-hover.svg) no-repeat center center;
}

.wrap-caso-exito:hover .caso_left a:hover span.flecha-caso {
    background: url(../img/flecha-caso-link-hover.svg) no-repeat center center #71FFA0;
}

.caso_left video {
    height: 350px;
    visibility: hidden;
    object-fit: cover;
    width: 400px;
}

.wrap-caso-exito:hover .caso_left video {
    visibility: visible;
}

.wrap-clientes-home {
    background-color: #222222;
    align-items: center;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    min-height: 100px;
    width: 100%;
}

/* contenedor titulo separador */
.wrap-clientes-home_wrap-titulo {
    align-items: center;
    background: url(../img/divider-section-black.png) repeat-x left center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    height: 96px;
    padding: 16px 0;
    margin: 24px 0 0 0;
    width: 100%;
}

/* titulo separador */
.wrap-clientes-home_wrap-titulo h2 {
    background: url(../img/clients-icon.png) no-repeat 32px center #222222;
    color: #F5F5F5;
    margin-left: 10%;
    padding: 0 32px 0 64px;
}

.wrap-clientes-home_wrap-logos {
    display: grid;
    grid-template-columns: repeat(6, 1fr); /* 6 columnas de igual tamaño */
    gap: 0px 80px; /* 80px entre filas y columnas */
    justify-content: center;
    margin-bottom: 40px;
}

.wrap-clientes-home_wrap-logos div {
    display: flex;
    justify-content: center; /* Centra horizontalmente */
    align-items: center; /* Centra verticalmente */
    height: 120px; /* Altura fija para las celdas */
    width: 100%; /* Asegura que ocupe el ancho disponible */
}

.wrap-clientes-home_wrap-logos div img {
    max-height: 100%; /* Asegura que la imagen no exceda la altura del contenedor */
    max-width: 100%; /* Asegura que la imagen no exceda el ancho del contenedor */
    object-fit: contain; /* Mantiene las proporciones del logo */
}

/* contenedor got a project */
.wrap-project-mind-home {
    align-items: center;
    background: url(../img/got-project-bkg.png) no-repeat center bottom;
    background-size: cover;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    gap: 72px;
    height: 716px;
    width: 100%;
}

.wrap-project-mind-home h6 {
    color: #F5F5F5;
    font-family: 'BG-bold';
    font-size: 6.875rem;
}

.wrap-project-mind-home a {
    background-color: transparent;
    color: #F5F5F5;
    display: flex;
    width: 394px;
    padding: 20px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    border: 1.5px solid #F5F5F5;
    font-family: 'DM-semibold';
    font-size: 1.125rem;
    background: linear-gradient(to bottom, transparent 50%, #ECFF41 50%);
    background-size: 100% 200%; /* Doble altura para el efecto */
    background-position: top; /* Comienza desde la parte superior */
    position: relative;
    transition: background-position 0.1s ease; /* Transición suave */
}

.wrap-project-mind-home a:hover {
    background-position: bottom;
    color: #222222;
}

.wrap-culture-home {
    align-items: center;
    background: url(../img/culture-home.png) no-repeat center -130px;
    background-size: cover;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    height: 775px;
    position: relative;
    width: 100%;
}

.wrap-culture-home_culture {
    background-color: #F6F6F6;
    display: flex;
    width: 608px;
    padding: 32px;
    flex-direction: column;
    align-items: flex-end;
    position: absolute;
    left: 50%;
    bottom: -250px;
    gap: 16px;
}


.wrap-culture-home_culture label {
    font-family: 'DM-medium';
    font-size: 1.25rem;
    text-align: left;
    width: 100%;
}

.wrap-culture-home_culture span {
    color: #0040FF;
    font-family: 'BG-semibold';
    font-size: 2.625rem;
    line-height: 48px; /* 114.286% */
    letter-spacing: 0.42px;
}

.wrap-culture-home_culture p {
    align-self: stretch;
    font-family: 'DM-medium';
    font-size: 1.25rem;
}

.wrap-culture-home_culture a {
    background: url(../img/flecha-link.svg) no-repeat right center;
    border-bottom: solid 2px #0040FF;
    color: #0040FF;
    font-family: 'DM-semibold';
    font-size: 1.25rem;
    padding-right: 36px;
    float: right;
    transition: background-color 0.5s ease;
}

.wrap-culture-home_culture a:hover {
    background: url(../img/flecha-link-hover.svg) no-repeat 99% center #0040FF;
    color: #F5F5F5;
}

footer {
    align-items: flex-start;
    background: linear-gradient(180deg, #070C1C 0%, #250D69 100%);
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    min-height: 350px;
    height: auto;
    width: 100%;
}

@media (min-width: 1024px) {
  footer.index-footer {
    padding-top: 400px; /* Solo desktop */
  }
}

.wrap-data-footer {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    height: auto;
    padding: 0 96px;
    margin: 0 auto;
}

.wrap-data-footer_contact {
    border-bottom: solid 1px #F5F5F5;
    display: flex;
    padding-bottom: 32px;
    padding-top: 355px;
    margin-bottom: 54px;
    width: 100%;
}

.wrap-data-footer_contact a {
    border-radius: 4px;
    border: 1.5px solid #F5F5F5;
    background: linear-gradient(to bottom, transparent 50%, #ECFF41 50%);
    background-size: 100% 200%; /* Doble altura para el efecto */
    background-position: top; /* Comienza desde la parte superior */
    color: #F5F5F5;
    display: flex;
    font-family: 'DM-semibold';
    font-size: 1.125rem;
    width: 182px;
    padding: 20px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    transition: background-position 0.2s ease; /* Transición suave */
}

.wrap-data-footer_contact a:hover {
    background-position: bottom;
    color: #222222;
}

.wrap-nav-places {
    color: #F5F5F5;
    align-items: flex-start;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    margin-bottom: 64px;
    width: 100%;
}

.wrap-nav-places_nav {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    gap: 63px;
    margin-right: 139px;
}

.wrap-nav-places_nav a {
    background: url(../img/flecha-link-hover.svg) no-repeat 99% center;
    border-bottom: solid 2px #F5F5F5;
    font-family: 'DM-regular';
    font-size: 1.25rem;
    padding-right: 36px;
    padding-bottom: 4px;
    transition: background-color 0.5s ease;
}

.wrap-nav-places_nav a:hover {
    background: url(../img/flecha-link-hover.svg) no-repeat 99% center #0040FF;
    color: #F5F5F5;
}


.wrap-nav-places_places {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    font-family: 'DM-regular';
    font-size: 1.25rem;
    gap: 40px;
    margin-right: 139px;
    width: 450px;
}

.places_data {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    gap: 8px;
    width: 100%;
}

.places_data a.data_map {
    background: url(../img/icon-map-footer.png) no-repeat left 6px;
    border-bottom: solid 1px #F5F5F5;
    display: flex;
    flex-flow: row nowrap;
    height: 35px;
    line-height: 35px;
    width: fit-content;
    padding-left: 35px;
    padding-bottom: 5px;
    transition: background-color 0.5s ease;
}

.places_data a.data_map:hover {
    background-color: #0040FF;
    color: #F5F5F5;
}

.places_data span {
    font-family: 'DM-regular';
    font-size: 1rem;
}

.places_data a.data_tel {
    align-items: center;
    background: url(../img/icon-tel-footer.png) no-repeat left 6px;
    border-bottom: solid 1px #F5F5F5;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    height: 35px;
    width: fit-content;
    padding-left: 35px;
    padding-bottom: 5px;
    transition: background-color 0.5s ease;
}

.places_data a.data_tel:hover {
    background-color: #0040FF;
    color: #F5F5F5;
}

.places_privacy {
    background: url(../img/flecha-link-hover.svg) no-repeat 99% center;
    border-bottom: solid 1px #F5F5F5;
    font-family: 'DM-regular';
    font-size: 1.25rem;
    padding-bottom: 2px;
    padding-right: 36px;
    width: 162px;
    transition: background-color 0.5s ease;
}

.places_privacy:hover {
    background: url(../img/flecha-link-hover.svg) no-repeat 99% center #0040FF;
    color: #F5F5F5;
}

.wrap-nav-places_rrss {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    gap: 25px;
    justify-content: flex-start;
}

.rrss_linkedin {
    background: url(../img/icon-linkedin.svg) no-repeat center center;
    height: 32px;
    width: 32px;
}

.rrss_instagram {
    background: url(../img/icon-instagram.svg) no-repeat center center;
    height: 32px;
    width: 32px;
}

.wrap-data-footer img {
    fill: #B0B0B0;
    mix-blend-mode: color-dodge;
}
/*** FIN INDEX ***/


/*** PROJECTS ***/
.wrap-hero-projects_content label {
    background: url(../img/arrow_icon.svg) no-repeat left center;
}

.wrap-hero-projects_content .content_titulos h1 {
    line-height: 6rem;
}

.wrap-hero-projects_content .content_titulos h1:last-of-type {
    margin-bottom: 70px;
}

.wrap-hero-projects_content .content_titulos p {
    margin-bottom: 50px;
}

/* contenedor cabecera planning */
.wrap-planning {
    align-items: center;
    background-color: #F5F5F5;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    margin: 0 auto;
    margin-bottom: 60px;
    margin-top: 190px;
    width: 1248px;
}

.wrap-planning_left {
    align-items: flex-start;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    gap: 48px;
    width: 55%;
}

.wrap-planning_left h2 {
    font-family: 'BG-semibold';
    font-size: 3.125rem;
    line-height: 3rem;
}

.wrap-planning_left p {
    font-family: 'DM-medium';
    font-size: 1.25rem;
    line-height: 2.25rem;
}

.wrap-planning img {
    width: 325px!important;
    height: auto!important;
    mix-blend-mode: color-burn;
}

.wrap-clients-filters {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    height: 100px;
    width: 1248px;
    margin: 0 auto;
    margin-bottom: 20px;
}

.wrap-clients-filters a {
    border-radius: 64px;
    border: 1px solid #454545;
    display: flex;
    font-family: 'DM-medium';
    font-size: 1.125rem;
    padding: 8px 24px;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

.wrap-clients-filters a:hover {
    background-color: #ccc;
}

.wrap-clients-filters a.active {
    background-color: #454545;
    color: #f5f5f5;
}

.wrap-clients-filters a.filter-selected:hover {
    cursor: default;
}

.hidden {
    display: none;
}

.footer-projects {
    padding-top: 80px;
}

.wrap-hero-projects {
    background: linear-gradient(90deg, rgba(18,18,18,1) 0%, rgba(8,50,196,1) 100%);
    background-position: center center;
}

.wrap-hero-project::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #3498db, #9b59b6); /* Fondo degradado */
    z-index: 1; /* Mantiene el fondo detrás del contenido */
}

.wrap-hero-projects img.rubik {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2; /* Asegura que esté sobre el degradado */
}

/* contenedor separadores */
.wrap-separadores {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    width: 100%;
}

/* separador */
.wrap-separador {
    align-items: center;
    background: url(../img/separador.png) repeat-x left center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    height: 96px;
    margin-bottom: 50px;
    padding: 0 180px;
    width: 50%;
}

.wrap-separador:last-child {
    justify-content: flex-end;
}

/* texto separador */
.wrap-separador span {
    color: #0040FF;
    font-family: 'DM-medium';
    font-size: 1.5rem;
    padding: 0 20px 0 50px;
    padding-left: 50px;
    /* border: 2px solid green; */
    /* width: 220px; */
}

.wrap-separador:first-child span {
    background: url(../img/icon-curious.svg) no-repeat 20px center #F5F5F5;
}

.wrap-separador:last-child span {
    background: url(../img/hand-rock-icon-blue.svg) no-repeat 20px center #F5F5F5;
}
/*** FIN PROJECTS ***/


/*** SERVICES ***/
.wrap-hero-services_content label {
    background: url(../img/arrow_icon-services.svg) no-repeat left center;
}

.wrap-hero-services_content .content_titulos h1:last-of-type {
    text-align: left;
    line-height: 6rem;
    margin-bottom: 140px;
}

.wrap-hero-services_content a {
    background: linear-gradient(to bottom, rgba(0, 51, 204, 0.80) 50%, #F5F5F5 50%);
    background-size: 100% 200%; /* Doble altura para el efecto */
    background-position: top; /* Comienza desde la parte superior */
    transition: background-position 0.2s ease; /* Transición suave */
    backdrop-filter: blur(3px);
    margin-bottom: 90px;
    width: 394px;
}

.wrap-hero-services_content a:hover {
    background-position: bottom;
    color: #0033CC;
}

.wrap-mindset {
    margin-top: 130px;
}

.wrap-mindset .wrap-planning_left {
    width: 75%;
}

.wrap-mindset .wrap-planning_left p {
    font-family: 'DM-regular';
    font-size: 1.75rem;
    line-height: 3rem;
    margin-bottom: 50px;
    width: 90%;
}

.wrap-img-services {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
    margin-bottom: 80px;
    margin-top: 48px;
    width: 100%;
}

.wrap-img-services img {
    display: flex;
    height: 186px;
    float: right;
    width: auto;
}

/* tabs */
.tabs-container {
    /*max-width: 1249px;*/
    margin: 0 auto;
    height: auto;
    display: flex;
    flex-direction: column;
    margin-bottom: 100px;
    margin-top: 80px;
}

.tabs-header {
    border-bottom: solid 2px #121212;
    display: flex;
    justify-content: flex-start;
    padding: 10px 0;
    box-sizing: border-box;
    padding: 0 20%;
}

.tabs-header button {
    background: none;
    border: none;
    color: #454545;
    cursor: pointer;
    font-size: 1rem;
    padding: 10px 20px;
    transition: background 0.3s, color 0.3s;
    display: flex;
    padding: 4px 16px;
    align-items: center;
    gap: 40px;
    height: 56px;
    border-radius: 8px 8px 0px 0px;
    box-sizing: border-box;
    font-family: 'DM-medium';
    font-size: 1.25rem;
}

.tabs-header button.active {
    background: #121212;
    color: white;
    font-family: 'DM-semibold';
}

.tabs-header button:hover {
    background: #D1D1D1;
}

.tabs-header button.active:hover {
    background: #121212;
    color: white;
    cursor: default;
}

.tabs-content {
    flex: 1;
    display: none;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 40px 20% 0 20%;
    box-sizing: border-box;
}

.tabs-content.active {
    display: flex;
}

.tabs-content .data-cliente_wrap-chip-categoria {
    width: 608px;
}

.tabs-content .data-cliente_wrap-chip-categoria span {
    border-color: #454545;
    color: #454545;
    font-size: 1.125rem;
    height: 42px;
    padding: 0 24px;
}

.tabs-content-thanks {
    padding-left: 106px;
}

.tabs-content-thanks .success-message {
    margin-top: 0;
}

.content-text {
    flex: 1;
    margin-right: 20px;
}

.content-text p {
    color: #454545;
    font-family: 'DM-regular';
    font-size: 1.375rem;
    line-height: 2.125rem;
    margin-bottom: 64px;
    margin-top: 30px;
    width: 608px;
}

.content-text .links {
    margin-top: 10px;
}

.content-text .links a {
    display: inline-block;
    margin-right: 10px;
    text-decoration: none;
    color: #007BFF;
    transition: color 0.3s;
}

.content-text .links a:hover {
    color: #0056b3;
}

.content-image {
    width: 450px;
    height: 450px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.content-image img {
    object-fit: cover;
}

.tabs-navigation {
    display: flex;
    justify-content: flex-end;
    padding: 10px 20px;
    gap: 10px;
    box-sizing: border-box;
    width: 1249px;
    margin: 40px auto 0 auto;
}

.nav-button {
    background: #222222;
    color: white;
    border: none;
    cursor: pointer;
    padding: 10px 20px;
    font-size: 1.5rem;
    transition: background 0.3s;
}

.nav-button:hover {
    background: rgba(0, 0, 0, 0.7);
}
/* fin tabs */

/* banner */
.banner {
    position: relative;
    width: 100%;
    height: 100px;
    background-color: #121212;
    overflow: hidden;
    display: flex;
    align-items: center;
}
.marquee-container {
    display: flex;
    width: max-content;
    animation: scroll 10s linear infinite;
}
.marquee {
    white-space: nowrap;
    color: white;
    font-family: 'DM-regular';
    font-size: 1.5rem;
    margin-right: 5px; /* Espaciado entre repeticiones */
}
@keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}
/* fin banner */

/* contenedor seccion growth */
.wrap-growth-services {
    background: url(../img/img-growth.png) no-repeat center top #333;
    background-size: cover;
    align-items: flex-end;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-end;
    height: 750px;
    margin-bottom: 36px;
    width: 100%;
}

/* contenedor help growth */
.wrap-growth-services_help {
    align-items: flex-start;
    background: #71FFA0;
    display: flex;
    flex-flow: column nowrap;
    gap: 16px;
    height: 360px;
    justify-content: flex-start;
    margin-bottom: 72px;
    margin-right: 96px;
    padding: 32px;
    width: 608px;
}

.wrap-growth-services_help span {
    color: #222222;
    font-family: 'DM-medium';
    font-size: 1.25rem;
    line-height: 1.5rem;
}

.wrap-growth-services_help h3 {
    color: #0040FF;
    font-family: 'BG-semibold';
    font-size: 2.625rem;
    line-height: 3rem;
}

.wrap-growth-services_help p {
    color: #222222;
    font-family: 'DM-medium';
    font-size: 1.375rem;
    line-height: 2.5rem;
}

/* contendor servicios */
.wrap-servicios {
    align-items: flex-start;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    gap: 40px;
    margin-bottom: 40px;
    width: 100%;
}

/* contenedor servicio */
.wrap-servicios_wrap-tipo {
    align-items: stretch;
    background-color: #FFF;
    display: flex;
    float: left;
    height: 650px;
    overflow: hidden;
    padding-left: 187px;
    width: 100%;
    transition: height 0.3s ease-in-out;
    flex-wrap: nowrap;
}

.wrap-tipo_data {
    align-items: flex-start;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    gap: 40px;
    width: 50%;
    height: 100%;
    margin-bottom: 55px;
    padding-right: 120px;
    padding-top: 100px;
    flex: 1;
}

.wrap-tipo_data h4 {
    color: #222222;
    font-family: 'DM-bold';
    font-size: 3.1255rem;
    line-height: 3.5rem;
}

.wrap-tipo_data p {
    color: #454545;
    font-family: 'DM-medium';
    font-size: 1.375rem;
    line-height: 2rem;
}

.wrap-tipo_img {
    display: flex;
    align-items: stretch;
    float: right;
    width: 50%;
    flex: 1;
}

.wrap-tipo_img img {
    width: 100%;
    height: 650px;
    object-fit: cover;
    transition: height 0.3s ease-in-out;
}

.wrap-tipo_img img.img-top {
    object-position: top;
}

.wrap-tipo_img img.img-center {
    object-position: center;
}

/* toggle */
.info {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    padding-left: 40px;
}

.info ul {
    margin: 0;
    padding: 0;
    line-height: 1.625rem;
    list-style: none;
}

.info ul li {
    font-family: "DM-semibold";
    font-size: 1.5rem;
    list-style: disc!important;
    padding: 8px 0;
}

.toggle-link {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    font-family: "DM-medium";
    font-size: 1.375rem;
    width: 100%;
}

.toggle-link span {
    background-color: #F5F5F5;
    border-radius: 64px;
    border: 2px solid #0040FF;
    color: #0040FF;
    font-family: "DM-bold";
    font-size: 1.5rem;
    line-height: 1.7rem;
    display: flex;
    padding: 2px 30px;
    justify-content: flex-start;
    align-items: center;
    height: 85px;
    gap: 8px;
    width: fit-content;
}

.toggle-link span:first-child {
    width: 100%;
}

.toggle-link span:last-child {
    width: 91px;
}

.toggle-link:hover span {
    background-color: #D6FFE3;
}

.toggle-link img {
    margin-right: 8px;
    transition: transform 0.3s ease;
    max-width: 160%;
    margin-left: -7px;
}

.toggle-link:hover img {
    transform: rotate(-45deg);
}

.toggle-link.open img {
    transform: rotate(-90deg);
}

.toggle-link.open span {
    background-color: #71FFA0;
}
/*** FIN SERVICES ***/


/*** MENU MOBILE ***/
.menu-icon {
    font-size: 1.5rem;
    cursor: pointer;
    user-select: none;
}

.menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #121212 0%, #1A1740 100%);
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 32px;
    align-items: center;
    transform: translateY(-100%);
    transition: transform 0.3s ease-in-out;
    z-index: 9000;
}

.menu.active {
    transform: translateY(0);
}

.menu a {
    text-decoration: none;
    color: #fff;
    font-family: 'DM-medium';
    font-size: 2rem;
    line-height: 2rem;
    margin: 10px 0;
}

.menu a.menu-button {
    border-radius: 4px;
    border: 1.5px solid #F5F5F5;
    background: var(--Primary-Aa-700, #B42682);
    color: #F5F5F5;
    font-family: 'DM-semibold';
    font-size: 1.125rem;
    height: 64px;
    display: flex;
    padding: 20px 44px;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

.menu a.menu-button:hover {
    background-color: #ddd;
}

.menu img {
    position: absolute;
    bottom: 0;
}
/*** FIN MENU MOBILE ***/


/*** CULTURE ***/
/* contenedor hero cultura */
.wrap-hero-culture {
    background-color: #F5F5F5;
    height: auto;
}

.wrap-hero-culture_content {
    height: auto;
}

.wrap-hero-culture_content label {
    background: url(../img/heart-icon-culture.svg) no-repeat left center;
    color: #000;
}

.wrap-hero-culture_content .content_titulos {
    color: #222222;
    margin-top: 40px;
}

.wrap-hero-culture_content .content_titulos h1 {
    line-height: 6rem;
    text-align: left;
}

.content_wrap-video-culture {
    display: block;
    float: left;
    height: 448px;
    position: relative;
    width: 100%;
}

/* video hero */
.content_wrap-video-culture video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: cover; /* Ajusta el video para cubrir el área */
    z-index: 50; /* Envía el video detrás del contenido */
}

.wrap-boosting-culture {
    align-items: flex-start;
    background: linear-gradient(180deg, #FAE9F7 0%, #DBD5FF 100%);;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    height: 760px;
    padding: 113px 0px 113px 0px;
    width: 100%;
}

.wrap-boosting-culture_content {
    align-items: flex-start;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    margin: 0 auto;
    padding-right: 20%;
    width: 1248px;
}

.wrap-boosting-culture_content h2 {
    background: url(../img/img-boosting-title-culture.png) no-repeat left center;
    font-family: 'BG-bold';
    font-size: 4.125rem;
    line-height: 6rem;
    padding-left: 80px;
    text-align: left;
}

.wrap-boosting-culture_content p {
    font-family: 'DM-regular';
    font-size: 1.75rem;
    line-height: 3rem;
}

.wrap-boosting-culture img {
    align-self: flex-end;
    display: flex;
    height: 186px;
    float: right;
    width: auto;
}

/* contenedor team built */
.wrap-team-built {
    background: url(../img/img-career-plan.png) no-repeat left bottom;
    display: flex;
    flex-flow: column nowrap;
    height: 1835px;
}

.wrap-team-built h3 {
    color: #F5F5F5;
    font-family: 'BG-semibold';
    font-size: 2.625rem;
    line-height: 3rem;
    margin: 0 auto 24px auto;
    width: 1249px;
}

/* carrusel */
.carousel {
    display: flex;
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 756px;
}

.carousel-track {
    display: flex;
    transition: transform 0.5s ease-in-out;
    width: 100%;
}

.carousel-slide {
    display: flex;
    align-items: center;
    flex: 0 0 80%;
    margin-right: 50px; /* Space for next slide preview */
    height: 100%;
}

.carousel-image {
    width: calc(100% - 392px); /* Adjusted width for text container */
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.carousel-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.carousel-content {
    align-items: flex-start;
    color: #f5f5ff;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    gap: 32px;
    margin: 0 32px;
    width: 392px;
}

.carousel-title {
    font-family: 'Dm-bold';
    font-size: 3.125rem;
    line-height: 3.5rem;
    margin-bottom: 10px;
}

.carousel-paragraph {
    font-family: 'DM-regular';
    font-size: 1.25rem;
    line-height: 1.75rem;
}

.carousel-button {
    position: absolute;
    bottom: 20px;
    width: 56px;
    height: 56px;
    background-color: #F5F5F5;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    z-index: 10;
}

.carousel-button:hover {
    background-color: #007BFF;
    stroke: red;
    fill: red;
}

/*.carousel-button:hover svg {
}*/

.carousel-button svg {
    width: 24px;
    height: 24px;
}

.carousel-button:hover svg path {
    stroke: #FFF;
}

.carousel-button-prev {
    left: calc(100% - 130px);
}

.carousel-button-next {
    left: calc(100% - 70px);
}

.carousel-button {
    border-radius: 0; /* Make buttons square */
}

.carousel[data-active-slide="0"] .carousel-button-prev {
    display: none;
}

.carousel[data-active-slide="4"] .carousel-button-next {
    display: none;
}

.carousel[data-active-slide="0"] .carousel-button-next,
.carousel[data-active-slide="1"] .carousel-button-prev,
.carousel[data-active-slide="1"] .carousel-button-next,
.carousel[data-active-slide="2"] .carousel-button-prev,
.carousel[data-active-slide="2"] .carousel-button-next,
.carousel[data-active-slide="3"] .carousel-button-prev,
.carousel[data-active-slide="3"] .carousel-button-next,
.carousel[data-active-slide="4"] .carousel-button-prev {
    display: flex;
}

/* separador */
.wrap-separadores--culture .wrap-separador {
    align-items: center;
    background: url(../img/divider-section-culture.png) repeat-x left center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    height: 96px;
    margin-bottom: 30px;
    padding: 0 187px;
    width: 50%;
}

.wrap-separadores--culture .wrap-separador:last-child {
    justify-content: flex-end;
}

/* texto separador */
.wrap-separadores--culture .wrap-separador span {
    color: #CD359C;
    font-family: 'DM-medium';
    font-size: 1.5rem;
    padding: 0 20px 0 50px;
}

.wrap-separadores--culture .wrap-separador:first-child span {
    background: url(../img/icon-curious-culture.png) no-repeat 20px center #121212;
}

.wrap-separadores--culture .wrap-separador:last-child span {
    background: url(../img/hand-rock-icon-culture.png) no-repeat 20px center #121212;
}

.wrap-career-plan {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    gap: 32px;
    height: 823px;
    width: 1091px;
    margin: 0 auto;
}

.wrap-career-plan img {
    width: 474px;
}

.wrap-career-plan_wrap-texto {
    align-items: center;
    color: #F5F5F5;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    gap: 24px;
    width: 585px;
}

.wrap-career-plan_wrap-texto h5 {
    font-family: 'DM-bold';
    font-size: 3.125rem;
    line-height: 3.5rem;
}

.wrap-career-plan_wrap-texto p {
    font-family: 'DM-medium';
    font-size: 1.375rem;
    line-height: 2.25rem;
}

.wrap-maker-space {
    display: flex;
    flex-flow: column nowrap;
    min-height: 100px;
    padding: 166px 0 75px 96px;
    width: 100%;
}

.wap-maker-space_wrap-content {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    gap: 32px;
    min-height: 796px;
    width: 100%;
}

.wrap-content_data {
    align-items: flex-start;
    color: #454545;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    padding-right: 50px;
}

.wrap-content_data h5 {
    font-family: 'BG-bold';
    font-size: 4.125rem;
    line-height: 6rem;
    margin-bottom: 16px;
}

.wrap-content_data p {
    font-family: 'DM-medium';
    font-size: 1.5rem;
    line-height: 2.125rem;
    margin-bottom: 32px;
}

.data_list-spaces .wrap-solution_wrap-accordion {
    width: 100%;
}

.wrap-imagenes {
    align-items: center;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    height: auto;
    width: 100%;
}

.image-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
    margin: 32px auto 0 auto;
    width: 1249px;
}

.image-grid img {
    width: 100%;
    height: 438px;
    object-fit: cover; /* Mantiene el aspecto de la imagen */
}

.image-grid .full-width {
    grid-column: span 2; /* Hace que esta imagen ocupe ambas columnas */
    height: 719px; /* Altura específica para la imagen de dos columnas */
}

.wrap-join-team {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
}

.wrap-join-team h6 {
    font-family: 'BG-bold';
    font-size: 2.625rem;
    line-height: 5rem;
    margin: 80px auto 24px auto;
    width: 1249px;
}

.grid-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px 32px; /* 24px entre filas, 32px entre columnas */
    margin: 0 auto 40px auto;
    width: 1249px;
  }

  .card {
    background-color: #F5F5F5;
    border: solid 1.5px #D1D1D1;
    border-radius: 16px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%; /* Ajusta al ancho de la columna */
    height: 470px;
  }

  .card img,
  .card video {
    width: 100%; /* Se ajusta al ancho de la tarjeta */
    height: 224px;
    border-radius: 4px; /* Opcional: redondeo para la imagen */
    object-fit: cover; /* Asegura que la imagen llene el espacio */
  }

  .card h3 {
    font-family: 'DM-semibold';
    font-size: 1.375rem;
    line-height: 2rem;
    margin: 16px 0 8px 0;
  }

  .card p {
    color: #454545;
    font-family: 'DM-regular';
    font-size: 1.063rem;
    line-height: 1.5rem;
    margin-bottom: 16px;
    display: -webkit-box;           /* WebKit */
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .card .tags {
    display: flex;
    gap: 8px; /* Espacio entre los links */
    flex-wrap: wrap;
  }

  .card .tags span {
    font-size: 12px;
    color: #007BFF;
    text-decoration: none;
  }

  .card .apply {
    align-items: center;
    border-bottom: solid 1px #222;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    height: 36px;
    margin-top: 20px;
    font-family: 'DM-regular';
    font-size: 1.25rem;
    text-decoration: none;
    font-weight: bold;
    padding: 0 5px;
    width: 100%;
  }

  .card .apply:hover {
    background-color: #0040FF;
    color: #F5F5F5;
  }

  .card .apply:hover svg path {
    background-color: #0040FF;
    color: #F5F5F5;
    stroke: #F5F5F5;
  }
/*** FIN CULTURE ***/


/*** CONTACT - JOIN THE TEAM ***/
/* contenedor hero contacto */
.wrap-hero-contact {
    background: url(../img/fondo-hero-contact.png) no-repeat right center;
    color: #222!important;
    height: 435px;
    background-size: contain;
    mix-blend-mode: multiply;
}

.img-fondo-mobile {
    display: none;
}

.wrap-hero-home_content.wrap-hero-contact_content {
    padding: 68px 96px 112px 96px;
}

.wrap-hero-contact_content label {
    background: url(../img/arrow-contact.svg) no-repeat left center;
    color: #222;

}

.wrap-hero-contact_content .content_titulos {
    color: #222;
    display: flex;
    flex-flow: column nowrap;
    gap: 16px;
}

.wrap-hero-contact_content .content_titulos h1:last-of-type {
    line-height: 6rem;
    margin-bottom: 0;
    text-align: left;
}

.tabs-container--forms {
    margin-top: -58px;
    position: relative;
    z-index: 1000;
}

/* formulario */
.wrap-form {
    align-items: flex-start;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    height: auto;
    width: 608px;
}

.wrap-form h2 {
    font-family: 'DM-medium';
    font-size: 1rem;
    font-weight: inherit;
    margin-bottom: 40px;
    width: 100%;
}

form {
    display: flex;
    flex-flow: column nowrap;
    width: 100%;
}

form label {
    display: block;
    font-family: 'DM-medium';
    font-size: 1rem;
    margin-bottom: 8px;
}

form label i {
    color: #757575;
    font-family: 'DM-regular';
    font-size: 1rem;
    font-style: normal;
}

form input, form textarea {
    background-color: #e7e7e7;
    width: 100%;
    padding: 10px;
    border: 1px solid #5d5d5d;
    border-radius: 8px;
    margin-bottom: 40px;
}

form textarea {
    resize: vertical;
}

form button {
    border-radius: 4px;
    border: 1.5px solid #222;
    background: #FFF;
    color: #222222!important;
    display: flex;
    height: 64px;
    font-size: 1.125rem;
    padding: 20px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    align-self: stretch;
    background: linear-gradient(to bottom, transparent 50%, #121212 50%);
    background-size: 100% 200%; /* Doble altura para el efecto */
    background-position: top; /* Comienza desde la parte superior */
    transition: background-position 0.2s ease; /* Transición suave */
    width: 100%;
}

form button:hover,
form button:focus {
    background-position: bottom;
    color: #f5f5f5!important;
    cursor: pointer;
}

.success-message {
    align-items: flex-start;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    height: auto;
    margin-top: 100px;
    width: 608px;
}

.success-message p {
    color: #222222;
    font-family: 'BG-semibold';
    font-size: 2.625rem;
    line-height: 3rem;
    margin: 0px 0 70px 0;
    padding-left: 0;
    text-align: left;
}

.success-message button {
    border-radius: 4px;
    border: 1.5px solid #222;
    background: #FFF;
    display: flex;
    height: 64px;
    font-size: 1.125rem;
    padding: 20px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    align-self: stretch;
    background: linear-gradient(to bottom, transparent 50%, #121212 50%);
    background-size: 100% 200%; /* Doble altura para el efecto */
    background-position: top; /* Comienza desde la parte superior */
    transition: background-position 0.2s ease; /* Transición suave */
    width: 100%;
}

.success-message button:hover {
    background-position: bottom;
    color: #f5f5f5;
    cursor: pointer;
}

.wrap-form_wrap-phone-form {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    width: 100%;
}

.wrap-phone-form_wrap-codigo {
    align-items: flex-start;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    width: 100%;
}

.wrap-phone-form_wrap-codigo:first-child {
    margin-right: 8px;
    width: 22%;
}

.file-upload {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 40px;
}

.file-upload input[type="file"] {
    display: none;
}

.file-upload label {
    display: flex;
    align-items: center;
    font-family: 'DM-regular';
    font-size: 1rem;
    justify-content: center;
    gap: 5px;
    padding: 10px;
    height: 44px;
    border: 1px solid #6D6D6D;
    border-radius: 8px;
    background-color: #f5f5f5;
    color: #6D6D6D;
    cursor: pointer;
}

.file-upload label:hover {
    background-color: #f0f0f0;
}

.file-upload label span {
    background: url(../img/icon-adjuntar.png) no-repeat left center;
    height: 24px;
    margin-right: 5px;
    width: 24px;
}

.file-upload .file-name {
    font-size: 14px;
    color: #555;
}

.file-upload .clear-file {
    font-size: 12px;
    color: #ff0000;
    cursor: pointer;
}

.file-upload .clear-file:hover {
    text-decoration: underline;
}
/*** FIN CONTACT - JOIN THE TEAM ***/


/*** PROYECTOS ***/
.wrap-hero-caso-exito {
    background-color: #f5f5f5;
    height: auto;
    min-height: inherit;
    width: 100%;
}

.wrap-hero-home_content.wrap-hero-caso-exito_content {
    color: #222;
    padding: 60px 96px 80px 96px;
    justify-content: flex-start;
    align-items: flex-start;
    text-align: left;
}

/* link volver */
.wrap-hero-caso-exito_content a {
    align-items: center;
    background: url(../img/arrow-back-projects.png) no-repeat left center;
    border-bottom: solid 2px #222222;
    color: #222222;
    display: flex;
    font-family: 'DM-regular';
    font-size: 1.25rem;
    height: 36px;
    padding-left: 36px;
    padding-right: 2px;
    transition: background-color 0.5s ease;
    margin: 0;
    width: fit-content;
}

.wrap-hero-caso-exito_content a:hover {
    background: url(../img/arrow-back-projects-hover.png) no-repeat left center;
    background-color: #0040FF;
    border-color: #0040FF;
    color: #FFF;
}

.wrap-hero-caso-exito_content a span {
    border-radius: 32px;
    border: 2px solid #222;
    display: flex;
    padding: 2px 16px;
    justify-content: center;
    align-items: center;
    height: 44px;
}

.wrap-hero-caso-exito_content a span.flecha-caso {
    background: url(../img/flecha-back-caso.svg) no-repeat center center;
    width: 44px;
}

.wrap-hero-caso-exito_content a:hover span {
    background-color: #ECFF41;
    border-color: #222!important;
    color: #222!important;
}

/* cabecera caso de exito */
.wrap-cabecera-caso {
    align-items: flex-start;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    margin: 56px auto 0 auto;
    width: 1249px;
}

.wrap-cabecera-caso_wrap-identidad {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    margin-bottom: 40px;
    width: 100%;
}

.wrap-cabecera-caso_wrap-identidad--long-name {
    flex-flow: column nowrap;
}

.wrap-identidad_wrap-titulo {
    align-items: flex-start;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    gap: 13px;
    width: 165%;
}

.wrap-cabecera-caso_wrap-identidad--long-name .wrap-identidad_wrap-titulo {
    margin-bottom: 36px;
}

.wrap-identidad_wrap-titulo h1 {
    font-family: 'BG-bold';
    font-size: 6.125rem;
    line-height: 6rem;
}

.wrap-cabecera-caso_descripcion {
    font-family: 'DM-regular';
    font-size: 1.5rem;
    line-height: 2.5rem;
}

.wrap-cabecera-caso_descripcion--mobile {
    display: none;
    font-family: 'DM-regular';
    font-size: 1.125rem;
    line-height: 1.5rem;
}

.wrap-video-project {
    display: block;
    float: left;
    height: 444px;
    position: relative;
    margin-bottom: 80px;
    width: 100%;
}

/* video hero */
.wrap-video-project video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: cover; /* Ajusta el video para cubrir el área */
    z-index: 50; /* Envía el video detrás del contenido */
}

.wrap-data-dos-col-caso {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    height: 524px;
    padding: 0 96px;
    margin-bottom: 80px;
    overflow: hidden;
    width: 100%;
}

.col-caso-big {
    height: 625px;
}

.wrap-data-dos-col-caso_left {
    align-items: flex-start;
    display: flex;
    flex-flow: column nowrap;
    gap: 16px;
    justify-content: center;
    overflow: hidden;
    position: relative;
    width: 500px;
}

.wrap-data-dos-col-caso_left h2,
.wrap-data-dos-col-caso_right h2 {
    font-family: 'DM-bold';
    font-size: 3.125rem;
    line-height: 3.5rem;
}

.wrap-data-dos-col-caso_left p,
.wrap-data-dos-col-caso_right p {
    font-family: 'DM-regular';
    font-size: 1.25rem;
    line-height: 2rem;
}

.left_full-width {
    margin-bottom: 60px;
    padding-left: 96px;
    width: 100%;
}

.col-50-right {
    padding-right: 0;
    justify-content: flex-end;
    margin-bottom: 40px;
}

.col-50-left {
    padding-left: 0;
    justify-content: flex-start;
    margin-bottom: 40px;
}

.col-50-right .wrap-data-dos-col-caso_right {
    width: 52%;
}

.col-50-left .wrap-data-dos-col-caso_left {
    width: 52%;
}

.col-50-right .wrap-data-dos-col-caso_right img {
    width: 100%;
    object-fit: cover;
}

.col-50-right .wrap-data-dos-col-caso_right img.croma {
    width: 100%;
    object-fit: contain;
}

.col-50-left .wrap-data-dos-col-caso_left img {
    width: 100%;
    object-fit: cover;
}

.wrap-data-dos-col-caso_right {
    align-items: flex-start;
    display: flex;
    flex-flow: column nowrap;
    gap: 16px;
    justify-content: center;
    height: 100%;
    margin-left: 44px;
    overflow: hidden;
    position: relative;
}

.right_wrap-text {
    width: 500px;
}

.right_two-img {
    flex-flow: row nowrap;
    gap: 32px;
}

.right_wrap-text.user-aware-text {
    width: 700px;
}

.right_wrap-text.user-aware-text h2 {
    font-family: 'DM-semibold';
    font-size: 2rem;
    line-height: 3.5rem;
}

.right_wrap-text.user-aware-text ul li {
    margin-bottom: 32px;
    display: list-item;
    float: left;
    font-family: 'DM-regular';
    font-size: 1.25rem;
    line-height: 2rem;
    list-style: disc!important;
}

.left_wrap-video {
    height: 100%;
    width: auto;
}

.wrap-special-data {
    background-color: #E7F5FF;
    height: 756px;
}

.wrap-special-data .wrap-data-dos-col-caso_left {
    align-items: center;
    height: 756px;
    width: 62%;
}

.wrap-special-data .wrap-data-dos-col-caso_left img {
    height: 85%;
    width: auto;
}

.wrap-special-data .right_wrap-text.user-aware-text {
    margin-left: 0;
    width: 500px;
}

.wrap-special-data .data-cliente_wrap-chip-categoria span {
    background-color: #F6F6F6}

.wrap-data-dos-col-caso_right img {
    height: 100%;
    width: auto;
    object-fit: contain;
}

.wrap-big-img-caso {
    display: flex;
    height: 756px;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.wrap-big-img-caso--xbig {
    height: 858px;
}

.wrap-big-img-caso--atom-bolivia {
    height: 648px;
    margin-bottom: 168px;
}

.wrap-big-img-caso img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.wrap-big-img-caso--big {
    background-color: #021b4d;
    height: auto;
    margin-top: -40px;
}

.wrap-big-img-caso--big img {
    margin: 0 auto;
    width: auto;
}

.banner-project {
    margin-bottom: 0;
}

.wrap-galeria-dinamica {
    align-items: flex-start;
    background: linear-gradient(180deg, #0D142B -26.96%, #261442 79.82%, #0040FF 115.42%);
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    height: 827px;
    position: relative;
    width: 100%;
}

.slider-container {
    position: relative;
    width: 100%;
    height: 562px;
    overflow: hidden;
}

.slider {
    display: flex;
    height: 100%;
    animation: marquee 30s linear infinite;
}

.slider img {
    height: 100%;
    flex-shrink: 0;
    width: auto;
}

@keyframes marquee {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(calc(-50%));
    }
}

.slider {
    gap: 32px;
}

/* Duplicating the images for a seamless loop */
.slider-content {
    display: flex;
    width: max-content;
}

.wrap-galeria-dinamica_wrap-info {
    align-items: flex-start;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    height: 360px;
    position: absolute;
    bottom: 40px;
    left: 200px;
    width: 690px;
}

.wrap-info_data {
    align-items: flex-start;
    background-color: #f5f5f5;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    padding: 32px;
    gap: 16px;
    height: 100%;
    width: 100%;
}

.wrap-info_data label {
    color: #0033CC;
    font-family: 'DM-regular';
    font-size: 1.125rem;
    line-height: 1.5rem;
}

.wrap-info_data h3 {
    font-family: 'BG-semibold';
    font-size: 2.625rem;
    line-height: 3rem;
}

.wrap-info_data span {
    font-family: 'DM-medium';
    font-size: 1.25rem;
    line-height: 1.5rem;
}

.wrap-info_data p {
    color: #454545;
    font-family: 'DM-regular';
    font-size: 1.25rem;
    line-height: 2rem;
}

.wrap-info_data .data-cliente_wrap-chip-categoria span {
    border-color: #0442FF;
    color: #0442FF;
    height: 50px;
    font-family: 'DM-medium';
    font-size: 0.938rem;
    line-height: 2.5rem;
}

.wrap-related-projects {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
}

.wrap-related-projects h6 {
    font-family: 'BG-semibold';
    font-size: 2.625rem;
    line-height: 5rem;
    margin: 48px auto 24px auto;
    width: 1249px;
}

.wrap-related-projects .card {
    height: 534px;
}

.wrap-related-projects .grid-container {
    margin-bottom: 48px;
}

.wrap-img-grid-2-col {
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    gap: 32px;
    height: 587px;
    margin-bottom: 100px;
    width: 100%;
}

.wrap-img-grid-2-col img:first-child {
    height: 100%;
    width: 60%;
    object-fit: cover;
}

.wrap-img-grid-2-col img:last-child {
    width: 40%;
    height: 100%;
    object-fit: cover;
}

.wrap-diagnose {
    align-items: center;
    background-color: #013763;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    height: 389px;
    width: 100%;
}

.wrap-diagnose_wrap-text {
    align-items: flex-start;
    color: #F5F5F5;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    gap: 32px;
    padding: 0 107px;
}

.wrap-diagnose_wrap-text h3 {
    font-family: 'DM-regular';
    font-size: 2rem;
    line-height: 3.5rem;
}

.wrap-diagnose_wrap-text p {
    font-family: 'DM-regular';
    font-size: 1.25rem;
    line-height: 2rem;
}

.wrap-text-bolivia {
    padding: 0;
    margin: 80px auto 80px auto;
    width: 1249px;
}

.wrap-text-bolivia p b {
    font-family: 'DM-semibold';
}
/*** FIN PROYECTOS ***/


/*** PRIVACY ***/
.wrap-texto-privacy {
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    margin-top: -80px;
}

.privacy-title {
    color: #f5f5f5;
    font-family: 'BG-bold';
    font-size: 6.125rem;
    line-height: 6rem;
    margin-top: 48px;
    margin-bottom: 48px;
}

.wrap-texto-privacy--divider {
    background: url(../img/privacy-divider.png) repeat-x left center;
    align-items: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    height: 96px;
    width: 100%;
}

.privacy-subtitle {
    font-family: 'BG-bold';
    font-size: 1.5rem;
    height: 96px;
    line-height: 96px;
    background-color: #121212;
    margin-left: 153px;
    padding: 0 30px;
}

.privacy-text {
    display: flex;
    flex-flow: column nowrap;
    font-family: 'DM-regular';
    font-size: 1.125rem;
    line-height: 2rem;
    justify-content: flex-start;
    max-width: 1240px;
    margin-bottom: 48px;
    padding: 0 0 0 186px;
    width: 100%
}

.body-privacy {
    background-color: #121212!important;
    color: #F5F5F5!important;
}

.body-privacy .main {
    background-color: #121212!important;
}

.body-privacy .wrap-hero-caso-exito {
    background-color: #121212!important;
}

.body-privacy .wrap-hero-caso-exito_content a {
    background: url(../img/arrow-back-projects-hover.png) no-repeat left center;
    color: #f5f5f5;
    border-color: #121212;
}

.body-privacy .wrap-hero-caso-exito_content a:hover {
    background: url(../img/arrow-back-projects-hover.png) no-repeat left center;
    background-color: #0040FF;
    border-color: #0040FF;
    color: #FFF;
}
/*** FIN PRIVACY ***/























/* ---------------------------------- Cargando ------------------------------*/


#enviando_datos_contacto{
	display: none;
	width: 70px;
	height: 70px;
	padding: 10px;
	border-radius: 50%;
	/* background-color: blue; */
	position: relative;
	z-index: 9999;
	/*left: calc(50% - 35px);
	top: calc(50% - 35px);*/
    left: 0;
	top: 0;

    margin-bottom: 40px;
}
#enviando_datos_contacto:before{
	content:"Enviando...";
    font-size: 1rem;
    line-height: 1rem;
    position: absolute;
    top: 50%;
    margin-top: -8px;
    left: 100%
}
.loader {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	display: inline-block;
	position: relative;
	border: 3px solid;
	border-color: #0040FF #121212 transparent transparent;
	box-sizing: border-box;
	animation: rotation 1s linear infinite;
  }
  .loader::after,
  .loader::before {
	content: '';  
	box-sizing: border-box;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	border: 3px solid;
	border-color: transparent transparent #121212 #0040FF;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	box-sizing: border-box;
	animation: rotationBack 0.5s linear infinite;
	transform-origin: center center;
  }
  .loader::before {
	width: 32px;
	height: 32px;
	border-color:#121212 #0040FF transparent transparent;
	animation: rotation 1.5s linear infinite;
  }
	  
  @keyframes rotation {
	0% {
	  transform: rotate(0deg);
	}
	100% {
	  transform: rotate(360deg);
	}
  } 
  @keyframes rotationBack {
	0% {
	  transform: rotate(0deg);
	}
	100% {
	  transform: rotate(-360deg);
	}
  }
	  
.sk-fading-circle {
  /*margin: 100px auto;*/
  width: 50px;
  height: 50px;
  position: relative;
}

.sk-fading-circle .sk-circle {
  width: 100%;
  height: 100%;
  /*padding: 10px;*/
  position: absolute;
  left: 0;
  top: 0;
}

.sk-fading-circle .sk-circle:before {
  content: '';
  display: block;
  margin: 0 auto;
  width: 15%;
  height: 15%;
  background-color: var(--acai);
  border-radius: 100%;
  -webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
          animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
}
.sk-fading-circle .sk-circle2 {
  -webkit-transform: rotate(30deg);
      -ms-transform: rotate(30deg);
          transform: rotate(30deg);
}
.sk-fading-circle .sk-circle3 {
  -webkit-transform: rotate(60deg);
      -ms-transform: rotate(60deg);
          transform: rotate(60deg);
}
.sk-fading-circle .sk-circle4 {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}
.sk-fading-circle .sk-circle5 {
  -webkit-transform: rotate(120deg);
      -ms-transform: rotate(120deg);
          transform: rotate(120deg);
}
.sk-fading-circle .sk-circle6 {
  -webkit-transform: rotate(150deg);
      -ms-transform: rotate(150deg);
          transform: rotate(150deg);
}
.sk-fading-circle .sk-circle7 {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}
.sk-fading-circle .sk-circle8 {
  -webkit-transform: rotate(210deg);
      -ms-transform: rotate(210deg);
          transform: rotate(210deg);
}
.sk-fading-circle .sk-circle9 {
  -webkit-transform: rotate(240deg);
      -ms-transform: rotate(240deg);
          transform: rotate(240deg);
}
.sk-fading-circle .sk-circle10 {
  -webkit-transform: rotate(270deg);
      -ms-transform: rotate(270deg);
          transform: rotate(270deg);
}
.sk-fading-circle .sk-circle11 {
  -webkit-transform: rotate(300deg);
      -ms-transform: rotate(300deg);
          transform: rotate(300deg); 
}
.sk-fading-circle .sk-circle12 {
  -webkit-transform: rotate(330deg);
      -ms-transform: rotate(330deg);
          transform: rotate(330deg); 
}
.sk-fading-circle .sk-circle2:before {
  -webkit-animation-delay: -1.1s;
          animation-delay: -1.1s; 
}
.sk-fading-circle .sk-circle3:before {
  -webkit-animation-delay: -1s;
          animation-delay: -1s; 
}
.sk-fading-circle .sk-circle4:before {
  -webkit-animation-delay: -0.9s;
          animation-delay: -0.9s; 
}
.sk-fading-circle .sk-circle5:before {
  -webkit-animation-delay: -0.8s;
          animation-delay: -0.8s; 
}
.sk-fading-circle .sk-circle6:before {
  -webkit-animation-delay: -0.7s;
          animation-delay: -0.7s; 
}
.sk-fading-circle .sk-circle7:before {
  -webkit-animation-delay: -0.6s;
          animation-delay: -0.6s; 
}
.sk-fading-circle .sk-circle8:before {
  -webkit-animation-delay: -0.5s;
          animation-delay: -0.5s; 
}
.sk-fading-circle .sk-circle9:before {
  -webkit-animation-delay: -0.4s;
          animation-delay: -0.4s;
}
.sk-fading-circle .sk-circle10:before {
  -webkit-animation-delay: -0.3s;
          animation-delay: -0.3s;
}
.sk-fading-circle .sk-circle11:before {
  -webkit-animation-delay: -0.2s;
          animation-delay: -0.2s;
}
.sk-fading-circle .sk-circle12:before {
  -webkit-animation-delay: -0.1s;
          animation-delay: -0.1s;
}

@-webkit-keyframes sk-circleFadeDelay {
  0%, 39%, 100% { opacity: 0; }
  40% { opacity: 1; }
}

@keyframes sk-circleFadeDelay {
  0%, 39%, 100% { opacity: 0; }
  40% { opacity: 1; } 
}
/* ---------------------------------- Cargando ------------------------------*/

/* ESTILOS QUALITY POLICY */
.policy-list {
  list-style: disc;
  padding: 4rem;
  margin-bottom: 2rem;
}

.policy-list li {
  margin-bottom: 1rem;
}

.closing {
  font-size: 1rem;
  padding: 4rem;
  margin-top: 2rem;
}

.signature {
  margin-top: 2rem;
  font-style: italic;
  padding: 4rem;
}

/*** FIN ESTILOS QUALITY POLICY ***/