html, body {
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    display: flex;
    flex-direction: column;
}

.overlay-box:after {
    content: "";
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    position: absolute;
    /* opacity: 0.85; */
    background: linear-gradient(135deg, var(--primary-color) 0%,var(--secondary-color) 100%);
    z-index: -1;
}

.overlay-box {
    height: 150px; /* Ajusta esta altura según tus necesidades */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.overlay-box img.profile-img {
    width: 80px; /* Ajusta el tamaño de la imagen */
    height: 80px; /* Asegúrate de que la altura y la anchura sean iguales para mantener la forma circular */
    object-fit: cover;
}

.overlay-box h3 {
    margin-top: 10px; /* Ajusta el margen superior si es necesario */
}

.card-footer {
    display: flex;
    justify-content: center;
    align-items: center;
}

.card-footer .btn {
    display: block;
    width: auto; /* Asegúrate de que el botón no ocupe todo el ancho del contenedor */
    text-align: center;
}

.illuminated-image {
    filter: drop-shadow(0 0 10px rgb(255, 255, 255));
}

.card {
    background-color: transparent;
}

.img-small {
    display: none;
}

@media (max-width: 500px) {
    .img-large {
        display: none;
    }
    .img-small {
        display: block;
    }
}

.iframe-container {
    width: 100%;
    height: 100%    ;
}

iframe {
    width: 100%;
    min-height: 30rem;
    border: none; /* Remueve el borde del iframe */
}
  #imagen-carrusel img {
            width: 100%;
            height: 40rem;
        }

:root {
    --primary-color: #0095E6;
    --secondary-color: #03429C;
  }


  #preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff; /* Fondo blanco, o puedes usar otro color */
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999; /* Para que esté sobre todo el contenido */
}

/* Spinner styling */
.spinner {
    border: 4px solid rgba(0, 0, 0, 0.1);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border-left-color: #18258F; /* Puedes ajustar el color */
    animation: spin 1s ease infinite;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}







/* Estilos para la sección de los 4 íconos */
.section-iconos {
    margin: 5rem 0;
}

.block-icon2 {
    text-align: center;
    color: white !important;
    background: linear-gradient(180deg, rgb(12, 147, 202) 0%, rgb(54, 185, 255) 100%);
    box-shadow: 0px 12px 23px -5px rgba(0, 0, 0, 0.75);
    padding: 3rem 1.5rem;
    margin: 1rem;
}

.block-icon2 p {
    color: white !important;
}

.block-icon2 a {
    color: white !important;
    text-decoration: none;
}

/* Para los íconos dentro de los bloques */
.block-icon2 i {
    font-size: 3rem;
}

/* Estilo para el título debajo de cada ícono */
.block-icon2 .h4 {
    padding-top: 1rem;
}

/* Estilo general para los enlaces "Conocer más..." */
.block-icon2 .h4 + p {
    font-size: 1rem;
    color: white;
    font-weight: lighter;
}

/* Espaciado y disposición de las columnas (en Bootstrap) */
@media (min-width: 576px) {
    .section-iconos .row {
        display: flex;
        flex-wrap: wrap;
    }
    .section-iconos .col-xl-3, .section-iconos .col-lg-6, .section-iconos .col-md-6, .section-iconos .col-sm-12 {
        flex: 1 0 24%;
    }
}

@media (max-width: 768px) {
    .section-iconos .col-xl-3, .section-iconos .col-lg-6 {
        flex: 1 0 48%;
    }
}

@media (max-width: 576px) {
    .section-iconos .col-xl-3, .section-iconos .col-lg-6, .section-iconos .col-md-6 {
        flex: 1 0 100%;
    }
}


























