/* Estilo para tarjetas */
.card {
    height: auto;
    /* Altura automática para adaptarse al contenido */
}

.card-title {
    color: #0b3b59;
}

.card-text {
    color: #212529;
}

.row>.col-md-6 {
    padding: 10px;
    /* Espaciado entre columnas */
}

/* Estilo para el mapa */
.map-container {
    width: 100%;
    max-width: 900px;
    /* Limita el tamaño máximo en pantallas grandes */
    margin: 0 auto;
    /* Centra el mapa */
    padding: 20px;
    /* Espacio alrededor */
}

iframe {
    border-radius: 10px;
    /* Bordes redondeados */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    /* Sombra suave */
}

.img-card {
    width: 100%;
    /* Asegura que la imagen ocupe todo el ancho de la columna */
    height: auto;
    /* Mantiene la proporción de la imagen */
}

/* Estilo personalizado para el card de objetivo y funciones */
.custom-card {
    background-color: #fefefe;
    /* Color de fondo claro */
    border: 1px solid #E8E8E8;
    box-shadow: 2px 4px 10px rgba(0, 0, 0, 0.1);

}

.custom-card .card-title {
    font-size: 1.5rem;
    /* Tamaño de fuente más grande */
    font-weight: bold;
    /* Negrita */
}

.custom-card-full {
    border-radius: 20px;
    background-color: #ffffff;
    box-shadow: 2px 4px 10px rgba(0, 0, 0.3, 0.3);
}

.custom-card-full h5 {
    color: #0b3b59;
}

.custom-card-full p {
    color: #212529;
}

.custom-card-full .bi {
    color: #0b3b59;
}

@media (max-width: 768px) {
    .custom-card-full .row>div {
        margin-bottom: 20px;
    }
}


.grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    background-color: #fefefe;
    max-width: 1200px;
    width: 100%;
    margin: auto;
    padding: 40px 20px;
    text-align: center;


}

.card_info {
    background-color: #ffffff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    color: #0b3b59;

}

.card_info img {
    width: 100%;
    height: 180px;
    object-fit: cover;
}

.card-title_info {
    padding: 15px;
    font-weight: bold;
    font-size: 18px;
}

.grid a.card_info {
    display: block;
    background-color: #ffffff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    color: #0b3b59;
    transition: transform 0.2s;
}

.grid a.card_info:hover {
    transform: scale(1.03);
}

.grid a.card_info img {
    width: 100%;
    height: 180px;
    object-fit: cover;
}

.grid a.card_info .card-title_info {
    padding: 15px;
    font-weight: bold;
    font-size: 18px;
}

/* Estilo para tarjetas */
.card {
    height: auto;
    /* Altura automática para adaptarse al contenido */
}

.card-title {
    color: #0b3b59;
}

.card-text {
    color: #212529;
}

.row>.col-md-6 {
    padding: 10px;
    /* Espaciado entre columnas */
}

/* Estilo para el mapa */
.map-container {
    width: 100%;
    max-width: 900px;
    /* Limita el tamaño máximo en pantallas grandes */
    margin: 0 auto;
    /* Centra el mapa */
    padding: 20px;
    /* Espacio alrededor */
}

iframe {
    border-radius: 10px;
    /* Bordes redondeados */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    /* Sombra suave */
}

.img-card {
    width: 100%;
    /* Asegura que la imagen ocupe todo el ancho de la columna */
    height: auto;
    /* Mantiene la proporción de la imagen */
}

/* Estilo personalizado para el card de objetivo y funciones */
.custom-card {
    background-color: #fefefe;
    /* Color de fondo claro */
    border: 1px solid #E8E8E8;
    /* Borde color oscuro */
    /* Sin bordes redondeados ni sombra */
}

.custom-card .card-title {
    font-size: 1.5rem;
    /* Tamaño de fuente más grande */
    font-weight: bold;
    /* Negrita */
}


.grid a.card_info img {
width: 100%;         /* Mantén el ancho al 100% */
height: auto;        /* Ajuste automático para mantener proporción */
object-fit: contain; /* Asegúrate de que no recorte la imagen */
display: block;      /* Evita espacios extra */
padding: 10px;       /* Espacio para no pegar la imagen a los bordes */
background-color: #fff; /* Fondo blanco si es necesario */
}

.contenedor {
max-width: 1200px; /* Limita el ancho máximo del contenedor */
margin: 0 auto; /* Centra el contenedor horizontalmente */
padding: 20px; /* Añade un poco de espacio interno */
}

/* Estilo para la tabla */

table {
width: 100%;
border-collapse: collapse;
}



th, td {
padding: 10px;
text-align: left;
border-bottom: 1px solid #ddd;
}

/* Botón de descarga */

.btn-download {
display: inline-flex; /* Usamos inline-flex para alinear el icono con el texto */
align-items: center;
padding: 10px 20px;
background-color: #0b3b59;
color: white;
text-align: center;
text-decoration: none;
border-radius: 20px;
transition: background-color 0.3s ease, transform 0.2s ease;
}

.btn-download i {
margin-right: 8px; /* Espacio entre el icono y el texto */
}

.btn-download:hover {
background-color: #00b2e2;
transform: scale(1.05); /* Un pequeño efecto de aumento al pasar el cursor */
}

.btn-download:active {
transform: scale(1); /* Restablecer tamaño cuando se hace clic */
}


@media (max-width: 768px) {

.contenedor {
padding-left: 10px; /* Menor espacio lateral en móviles */
padding-right: 10px;
}


table, th, td {
font-size: 14px; /* Ajuste de tamaño de fuente para pantallas pequeñas */
}

.btn-download {
padding: 8px 16px; /* Botones más pequeños en móviles */
}
}


.grid {
    display: flex; /* Cambiamos de grid a flex */
    flex-wrap: nowrap; /* Evita que los elementos salten de línea */
    gap: 15px; /* Reduce el espacio entre elementos */
    background-color: #fefefe;
    max-width: 1200px;
    width: 100%;
    margin: auto;
    padding: 40px 20px;
    text-align: center;
    overflow-x: auto; /* Scroll horizontal si los elementos no caben */
    -webkit-overflow-scrolling: touch; /* Mejora en dispositivos móviles */
    scroll-behavior: smooth;
}

/* Estilo para ocultar scrollbar en algunos navegadores */
.grid::-webkit-scrollbar {
    height: 8px;
}

.grid::-webkit-scrollbar-thumb {
    background-color: #ccc;
    border-radius: 4px;
}

.grid::-webkit-scrollbar-track {
    background-color: #f1f1f1;
}

/* Ajustar tamaño de las cards para que no se estiren */
.grid a.card_info {
    flex: 0 0 calc(25% - 15px); /* 4 cards por fila en pantallas grandes */
    max-width: 250px;
    width: 100%;
    background-color: #ffffff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    color: #0b3b59;
    transition: transform 0.2s;
}

/* Cards ocupan más espacio en dispositivos pequeños */
@media (max-width: 768px) {
    .grid a.card_info {
        flex: 0 0 80%; /* Ocupa 80% del ancho del contenedor */
        max-width: 300px;
    }
}
