/* Estilo general */
html {
    scroll-behavior: smooth;
}

body {
    font-family: Arial, sans-serif;
    margin: 0;
	background-color: #1A237E; 
    padding: 0;
    background-image: url('background.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    color: #fff;
}

/* Estilo para el header */
header {
    background-color: rgba(0, 0, 0, 0.5); /* Color azul transparente */
    color: #fff;
    padding: 15px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border-radius: 20px; /* Bordes redondeados */
    max-width: 90%; /* Ancho máximo para centrar mejor el contenido */
    margin: 0 auto; /* Centrar horizontalmente la cabecera */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4); /* Sombra para darle profundidad */
}

/* Estilo para la imagen del logo */
.logo {
    width: 100%; /* La imagen ocupará el 100% del contenedor en móviles */
    height: auto; /* Mantiene la proporción de la imagen */
    max-width: 600px; /* Tamaño grande para vista en PC */
    transition: transform 0.3s ease, filter 0.3s ease; /* Transición para el efecto hover */
    margin: 0 auto; /* Centra la imagen horizontalmente */
}

.logo:hover {
    transform: scale(1.1); /* Aumenta el tamaño al 110% en hover */
    filter: brightness(1.2); /* Aumenta el brillo en hover */
}

/* Estilo para el texto del header */
.header-text h1, .header-text h2 {
    margin: 5px 0;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5); /* Sombra para mejorar la legibilidad del texto */
    font-size: 2rem; /* Tamaño del texto */
    font-weight: bold; /* Asegúrate de que el texto se vea más destacado */
    text-transform: uppercase; /* Opcional: convierte el texto a mayúsculas */
    letter-spacing: 2px; /* Añade espaciado entre letras para un efecto más imponente */
}

/* Media Query para pantallas más pequeñas (móviles) */
@media only screen and (max-width: 600px) {
    .logo {
        max-width: 100%; /* La imagen ocupará el 100% del ancho del contenedor en móviles */
        height: auto; /* Mantiene la proporción */
    }

    header {
        padding: 10px; /* Reduce el padding para mejorar la visibilidad en móviles */
        text-align: center; /* Centra todo el contenido del header en móviles */
    }

    .header-text h1 {
        font-size: 8vw; /* Ajusta el tamaño para que se adapte al ancho de la pantalla en móviles */
        text-align: center; /* Asegura que el texto esté centrado */
    }
}

/* Estilo para la navegación de retroceso */
.back-button {
    background-color: #FFDD57; /* Color del fondo */
    color: #fff; /* Color del texto/icono */
    padding: 10px 10px;
    border: none;
    border-radius: 30px; /* Ajuste de lo redondo */
    cursor: pointer;
    font-size: 1.2em;
    text-decoration: none;
    display: inline-block;
    margin-top: 10px;
    transition: background 0.3s ease, transform 0.3s ease;
}
    
    position: fixed; /* Fija el botón en una posición específica en la pantalla */
    top: 20px; /* Ubica el botón a 20px de la parte superior */
    left: 8px; /* Ubica el botón a 20px de la parte izquierda */
    z-index: 1000; /* Asegura que el botón esté por encima de otros elementos */
}

.back-button:hover {
    background-color: #FF8C00; /* Color más oscuro al hacer hover */
}

/* Estilo para el contenedor principal */
.container {
    max-width: 1200px;
    margin: 20px auto;
    padding: 0 20px;
}

/* Estilo para la grid de imágenes */
.image-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 30px; /* Espacio entre las imágenes */
}

.image-grid a {
    display: block;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease;
    margin-bottom: 20px; /* Espacio extra debajo de cada imagen */
}

.image-grid a:hover {
    transform: scale(1.05);
}

.image-grid img {
    width: 100%;
    height: auto;
    display: block;
}

/* Estilo para el footer */
footer {
    background-color: rgba(0, 0, 0, 0.6);
    color: #fff;
    text-align: center;
    padding: 15px 0;
    margin-top: 20px;
    transition: background-color 0.5s ease;
    border-radius: 25px; /* Hace redondeado el footer */
    max-width: 95%; /* Opcional: para que el footer no ocupe todo el ancho de la página */
    margin-left: auto;
    margin-right: auto;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4); /* Añade una sombra para darle profundidad */
}

footer i {
    margin-right: 5px;
    color: #ffdd57;
}

/* Estilo para el contenedor de WhatsApp */
.whatsapp-container {
    display: flex;
    align-items: center; /* Alinea el texto y el icono verticalmente */
    justify-content: center; /* Opcional: centra el contenido horizontalmente */
    gap: 10px; /* Espacio entre el texto y el icono */
    margin-top: 15px; /* Opcional: espacio superior */
    font-size: 1.2em; /* Aumenta el tamaño del texto si es necesario */
}

.whatsapp-icon {
    width: 24px;
    height: 24px;
    transition: transform 0.3s ease;
    animation: enlarge 3s infinite;
}

/* Animación para la ampliación del icono */
@keyframes enlarge {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.2);
    }
}

.footer-contact span {
    display: block; /* Asegura que el texto y los iconos se mantengan en línea */
    margin-bottom: 5px; /* Espacio debajo para separar del siguiente elemento */
}

.email-link {
    color: #fff; /* Color del texto */
    text-decoration: none; /* Quita el subrayado */
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 10px; /* Espacio superior */
}

.email-link i {
    font-size: 1.2em; /* Tamaño del icono */
    transition: transform 0.3s ease; /* Transición para el efecto de hover */
}

.email-link:hover i {
    transform: scale(1.1); /* Aumenta el tamaño del icono al hacer hover */
}

.email-link:hover {
    text-decoration: underline; /* Subraya el texto al hacer hover */
}

@keyframes zoomAndFade {
    0% {
        transform: scale(1.1); /* Mayor tamaño al inicio */
        opacity: 0.5; /* Mayor transparencia al inicio */
    }
    100% {
        transform: scale(1); /* Vuelve al tamaño original */
        opacity: 1; /* Vuelve a ser completamente opaco */
    }
}

.header-text h1 {
    font-family: 'Bebas Neue', sans-serif; /* Aplica la fuente Bebas Neue */
	font-style: italic; /* Aplica el estilo en cursiva */
    animation: zoomAndFade 2s ease-in-out; /* Mantiene la animación existente */
    font-size: 3rem; /* Tamaño del texto */
    text-transform: uppercase; /* Convierte el texto a mayúsculas */
    letter-spacing: 2px; /* Espaciado entre letras */
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5); /* Sombra para mejorar la legibilidad */
}


.consulta-text {
    color: #ffe65e; /* Color amarillo  */
    font-weight: bold; /* Opcional: para hacer el texto más destacado */
}

.hidden {
    opacity: 0;
    transition: opacity 0.5s ease; /* Transición suave para ocultar/aparecer */
    pointer-events: none; /* Evita que el botón sea clickeable cuando está oculto */
}
@keyframes zoomOut {
    0% {
        transform: scale(1.05); /* Inicia con un zoom más cercano */
        opacity: 0.8; /* Inicia con una opacidad reducida */
    }
    100% {
        transform: scale(1); /* Termina en el tamaño original */
        opacity: 1; /* Termina con opacidad completa */
    }
}

.logo {
    width: 100%; /* Mantiene la imagen responsiva */
    height: auto; /* Mantiene la proporción de la imagen */
    max-width: 600px; /* Tamaño máximo para pantallas más grandes */
    margin: 0 auto; /* Centra la imagen horizontalmente */
    animation: zoomOut 2s ease-out; /* Aplica la animación de zoom out */
}

.lowercase-text {
    text-transform: lowercase; /* Convierte el texto a minúsculas */
}

@media only screen and (max-width: 600px) {
    .header-text h1 {
        font-size: 7vw; /* Ajusta el tamaño del texto a un valor más pequeño */
        white-space: nowrap; /* Evita el salto de línea */
        text-align: center; /* Centra el texto */
    }
}
