@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
/*@font-face {
    font-family: 'Century';
    src: url('CenturyGothic.ttf') format('truetype');
    
}
*/
body, html{
    font-family: 'Poppins';
     /*overflow-y: hidden;*/
}


.elementos-menu{
    color:#FFF;
}

.elementos-menu:hover{
    color:#FEC700;
    transform:scale(1.1);
    font-weight: bold;
}

.nav-item.dropdown .nav-link:focus, 
.nav-item.dropdown .nav-link:active {
  color: #FFF !important; /* O el color que prefieras */
  background-color: transparent !important;
}

/*@media(max-width: 576px){
    .redondo{
        border:none;
    }
}*/

.dropdown-menu {
    color:#1A263A;
    background-color: rgb(117, 117, 117); /* Color de fondo del menú desplegable */
    border:none;
    
}

.dropdown-item {
    color:#FFF;
    padding: 10px 20px;
    /*border-bottom: 1px solid #1A263A;*/
}

.dropdown-item:hover {
    color:#1A263A;
    font-weight: bold;
    
}
.box-main{

position:absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
}

.box-azul{
    background-color: #1A263A;
    color:#FFF;
    padding:25px;
    position:absolute;
    width: 25%;
    z-index: 100;
    border-radius: 15px;
}

.catalogo{
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.5rem; 
    margin-bottom: 0.5rem;
}
.size_20{
    font-size: 8rem;
    font-weight: bold ;
    text-align: center;
   /* padding:0;
    margin:0;*/
    line-height: 8rem; 
    font-family: 'Poppins', sans-serif;
}
.size_25{
    color:#FEC700;
    font-size: 8rem;
    font-weight: bold ;
    text-align: center;
    /* margin:0;*/
    line-height: 1; 
    font-family: 'Poppins', sans-serif;
}
.box-comision{
    position:relative;
    height: auto;
    overflow: hidden;
}

.box-barra{
    width:100%;
    background-image:url('images/barra.png');  
    background-size:cover;
    background-repeat: no-repeat;
    background-position: center; 
    text-align:left;
    }


.logo-caname{
        width:90%;    
        margin:auto;
    }
        
.box-logo{
    width:100%;
    background-color: #FFF;
    text-align: center;
    margin:auto;
    padding:20px;
}

.box-titulo{
    width:100%;
    font-weight: bold;
    font-family: 'Poppins', sans-serif;
    color:#1A263A;
    text-align: center;
    margin:auto;
    padding:20px;
}
.barra-amarilla{
    width: 100%;
    background-color: #FEC700;
    height: 15px;   
    margin:auto;

}

.azul-cnm{
    
    color:#FEC700;
    padding: 3rem;
    
}

.flecha{
    width: 20vw;
    background-color: #FEC700;
    color:#1A263A;
    border-top-left-radius: 0;   /* Sin redondeo en la esquina superior izquierda */
    border-top-right-radius: 50px; /* Redondeo en la esquina superior derecha */
    border-bottom-right-radius: 50px; /* Redondeo en la esquina inferior derecha */
    border-bottom-left-radius: 0;
    transition: transform 0.3s ease;
      
}

.flecha:hover{
    transform: scale(1.1);
    cursor: pointer;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);
}

.h1-catalogo{
    font-size:4.5rem;
}

.texto-catalogo{
    padding:25px;
    font-size: x-large;
    text-align: justify;
}

.botones-menu{
    background-image: url('images/CATALOGO_WIREFRAME.svg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    min-height: 25vh;
    width: 100%;
    display: flex;
    align-items: center;         /* centra verticalmente */
    padding: 15px;

}
.botones{
    background-color: #FEC700;
    width: 80%;
    color: black;
    font-size: x-large;
}
.botones:hover{
    background-color: #1A263A;
    color:#FFF;
}

.botones:focus,
.botones:active {
    background-color: #FEC700; /* o el mismo color que por defecto */
    color: black;               /* mismo color que por defecto */
    outline: none;              /* quita borde de foco */
}

.descripcion-catalogo{
    background-color: #FCFCFC;
    min-height: 25vh;
    width: 90%;
    display: flex;
    align-items: center;         /* centra verticalmente */
    padding: 15px;
    margin:auto;
}

.secciones-catalogo{
    background-color: #FCFCFC;
    min-height: 25vh;
    width: 90%;
   
    padding: 15px;
    margin:auto;
}

.banners-catalogo{
    background-color: #FCFCFC;
    min-height: 75vh;
    width: 90%;
    display: flex;
    align-items: center;         /* centra verticalmente */
    padding: 15px;
    margin:auto;
}

.carrusel{
    background-color:#FFF;
    width: 90%;
    margin:auto;
   
    
}

.img-fit {
    width: 100%;
    height: 100%;
    object-fit: contain; /* cambia a 'contain' si no deseas recorte */
}
.btn-explora{
    background-color:#FEC700; 
    color:black; 
    font-size:2rem; 
    text-align:center;
    border-radius:20px; 
    width:50%;
}

.anuncio-img{
    width:75%;
}

@media(min-width: 1024px){
    .year-mini,.titulo,.anio{
        display:none; 
    }
}
@media(max-width: 1024px){

    .box-azul {
        border-radius: 10px;
        width:50vw;
        height: 70%;
    }

    .box-azul>img{
        display:none !important;
    }

    .catalogo{
        display: none;
    }

    .year-mini{
    text-align: center;
    height: 100%;
    }
    .year-mini .titulo {
    font-size: x-large;
    
    line-height: 1;       /* evita espacios grandes */
}

.year-mini .anio {
    font-size: x-large;      /* se adapta a tu diseño */
    
    line-height: 1;       /* alineación equilibrada */
   
}
    
    .size_20, .size_25{
        display: none;
    }

        .btn-explora{
        width:90%;
        margin:auto;
    }
    .anuncio-img{
        width:90%;
    }

}
@media(max-width: 576px){
    .box-main{
        width: 80%;
    }


   /*box-azul {
        position: absolute;
        width: 100%;
        top: 50%;
left: 50%;
transform: translate(-50%,-50%);
       
    }*/


    .box-barra{
        text-align:center;
    }

    h2{
        font-size: 1.1rem;
    }

    .flecha{
        width: 40vw;
    }
    .h1-catalogo{
        font-size: 1.5rem;
    }


   /* .size_20{
        font-size: 2rem;
    }
    .size_25{
        font-size: 2rem;
    }*/
}

/*Botón entrar*/
.entrar {
    width:80%;
    font-size: 18px;
    letter-spacing: 2px;
    text-transform: uppercase;
    display: inline-block;
    text-align: center;
    font-weight: bold;
    padding: 0.7em 2em;
    border: 3px solid #FEC700;
    background-color: #FEC700;
    border-radius: 2px;
    position: relative;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.1);
    color: #1A263A;
    text-decoration: none;
    transition: 0.3s ease all;
    z-index: 1;
  }
  
  .entrar:before {
    transition: 0.5s all ease;
    position: absolute;
    top: 0;
    left: 50%;
    right: 50%;
    bottom: 0;
    opacity: 0;
    content: '';
    background-color: #FFF;
    z-index: -1;
  }
  
  .entrar:hover, .entrar:focus {
    color: #1A263A;
  }
  
  .entrar:hover:before, .entrar:focus:before {
    transition: 0.5s all ease;
    left: 0;
    right: 0;
    opacity: 1;
  }
  
  .entrar:active {
    transform: scale(0.9);
  }
/*Fin botón entrar*/

a {
    text-decoration: none !important; /* Quita el subrayado de todos los enlaces */
}

.alfabeto{
   
    text-align: center;
    color:#1A263A;
    width: 80%;
    margin:auto;

}

.img-empresas{
    width: 100%;
    height: 100%;
    object-fit: contain; 
    vertical-align: middle;
}

.img-secciones{
    width: 80px;
    height: auto;
    object-fit: contain; 
    vertical-align: middle;
}

.texto-empresas{
    overflow: hidden; 
    white-space: nowrap; 
    text-overflow: ellipsis;
}

.texto-empresas:hover{
    overflow: visible; /* Permite que el contenido se desborde */
    white-space: normal; /* Permite que el texto se ajuste y se rompa en varias líneas */
    text-overflow: clip;
}

.letras_buscar {
    padding: 4px;
    display: inline-block;
    transition: transform 0.3s ease;
}

.letras_buscar:hover{
    transform: scale(1.3);
    cursor: pointer;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);
    font-family: 'Poppins', sans-serif;
}

.box-secciones{
    width:40vw; 
    margin:auto;
}

.border-empresa{
    background-color: #FCFCFC;
    border-radius:15px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Sombra suave */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.border-empresa:hover {
    transform: scale(1.05);               /* Aumenta ligeramente el tamaño de la imagen */
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);  /* Aumenta la sombra para dar un efecto de profundidad */
    cursor:pointer;
}

.border-seccion{
    background-color: #FCFCFC;
    border-radius:15px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Sombra suave */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.border-seccion:hover {
    background-color: #1A263A;
    color: #FFF;
    transform: scale(1.05);               /* Aumenta ligeramente el tamaño de la imagen */
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);  /* Aumenta la sombra para dar un efecto de profundidad */
    cursor:pointer;
}


/*CSS galería*/
/* Estilo general para la galería */

    /* Contenedor de la lista */
    
    .contenedor-flecha {
        background-color: #FEC700; /* Color de fondo similar */
        color: #1A263A;
        padding: 5px;
        width: 300px;        
        clip-path: polygon(0 0, 90% 0, 100% 50%, 90% 100%, 0 100%);
        margin:auto;
        transition: transform 0.3s ease;
    }

    .contenedor-flecha:hover{
        transform: scale(1.1);
        cursor: pointer;
        box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);
    }


/*Fin galería*/

.div_empresas{
    min-height: 100vh;
}

.box-titulo, .div_empresas {
    
    will-change: transform, opacity;
  }

  @media(max-width: 576px){
    .img-empresas{
        width: 110px;
    }

    .img-secciones{
        width: 80px;
    }

    .texto-empresas{
        font-size: small;
    }
    .box-secciones{
        width:90vw;
    }
    .contenedor-flecha{
        width: 40vw;
    }
    
}


#spinner-overlay {
  position: fixed;
  top: 0; left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.8);
  z-index: 9999;

  /* Estas dos líneas van separadas en estado inicial y activación */
  display: none;
  align-items: center;
  justify-content: center;
}

/* Spinner animado */
.spinner-container {
  text-align: center;
  color: #1A263A;
  font-family: sans-serif;
}

/* Spinner visual */
.spinner {
  width: 100px;
  height: 100px;
  /*border: 6px solid #ccc;
  border-top-color: #fff;
  border-radius: 50%;*/
  background-image:url('images/rotor.svg');
  background-size: cover;
  background-repeat: no-repeat;
  animation: girar 3s linear infinite;
  margin: 0 auto;
}
.spinner-text {
  margin-top: 10px;
  font-size: 16px;
  text-align:center;
}


@keyframes girar {
  to { transform: rotate(360deg); }
}