@import url('https://fonts.googleapis.com/css2?family=Comic+Neue:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Comic+Neue:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&family=Raleway:ital,wght@0,100..900;1,100..900&family=Tinos:ital,wght@0,400;0,700;1,400;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Comic+Neue:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&family=Raleway:ital,wght@0,100..900;1,100..900&family=Tinos:ital,wght@0,400;0,700;1,400;1,700&display=swap');


@media (max-width: 768px) {
    .navegacion{
        height: 8vh;
         z-index: 999;
    }
    .navegacion ul {
        display: none; /* Ocultamos el menú */
    }

    .navegacion.active ul {
        display: block; /* Mostramos cuando esté activo */
    }

    .menu > li {
        display: block;
        text-align: left;
    }

    /*NOTA: REALIZAR MENU 3 BARRAS PARA DISPOSITIVOS MOVILES*/

}
/* Dispositivos pequeños (smartphones) */
@media (max-width: 768px) {
  
    .menu > li > a {
        font-size: 16px; /* Reduce tamaño de fuente */
    }

    #TITULO_PRINCIPAL {
        font-size: 1rem; /* Reducir en móviles */
    }

    #Lema {
        font-size: 0.5rem;
    }


    .image-container img {
        max-width: 100%;
    }

    .GALERIA .imagen {
        width: 100%; /* Imágenes apiladas */
    }
}

/* Tablets */
@media (min-width: 769px) and (max-width: 1024px) {
    .menu > li > a {
        font-size: 18px;
    }


    .GALERIA .imagen {
        width: 48%; /* Dos columnas */
    }
    .navegacion{
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 10px;
        /*background-image: linear-gradient(180deg, #00c50a 0%, #00c50a0e 100%);
        */
        background-image:linear-gradient(180deg, #ffffff 0%, #ffffff 100%);
        display:inline-block;
        flex-direction: row;
        justify-content: space-evenly;
        align-items: center;
        z-index: 999;
        
    }
}

:root{
    --main-red-color: red;
    --verde-bosque: #1E7734;
    --verde-hoja: #22973F;
    --azul-rey: #0056b3;
    --azul-cielo: #007bff;
    --gris-claro: #d2d2d2;
    --beige:#efebe2;
    --negro-dark: #000000;
    --gris-oscuro: RGB(50,50,50);
}

:root{
    --seccion-titulo-tamano: 3rem;
    --seccion-titulo-margin: 0;
    --seccion-texto-margen: 1.5rem; 
}

:root{
    --textos-amigables-fuente: 'Open Sans', sans-serif;
    --textos-importantes-fuente: 'Tinos', serif;
}


*{
    margin: 0;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
html {
    font-size: 16px; /* Base para calcular rem */
}
body{
    font-family: 'Open Sans', sans-serif;
    /*background-color: #dfe7cb;*/
    background-color: black;
    line-height: 1.6; /* Mejora la legibilidad */
    
}

.Logo1{
    height:120px;
    width:135px;
    top: 0;
    left: 50px;
    position: fixed;
    z-index: 2;

    margin-left: 2%;
    margin-top: 1%;
}

@media (max-width: 768px) {
    .Logo1{
        margin-top: 1.6%;
        width: 105px;
        height: 93px;
        margin-left: -10%;
    }
}


#Lema{
    font-size: 3vw;
    color: #ffffff;
    font-family: 'Tinos', serif;
    font-weight: bold;
}


.navegacion{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    /*background-image: linear-gradient(180deg, #00c50a 0%, #00c50a0e 100%);
    */
    background-image:linear-gradient(180deg, #ffffff 0%, #ffffff 100%);
    display:inline-block;
    flex-direction: row;
    justify-content: space-evenly;
    align-items: center;
    z-index: 999;
    
}

.navegacion ul{
    list-style:none;
    text-align: center;
}

.menu > li > a{
    padding: 20px;
    font-family: "Big caslon medium";
    font-size: 20px;
    text-decoration: none;
    color: rgb(0, 48, 87);
    text-align: center;
    font-weight: 300;
  font-style: normal;
}

.menu > li{
    position: relative;
    display: inline-block;
    align-items: center;
    justify-content: center;
    text-align: center;
    top: 20px;
}

.menu > li > a:hover{
    /*font-size: 22px; */
    color: rgb(214, 209, 202);

}
/* Estilos para el menú hamburguesa (oculto por defecto) */
.menu-icon {
    display: none; /* Oculta el ícono en pantallas grandes */
    flex-direction: column;
    cursor: pointer;
    padding: 10px;
    position: absolute; /* Posicionamos el ícono */
    right: 20px; /* Lo movemos a la derecha */
    top: 15px; /* Ajustamos la posición vertical */
}

.menu-icon span {
    width: 25px;
    height: 3px;
    background: black;
    margin: 4px 0;
    transition: 0.4s;
}

/* Estilos para dispositivos móviles */
@media (max-width: 768px) {
    .menu-icon {
        display: flex; /* Muestra el ícono en pantallas pequeñas */
    }

    .menu {
        display: none; /* Oculta el menú en pantallas pequeñas */
        flex-direction: column;
        width: 100%;
        background: #ffffff;
        position: absolute;
        top: 70px; /* Ajusta según la altura de tu navbar */
        right: 0; /* Lo movemos a la derecha */
        text-align: right; /* Alineamos el texto a la derecha */
        padding-right: 20px; /* Añadimos un poco de padding */
    }

    .menu.active {
        display: flex; /* Muestra el menú cuando está activo */
    }

    .menu > li {
        display: block; /* Cambia a bloque para apilar los elementos */
        text-align: right; /* Alineamos el texto a la derecha */
        top: 0; /* Elimina el desplazamiento vertical */
    }

    .menu > li > a {
        padding: 15px; /* Ajusta el padding para móviles */
    }
}


@import url('https://fonts.googleapis.com/css2?family=Comic+Neue:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');



/* HEADER */
header {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  /*background-position: center 20px;  Ajusta el porcentaje hacia abajo */
}

.header-bg {
  width: 100%;
  height: 83vh;
  object-fit: cover; /* Mantiene proporción y llena el espacio */
  object-position: center;
   
}

@media (max-width: 768px) {
  header {
    margin-top: 15%;
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    }
  .header-bg {
    margin-top: 2%;
    height: 20vh; /* Reduce altura en móvil */
    width: 100%;
    
    object-fit: cover; /* Mantiene proporción y llena el espacio */
    object-position: center;
  }}

/*Configuración de la flecha intuitiva*/
.scroll-down {
  position: relative;
  left: 50%;
  transform: translateX(-10%);
  z-index: 5;
  cursor: pointer;
}

.scroll-down img {
  width: 80px; /* Ajusta tamaño */
  height: 80px;
  animation: bounce 2s infinite;
}


/* Animación para llamar la atención */
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% { transform: translate(-50%, 0); }
  40% { transform: translate(-50%, -10px); }
  60% { transform: translate(-50%, -5px); }
}

.scroll-top {
   display: none; /* Oculta al inicio */
  position: fixed;
  bottom: 10px;
  right: 5px;
  z-index: 5;
  cursor: pointer;
}

.scroll-top img {
  width: 80px;
  height: 80px;
  transition: opacity 0.3s;
  animation: bounce 2s infinite;
}

@media (max-width: 768px) {
 .scroll-top {
   
  right: -15px;
  
}}

/* Se comienza con el css relacionado al titulo encima del carrusel */
.PROP_S_T_TEXT_COPAQRO{
    margin-top: 6px;
    font-size: 2.5rem;
    font-weight: bold;
    color: #193e87;
    text-align: center; /* Centra el texto Alinea el texto */
    margin-bottom: 15px;
     display: flex;
            flex-direction: row;
        
}

.PROP_S_T_TEXT_COPAQRO:before, .PROP_S_T_TEXT_COPAQRO:after{
            content: "";
            flex: 1 1;
            border-bottom: 5px solid goldenrod;
            margin: auto;
}

/* Se comienza con el css relacionado al carrusel cambiante */
.custom-carousel {
    width: 90%;
    max-width: 1200px;
    margin: 40px auto;
}

/* Estilos de las cards */
.card-convocatoria {
    position: relative;
    border: none;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
    margin: 10px;
    transition: transform 0.3s ease;
    cursor: pointer;
}

.card-convocatoria img {
    height: 400px;
    width: 100%;
    object-fit: cover;
}

/* Overlay en hover */
.card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.6);
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: opacity 0.4s ease;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
}

.card-convocatoria:hover .card-overlay {
    opacity: 1;
}

.card-body {
    background: #fff;
    text-align: center;
    padding: 15px;
}

.card-title {
    font-size: 1.2rem;
    font-weight: bold;
}

.card-text {
    font-size: 0.95rem;
    margin-bottom: 10px;
    color: #555;
}

/* Botón opcional (puedes eliminarlo si no lo necesitas) */
.btn-descargar {
    background: linear-gradient(90deg, #003366, #0055aa);
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 10px 18px;
    font-weight: bold;
}

.btn-descargar:hover {
    background: linear-gradient(90deg, #002244, #003366);
}

/* Responsivo */
@media (max-width: 768px) {
    .card-convocatoria img {
        height: 140px;
    }
    
}


/*Se plama la parte de las secciones*/
.disciplina {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000; /* Fondo negro para espacios vacíos */
  padding-bottom: 10.5px;
  padding-top: 10.5px;

}

#first{
    margin-top: -0.1%;
}
.disciplina img {
  width: 100%;
  height: auto;
  max-height: 100vh; /* No supera la altura de la pantalla */
  object-fit: contain; /* Sin recorte */
}

/* Ajuste para pantallas pequeñas */
@media (max-width: 768px) {
  .disciplina {
    background-position: center center;
    padding-bottom: 3px;
    padding-top: 3px;
  }
}

/* Footer */
.footer {
    
    background-color: #333;
    color: #fff;
    padding: 40px 20px;
    text-align: center;
    font-family: 'Raleway', sans-serif;
    border-top: 3px solid gray;
    padding-bottom: 0;
}

#color_white{
    border-color: #ffffff;
    color: #ffffff;

    font-weight: 800;
}

.footer h5 {
    font-size: 1.2em;
    margin-bottom: 15px;
    color: #ffffff;

    font-weight: 800;
}

.footer p {
    font-size: 0.9em;
    color: #ccc;
    line-height: 1.5;
}

.footer iframe {
    border: 2px solid #59ff00;
    border-radius: 8px;
}

.footer .btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: white;
    transition: transform 0.3s ease;
}

.footer .btn:hover {
    transform: scale(1.1);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.footer .btn-primary {
    background-color: #3b5998;
}

.footer .btn-danger {
    background-color: #dd4b39;
}

.footer .btn-secondary {
    background-color: #ac2bac;
}

.footer .btn-success {
    background-color: #f4c20d;
}

.footer hr {
    border: 1px solid #59ff00;
    margin: 20px 0;
}


/* SECCION ACTIVA MENU */
.menu a.active {
    border-bottom: 3px solid #003d7e;
    padding-bottom: 10px;
}

.menu a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -8px;
    height: 3px;
    width: 0;
    background-color: #555; /* gris oscuro */
    transition: width 0.3s ease;
}

.menu a:hover::after {
    width: 100%;
}




.menu-btn {
      position: fixed;
      top: 15px;
      right: 15px;
      z-index: 1051;
      background-color: #003d7e;
      color: white;
      border-width: 4px;
      border-color: #ffffff;
      padding: 10px 15px;

      border-radius: 15px;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    }

    .menu-btn:hover {
      background-color: #003d7e;
    }

    .sidebar-link {
      display: block;
      padding: 10px 0;
      color: #333;
      font-weight: 500;
      text-decoration: none;
      border-bottom: 1px solid #eee;
    }

    .sidebar-link:hover {
      color: #0d6efd;
      text-decoration: none;
    }

    /*Se comienza el css del lo que va ser el carrusel dinamico */
    /* ===== Responsive ===== */
   @media (max-width: 768px) {
        #miCarrusel .carousel-control-prev,
        #miCarrusel .carousel-control-next {
            width: 20px !important;  /* Tamaño menor en móviles */
            height: 30px !important;
            left: 28vh !important;   /* Ajusta posición para que no se salga */
            right: 10px !important;
            margin-left: 20%;
        }

        #miCarrusel .carousel-control-prev {
            left: 10px !important; /* Posición más cerca del borde */
        }

        #miCarrusel .carousel-control-next {
            right: 10px !important;
        }
    }

    #miCarrusel .carousel-control-prev,
    #miCarrusel .carousel-control-next {
        position: absolute !important; /* Ahora solo dentro del carrusel */
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 60px !important;
        height: 60px !important;
        border-radius: 50% !important;
        opacity: 1.5 !important;
        z-index: 998 !important;
    }

    #miCarrusel .carousel-control-prev {
        left: -80px !important; /* Ajusta la separación hacia fuera */
          background: url(ELEMENTOS/flechaLeft.png) !important;
    }

    #miCarrusel .carousel-control-next {
        right: -80px !important;
          background: url(ELEMENTOS/flechaRight.png) !important;
    }

 