
:root {
    --color-fondos: #F2F2F9;
    --color-iconos: #BABAD3;
    --color-boton: #00A2E8;
    --color-textos: #33333A;
    --color-fondo_oscuro: #202020;
  }




* {
    margin: 0px;
    padding: 0px;
    box-sizing: border-box;
}

body {
    width: 100vw;
    height: 100% ;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    margin: 0;
    background: #f2f2fa;
}




header {
    width: 100%;
    height: 400px;
    background-image: url("./img/fondo_header_1.jpg");
    /* Primera imagen inicial */
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    overflow: hidden;
    /* Asegura que las imágenes que se agregan fuera de la zona del header no sean visibles */
}

/* Capa de color negro con opacidad */
header::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    /* Color negro con opacidad */
    z-index: 1;
    /* Asegura que el overlay esté encima de la imagen */
}

/* Contenido del header */
header>* {
    position: relative;
    z-index: 2;
    /* Asegura que el contenido no se vea afectado por el overlay */
}

nav {

    width: 70%;
    height: 60px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    font-family: "Montserrat";
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    z-index: 2;
    /* 
    border: 1px solid white; */


}

.contenedor_logo {
    z-index: 2;
    /* Asegura que el logo se muestre encima de la capa oscura */
}

.botonera, .botonera_mobile {
    z-index: 2;
    /* Asegura que la botonera se muestre encima de la capa oscura */
}


.logo a img {
    width: 150px;

}

.botonera {
    width: 300px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: space-around;
    z-index: 1;
}

.botonera_mobile {
    width: 300px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: space-around;
    z-index: 1;
    display: none;
}

nav a {
    margin: 0 5px;
    display: flex;
    align-items: center;
    justify-content: space-around;

}

.separador_nav {

    width: 1px;
    height: 40px;
    background-color: #fff;
}


nav a img {
    width: 22px;
    margin-left: 10px;
}

a:link,
:visited,
:active {

    text-decoration: none;

}

.boton_nav {
    color: #fff;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
}

.boton_nav:hover {
    color: var(--color-boton);
    transform: translateY(-2px);
}

.contenedor_logo {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 50px;

}


/* --- TEXTO CONECTA ---*/

.contenedor_texto_conecta {
    width: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Montserrat";
    font-weight: 800;
    color: var(--color-textos);
    font-size: 20px;
    text-align: center;
    margin-bottom: 100px;
}











/* --- FILTROS ---*/

.contenedor_filtros {
    margin-top: -25px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 2;
}

.boton_filtro {
    width: 100%;
    height: 50px;
    padding: 20px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 0px solid #ccc;
    border-radius: 8px;
    outline: none;
    appearance: none;
    background: transparent;
    /* background-image: url('./img/down_arrow.svg');
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: right 10px center; */
    cursor: pointer;
    background-color: #fff;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    font-family: "Montserrat";
    font-weight: 800;
    color: var(--color-textos);
    font-size: 14px;


}


.arrow-icon {
    transition: transform 0.3s ease; /* Transición suave para la rotación */
    transform-origin: center; /* Rotación centrada */
}



.menu-container {
    display: flex;
    flex-direction: column;
    width: 80%;
    margin: 0 auto;
    position: relative;
    gap:10px;
}

.menu-button {
    padding: 10px 20px;
    background-color: #4CAF50;
    color: white;
    border: none;
    cursor: pointer;
    text-align: center;
    font-size: 16px;
    width: 100%;
    margin-bottom: 5px;
}

.submenu {
    display: none;
    width: 100%;
    padding: 30px;
    margin-top: 10px;
    overflow-y: auto;
    max-height: 500px;
    position: relative;
    opacity: 0;
    transform: translateY(-20px);
    transition: opacity 0.3s ease, transform 0.3s ease;

    border: 0px solid #ccc;
    border-radius: 8px;
    outline: none;
    appearance: none;
    background: transparent;
    background-color: #fff;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    font-family: "Montserrat";
    font-weight: 600;
    color: var(--color-textos);
    font-size: 14px;
}

.submenu-content {

    /* text-align: center; */
}

.submenu-content label {
    display: flex;
    align-items: center;
    gap: 15px;
}

.accept-btn {
    grid-column: span 6;
    /* El botón ocupa todas las columnas */
    width: 150px;
    height: 30px;
    margin-top: 10px;
    padding: 5px 10px;
    background-color: var(--color-boton);
    color: white;
    border: none;
    cursor: pointer;
    text-align: center;
    border-radius: 8px;
    outline: none;
    font-family: "Montserrat";
    font-weight: 400;
    font-size: 12px;
    justify-self: center;
}

.accept-btn:hover {
    background-color: #1976D2;
}


/* Estilos para el input de búsqueda */
.search-container {
    width: 80%;
    margin-top: 10px;
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
    transition: margin-top 0.3s ease;
    /* Animación para mover el input */
}



.search-container button {

    width: 10%;
    padding: 10px 20px;
    background-color: var(--color-boton);
    color: white;
    border: none;
    cursor: pointer;
    font-size: 16px;
}

.search-container button:hover {
    background-color: #1976D2;
}

.checkbox-grid {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: repeat(6, 1fr);
    /* En desktop se verán 6 columnas */
    justify-items: start;
    /* Centra los checkboxes dentro de las celdas */
    margin-bottom: 20px;
}

.checkbox-grid label {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}



.titulo_filtro {
    grid-column: span 6;
    text-align: center;
    font-size: 20px;
    font-family: "Montserrat";
    font-weight: 700;
    color: var(--color-textos);
    margin-bottom: 30px;
}

.buscador_nombre {

    width: 95%;
    height: 50px;
    padding: 20px 20px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    border: 0px solid #ccc;
    border-radius: 8px;
    outline: none;
    appearance: none;
    background: transparent;
    background-color: #fff;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    font-family: "Montserrat";
    font-weight: 800;
    color: var(--color-textos);
    font-size: 14px;
}



.boton_buscar {

    width: 5%;
    height: 50px;
    padding: 20px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0px solid #ccc;
    border-radius: 8px;
    outline: none;
    appearance: none;
    background: transparent;
    background-color: #fff;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    font-family: "Montserrat";
    font-weight: 800;
    color: var(--color-textos);
    font-size: 14px;
}

.boton_buscar img {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;

}

.resultados{

    font-family: "Montserrat";
    font-weight: 800;
    color: var(--color-textos);
    font-size: 14px; 
}

/* Diseño en pantalla grande (desktop) */
@media screen and (min-width: 769px) {
    .menu-container {

        flex-direction: row;
        gap: 10px;
    }

    .menu-button {
        width: calc(20% - 5px);
    }

    .submenu {
        top: 100%;
        left: 0;
        max-height: 500px;
        width: 100%;
        z-index: 5;
        position: absolute;
        margin-top: 10px;
    }


}

/* Media Queries */
@media (max-width: 1024px) {

    /* En resoluciones de escritorio medianas (entre 1024px y 768px) */
    .checkbox-grid {
        grid-template-columns: repeat(4, 1fr);
        /* En intermedio 4 columnas */
    }


    .botonera {

        display: none;

    }
    
    .botonera_mobile {

        display: flex;
        width: 200px;
    }



}

@media (max-width: 768px) {
    /* En dispositivos móviles (menos de 768px) */

    nav {
        width: 100%;
    }

    .logo a img {
        width: 100px;
    }

    .checkbox-grid {
        grid-template-columns: repeat(2, 1fr);
        /* En mobile 2 columnas */
    }

    .contenedor_filtros {
        margin-top: -125px;

    }

    .contenedor_logo img {

        width: 40%;
    }

    .boton_buscar img {

        height: 30px;
    }

    .contenedor_texto_conecta {
        width: 80%;
        height: 300px;
        font-size: 16px;

    }




}

@media (max-width: 480px) {

    /* En pantallas muy pequeñas */
    .submenu-content {
        padding: 10px;
    }

    .titulo_filtro {
        font-size: 1.1em;
    }

    .checkbox-grid {
        grid-template-columns: 1fr;
        /* Solo una columna en pantallas pequeñas */

    }

}











/* --- CARDS ---*/
.card {

    width: 500px;
    height: 220px;
    background-color: #fff;
    border-radius: 15px;
    display: flex;
    overflow: hidden;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;

}

.foto_perfil {

    width: 200px;
    display: flex;
    align-items: flex-end;
    justify-items: center;
    overflow: hidden;
    /* border: 1px solid black; */
}

.foto_perfil img {
    width: 200px;
    height: 200px;
    border-radius: 15px;
}

.datos_personales {

    width: 300px;
    height: 220px;
    padding: 5px;
    background-image: url(./img/fondo-tarjeta-horizontal.jpg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between
}

.foto_logo {
    width: 95%;
    height: 50px;
    display: flex;
    align-items: start;
    justify-content: space-between;
    padding: 5px;
    /* border: 1px solid black; */
}

.foto_logo img {

    width: 120px;
    margin-top: 8px;

    
    /* height: 40px; */
    /* border: 1px solid black;  */
}

.estrella_favorito {

    width: 25px;
    height: 25px;
    background-image: url("./img/estrella_favoritos_vacia.svg");
    transition: all 0.5s ease-in-out;
    cursor: pointer;
    /* Escalar desde el centro */
    transform-origin: center;
    /* border: 1px solid black; */
}

.estrella_favorito:hover {

    transform: rotate(216deg);
}

/* Estilo cuando está marcada como favorita */
.es_favorito {
    background-image: url("./img/estrella_favoritos_azul.svg");
    transform: rotate(0deg);
}

/* Estilo cuando está marcada como favorita */
.no_es_favorito {
    background-image: url("./img/estrella_favoritos_vacia.svg");
    transform: rotate(0deg);
}


.datos {
    width: 95%;
    height: 10px;
    font-family: "Montserrat";
    padding: 7px;
    /* border: 1px solid black; */

}

.nombre {
    font-size: 16px;
    font-weight: 800;
    color: var(--color-textos);
    padding-bottom: 12px;


}


.funcion {

    font-size: 12px;
    font-weight: 800;
    color: var(--color-textos);
    padding-top: 12px;

}

.pais {

    font-family: "Montserrat";
    font-size: 11px;
    font-weight: 400;
    color: var(--color-textos);
    padding-top: 10px;
}

.contenedor_botones_contacto {
    position: relative;
    width: 95%;
    height: 80px;
    padding: 15px 5px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
    /* border: 1px solid black; */

}

.boton_contacto {

    width: 40px;
    height: 40px;
    background-color: var(--color-fondos);
    border-radius: 50%;
    background-position: center;
    background-size: 20px;
    background-repeat: no-repeat;
    transition: all 0.5s ease-in-out;


}


.boton_contacto:hover {
    background-color: var(--color-boton);
    transform: scale(1.2);
}

.whatsapp {

    background-image: url("./img/icono-whatsapp.svg");

}

.email {

    background-image: url("./img/icono-mail.svg");

}

.link {

    background-image: url("./img/icono-enlace.svg");

}

.agenda {

    background-image: url("./img/icono-calendario.svg");

}

.whatsapp:hover {

    background-image: url("./img/icono-whatsapp_blanco.svg");



}

.email:hover {

    background-image: url("./img/icono-mail_blanco.svg");

}

.link:hover {

    background-image: url("./img/icono-enlace_blanco.svg");

}

.agenda:hover {

    background-image: url("./img/icono-calendario_blanco.svg");

}

.contenedor_cards {

    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 25px;
 

}


.contenedor_busqueda_original{

  width: 60%;
  min-height: 600px;

  display: grid;
  column-gap: 30px; /* Espacio entre los elementos */
  row-gap:15px;
  grid-template-columns: repeat(auto-fill, minmax(480px, 1fr)); /* Ajusta el número de columnas según el espacio disponible */
  justify-items: center; /* Centra los elementos horizontalmente */
  align-items: center; /* Centra los elementos verticalmente */
  align-content: space-evenly;
  padding: 50px;
  /* margin-top: 100px; */
  /* border: 1px solid black;  */
  display:none;
}


.contenedor_busqueda{

    width: 60%;
    min-height: 600px;
    display: flex;
    column-gap: 70px; /* Espacio entre los elementos */
    row-gap:35px;
    justify-content: space-evenly;
    align-content: flex-end;
    flex-wrap: wrap;
    padding: 50px;
    /* margin-top: 100px; */
    /* border: 1px solid black;  */
    display:none;

    grid-template-columns: repeat(auto-fit, minmax(450px, 1fr)); /* Mínimo 450px de ancho por columna, y se expande para llenar el espacio */
    justify-items: center;

  }




.contenedor_favoritos{

    margin-top: 10px;
}


.contenedor_sliders{

    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: -110px;
}


#titulo_seccion{
    margin-top: 100px;
    margin-bottom: 70px;
}


.cargo {
    font-size: 11px;
    font-weight: 400;
    color: var(--color-iconos);

}




  
  
  














@media (max-width: 1900px) {

    .contenedor_busqueda{

        width: 60%;
        padding: 20px;
       
      }

}



@media (max-width: 1720px) {

    .contenedor_busqueda{
        width: 70%;
        padding: 0px;
  
     
      }

}

@media (max-width: 1436px) {

    .contenedor_busqueda{
        width: 85%;
        padding: 0px;
  
     
      }

}


@media (max-width: 1280px) {

    .contenedor_busqueda{
        width: 80%;
        padding: 5px;
        gap:30px
     
      }

}


@media (max-width: 768px) {

    .contenedor_busqueda{
        grid-template-columns: none;
     
      }

}

@media (max-width: 425px) {


    .contenedor_busqueda{
        width: 100%;
     
      }
 

}




.loader {
    text-align: center;
    margin: 20px 0;
    font-size: 18px;
    animation: spin 1s linear infinite;
}
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}



/*------------SLIDER--------*/

/* Contenedor principal */

.contenedor_botones_slider {
    width: 100%;
    margin: auto;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;


}


.texto_perfiles {
    font-family: "Montserrat";
    font-weight: 700;
    color: var(--color-iconos);
    font-size: 25px;
    margin-bottom: 30px;
    text-align: center;
}

/* Contenedor del slider */
.contenedor_cards {
    width: 1560px;
    height: 240px;
    display: flex;
    justify-content: flex-start;
    overflow: hidden;
    position: relative;

}


.slider-container {
    width: 1560px;
    margin: auto;
    position: relative;
    overflow: hidden;

}


.slider {
    display: flex;
    transition: transform 0.5s ease-in-out;
}

/* Espaciado entre tarjetas */
.card {
    width: 500px;
    height: 220px;
    margin: 0px 10px;
    /* border:1px solid black; */

}

@media (max-width: 1900px) and (min-width: 1280px) {

    .contenedor_cards,
    .slider-container {
        width: 1040px; /* 2 slides visibles */
    }
}





@media (max-width: 1280px) and (min-width: 1024px) {

    .contenedor_cards,
    .slider-container {
        width: 1000px;
        height:520px;
            /* 3 slides visibles */
    }

    
}


@media (max-width: 1024px) and (min-width: 768px) {

    .contenedor_cards,
    .slider-container {
        width: 680px;
        height:520px;
            /* 3 slides visibles */
    }
}


@media (max-width: 768px) and (min-width: 300px) {

    .contenedor_cards,
    .slider-container {
        width: 340px;
        height:520px;
         /* 1 slides visibles */
    }


}

/* Botones de navegación */
.prev,
.next {
    width: 75px;
    height: 75px;
    background-color:var(--color-iconos);
    color: white;
    border: none;
    padding: 10px;
    cursor: pointer;
    position: absolute;
    top: 50%;

    transform: translateY(-50%);
    font-size: 16px;
    z-index: 10;
}

.prev {
    left: -20px;
    border-radius: 0px 50% 50% 0px;
}

.next {
    right: -15px;

    border-radius:  50%  0px 0px 50%; 
}

.prev:hover,
.next:hover {
    background-color: var(--color-fondo_oscuro);
}



.texto_ver_mas {

    font-family: "Montserrat";
    font-weight: 700;
    color: var(--color-boton);
    font-size: 18px;
    margin-top: 60px;
    margin-bottom: 100px;
    text-align: center;


}


    /* Barra de progreso */
    .progress-bar-container {
        width: 70%;
        height: 7px;
        background: #EEE;
        margin-top: 20px;

      }
  
      .progress-bar {
        height: 100%;
        background: #BABAD3;
        width: 0;
        transition: width 0.5s ease;
      }




/*---------SLIDER DESTACADO--------*/


*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  list-style-type: none;
  text-decoration: none;
}

html {
    font-size: 62.5%;
    font-family: "Montserrat", sans-serif;
    scroll-behavior: smooth;
  }
  
 /* @media (min-width: 1440px) {
    #slider_destacado {
      zoom: 1.5;
    }
  }
  
  @media (min-width: 2560px) {
    #slider_destacador {
      zoom: 1.7;
    }
  }
  
  @media (min-width: 3860px) {
    #slider_destacado {
      zoom: 2.5;
    }
  } */
   
  
  .container {
    width: 100vw;
    padding: 0 1rem;
    margin: 0 auto;
    overflow: hidden;
   
  }
  
  .text-center {
    text-align: center;
  }
  
  .section-heading {
    font-size: 3rem;
    color: var(--primary);
    padding: 2rem 0;
  }
  
  #slider_destacado{
    /* padding: 4rem 0; */
  
  }
  
  
  
  
  @media (max-width:1440px) {
    #slider_destacado{
      /* padding: 7rem 0; */
    }
  }
  
  .tranding-slider {
    width: 74%;
    height: 62rem;
    padding: 2rem 0;
    position: relative;
    /* border: 1px solid black; */
   
  
  }

  
  @media (max-width:768px) {
    .tranding-slider {
        width: 94%;
       
      }

      .contenedor_sliders {

        margin-top: -140px;
    }

    .contenedor_texto_conecta {
        width: 50%;
        display: flex;
        height: 150px;
        margin-bottom: 60px;
    }



  }

  
  @media (max-width:500px) {
    #slider_destacado.tranding-slider {
      height: 60rem;
    }


    .tranding-slider {
        width: 95%;
 
      
      }

  }
  
  .tranding-slide {
    width: 29rem;
    height: 50rem;
    position: relative;
    /* border: 1px solid black; */
  }
  
  @media (max-width:500px) {
    .tranding-slide {
      width: 28rem !important;
      height: 50rem !important;
    }
  



  }
  
  
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right {
    display: none;
  }
  
  .swiper-button-next, .swiper-button-prev{
  
      right:unset; 
      left: unset;
      width: 30px;
      height: 30px;
      position:relative
      
  }
  
  
  
  .tranding-slider-control {
    position: relative;
    height: 15px;;
    bottom: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap:25px;
  
  }
  
  .tranding-slider-control .slider-arrow {
    background: var(--white);
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    filter: drop-shadow(0px 8px 24px rgba(18, 28, 53, 0.1));
  }
  
  .tranding-slider-control .slider-arrow ion-icon {
    font-size: 2rem;
    color: #222224;
  }
  
  .tranding-slider-control .slider-arrow::after {
    content: '';
  }
  
  .tranding-slider-control .swiper-pagination {
    position: relative;
    width: 15rem;
    bottom: 1rem;
  }
  
  .tranding-slider-control .swiper-pagination .swiper-pagination-bullet {
    filter: drop-shadow(0px 8px 24px rgba(18, 28, 53, 0.1));
  }
  
  .tranding-slider-control .swiper-pagination .swiper-pagination-bullet-active {
    background: var(--primary);
  }
  
  .tranding-slider .swiper-slide:not(.swiper-slide-active) {
    filter: blur(2px);
    transition: filter 0.5s ease; /* Transición suave */
  }
  
  /* Asegurar que el slide activo esté nítido */
  .tranding-slider .swiper-slide-active {
    filter: blur(0);
  }


  /* Ocultar los botones de navegación en mobile */
@media (max-width: 768px) {
    .swiper-button-next,
    .swiper-button-prev {
      display: none;
    }
  }
  
  
  
  .card_mobile_destacado {
  
    width: 100%;
    height: 100%;
    background-color: #fff;
    border-radius: 15px;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
    overflow: hidden;
     box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; 
    background-image: url(./img/fondo-tarjeta-vertical.jpg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
  
  }
  .card_mobile_destacado .foto_perfil {
  
      width: 280px;
      height: 500px;
      overflow: hidden;
      align-self: flex-start;
      /* border: 1px solid black; */
  }
  
  .card_mobile_destacado .foto_perfil img {
          width: 280px;
          height: 280px;
          border-radius: 15px;
      }
  
    .card_mobile_destacado .datos_personales {
  
          position: relative;
          display: flex;
          flex-direction: column;
          justify-content: center;
          align-items: center;
          overflow: visible;
          background-image: none;
  
      }
  
      .card_mobile_destacado .foto_logo {
          width: 100%;
          height: 100px;
          display: flex;
          align-items: flex-start;
          justify-content: space-between;
          padding: 15px;
  
          /* border: 1px solid black; */
      }
  
      .card_mobile_destacado .foto_logo img {
          width: auto;
          height: 25px;
          /* border: 1px solid black; */
      }
  
  
  
      .card_mobile_destacado .datos {
          width: 100%;
          height: 25px;
          font-family: "Montserrat";
          padding: 7px;
          display: flex;
          align-items: center;
          justify-content: center;
          text-align: center;
          /* border: 1px solid black */
  
      }
  
      .card_mobile_destacado .nombre {
          font-size: 22px;
          font-weight: 800;
          color: var(--color-textos);
          margin-bottom: 15px;
  
  
      }
  
      .card_mobile_destacado .cargo {
          font-size: 14px;
          font-weight: 400;
          color: var(--color-iconos);
          text-align: center;
          margin-bottom: 5px;
      }
  
      .card_mobile_destacado .funcion {
  
          font-size: 12px;
          font-weight: 800;
          color: var(--color-textos);
          padding-top: 10px;
      }
  
      .card_mobile_destacado  .pais {
  
  
          font-size: 11px;
          font-weight: 400;
          color: var(--color-textos);
          margin-left: 5px;
  
      }
  
      .card_mobile_destacado .contenedor_botones_contacto {
          
        width: 95%;
        height: 80px;
        padding: 15px 5px;
        display: flex;
          align-items: center;
          justify-content: center;
          position: absolute;
          top: 420px;
         z-index: 2;
          gap: 20px;
          /* border: 1px solid black; */
  
          /* border: 1px solid black; */
  
      }
  
  
  
      .card_mobile_destacado .contenedor_botones_contacto .boton_contacto {
  
        width: 40px;
        height: 40px;
        background-color: var(--color-fondos);
        border-radius: 50%;
        background-position: center;
        background-size: 20px;
        background-repeat: no-repeat;
        transition: all 0.5s ease-in-out;
  
  
      }
  
  
      .card_mobile_destacado  .contenedor_botones_contacto .boton_contacto:hover {
        background-color: var(--color-boton);
        transform: scale(1.2);
      }
  
  
  









/*----COPY EMAIL*/

.copyEmail{
    cursor: pointer;
}

/*------------LOGIN---------------*/


.body_login{
position:relative;
width: 100%;
height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-between;


}


.logo_login{
width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;

}



.logo_login img{

    width: 12%;
    margin: 80px;
}
.login-container {
    background-image: url("./img/fondo_login.jpg");
    background-position:right;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 50px;
    border-radius: 15px;
    backdrop-filter: blur(10px);
    width: 620px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}
label {
    font-weight: 800;
    color: var(--color-textos);
    margin-bottom: 5px;
    font-family: "Montserrat";
    text-align: left;
}
.input_login {
    width: 85%;
    padding: 5px;
    background: transparent;
    border: none;
    border-bottom: 2px solid #EDEDF4;
    color: var(--color-textos);
    outline: none;
    font-size: 16px;
    font-family: "Montserrat";
    margin-bottom: 25px;
}
.input_login::placeholder {
    color: rgba(255, 255, 255, 0.5);
}
.btn-submit {
    margin-top: 10px;
    background: var(--color-boton);
    color: #fff;
    padding: 20px 40px;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    font-family: "Montserrat";
    font-size: 18px;
    font-weight: 700;
}
.btn-submit:hover {
    background: #0085c7;
}


@media (max-width: 1024px) {

    .logo_login img{

        width: 18%;
        margin: 80px;
    }


    .contenedor_texto_conecta {
        width: 80%;
  
    }

}



@media (max-width: 768px) {


    .logo_login img{

        width: 8%;
        margin: 80px;
    }

    .login-container {

        width:90%;
        padding: 35px;
    }





    .input_login {
        width: 100%;

    }

    .body_login{
        position:relative;
        width: 100%;
        height: 100vh;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: space-around;
        flex-wrap: nowrap;
          
        }


        .logo_login img{

            width: 27%;
            margin: 30px;
        }

        .btn-submit {

            padding: 10px 25px;
            font-size: 14px;
 
        }


}


@media (max-width: 425px) {
    .login-container {
        width: 90%;
    }

    
    .logo_login img{

        width: 37%;
        margin: 30px;
    }
}







/*---------FOOTER-------------*/

footer {

    width: 100%;
    height: 80px;
    background-color: var(--color-textos);
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #fff;
    font-family: "Montserrat";
    font-size: 11px;
    font-weight: 400;
    padding: 20px 150px;
    margin-top: 30px;
    align-self:flex-end;
    text-align: center;
}



@media (max-width: 990px) {


    body {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;


    }



    .botonera {
        display: none;
    }


    .contenedor_logo a {

        display: flex;
        justify-content: center;
    }

    .contenedor_logo img {

        width: 70%;
    }



}


@media (max-width: 1274px) {

.card {

    width: 320px;
    height: 500px;
    background-color: #fff;
    border-radius: 15px;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    background-image: url(./img/fondo-tarjeta-vertical.jpg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.foto_perfil {

    width: 280px;
    height: 500px;
    overflow: hidden;
    align-self: flex-start;
    /* border: 1px solid black; */
}

.foto_perfil img {
    width: 280px;
    height: 280px;
    border-radius: 15px;
}

.datos_personales {

    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    overflow: visible;
    background-image: none;

}

.foto_logo {
    width: 100%;
    height: 100px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 15px;

    /* border: 1px solid black; */
}

.foto_logo img {
    width: auto;
    height: 25px;
    /* border: 1px solid black; */
}






.datos {
    width: 100%;
    height: 25px;
    font-family: "Montserrat";
    padding: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    /* border: 1px solid black */

}

.nombre {
    font-size: 22px;
    font-weight: 800;
    color: var(--color-textos);
    margin-bottom: 15px;


}

.cargo {
    font-size: 14px;
    font-weight: 400;

    text-align: center;
    margin-bottom: 5px;
}

.funcion {

    font-size: 12px;
    font-weight: 800;
    color: var(--color-textos);
    padding-top: 10px;
}

.pais {


    font-size: 11px;
    font-weight: 400;
    margin-left: 5px;

}

.contenedor_botones_contacto {

    align-items: center;
    justify-content: center;
    position: absolute;
    top: 420px;
    z-index: 2;

    /* border: 1px solid black; */

}

footer {
    width: 100%;
    height: 80px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 10px;
    margin-top: 30px;
}


.footer_login {
    width: 100%;
    height: 80px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 10px;
    margin-top: 30px;
}




}




@media (max-width: 350px) {

    .card{

        transform: scale(0.9);
    }
}

@media (max-width: 768px) {


    .contenedor_logo img {

        width: 60%;
    }


}

.tags-container {
    width: 70%;
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
  }

.tag {
    padding: 4px 10px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    font-size: 14px;
    color: white;
  }
  
  .tag button {
    background: none;
    border: none;
    color: inherit;
    margin-left: 6px;
    cursor: pointer;
    font-weight: bold;
  }
  
  .tag.tipo_empresa {
    background-color: #007bff; /* Azul base */
  }
  
  .tag.cargo {
    background-color: #339af0; /* Azul claro */
  }
  
  .tag.pais {
    background-color: #1c7ed6; /* Azul intenso */
  }
  
  .tag.intereses {
    background-color: #5c7cfa; /* Azul violeta */
  }
  
  .tag.eventos {
    background-color: #74c0fc; /* Azul pastel */
  }


  /* Estilo del popup */
.submenu-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 400px;
    max-height: 80vh;
    background: white;
    border-radius: 10px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
    z-index: 999;
    display: none;
    flex-direction: column;
    overflow: hidden;
  }
  
  /* Cabecera del popup */
  .submenu-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #f4f4f4;
    padding: 10px 15px;
    border-bottom: 1px solid #ddd;
    position: sticky;
    top: 0;
    z-index: 1;
  }
  
  /* Botón de cerrar */
  .close-btn {
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
    color: #333;
  }
  
  /* Scroll solo para los checkboxes */
  .checkbox-grid {
    padding: 15px;
    overflow-y: auto;
    flex-grow: 1;
    max-height: calc(80vh - 60px); /* altura máxima menos cabecera */
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  
  .checkbox-grid label {
    font-size: 14px;
  }
  
  /* Mostrar el popup */
  .submenu-popup.active {
    display: flex;
  }
  
  .overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 998;
    display: none;
  }
  
  .overlay.active {
    display: block;
  }



  .popup-overlay {
    display: none; /* Oculto por defecto */
    position: fixed; /* Cubre toda la ventana */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* Fondo oscuro semitransparente */
    z-index: 1000; /* Asegura que esté por encima de todo */
    backdrop-filter: blur(5px); /* Desenfoca el fondo */
  }
  
  .popup-container {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #fff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    z-index: 1001;
    width: 80%; /* Ocupa el 80% del ancho de la ventana */
    max-height: 80vh; /* Opcional: altura máxima del 80% de la altura de la ventana para evitar que sea demasiado largo */
    overflow-y: auto; /* Opcional: agrega scroll si el contenido excede la altura máxima */
  }

  .submenu-content .checkbox-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); /* Crea columnas de al menos 200px de ancho, y se ajustan al espacio disponible */
    gap: 10px; /* Espacio entre las celdas de la grilla */
  }
  
  .submenu-content .checkbox-grid label {
    display: flex;
    align-items: center;
    margin-bottom: 5px; /* Espacio entre las filas de labels */
  }
  
  .submenu-content .checkbox-grid label input[type="checkbox"] {
    margin-right: 10px;
  }



  
  .popup-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin: 0px 20px 10px 20px;
    font-size: 16px;
    font-weight: 900;
    
  }
  
  .popup-close-button {
    background: none;
    border: none;
    font-size: 4em;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  .blurred {
    filter: blur(5px);
    -webkit-filter: blur(5px); /* Para navegadores Safari y Chrome */
  }




  @media (max-width: 768px) {

    .popup-header {

        margin: 0px 5px 10px 5px;
    
    }
    
    .popup-close-button {
        
        font-size: 3em;
    
    }


}



