@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap');

:root {
    --padding-container: 100px 0;
    --color-title: #001a49;
    --color-bg-hero: #0000008c;
    --primary-bg-color: #e5e5f7;
    --accent-color: #2091F9;
    --cta-bg-color: #2091F9;
    --cta-text-color: #ffffff;
}

body {
    font-family: "Poppins", sans-serif;
}

.container {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    overflow: hidden;
    padding: var(--padding-container);
}

.hero {
    position: relative; /* Mantiene la posición relativa */
    width: 100%; /* Ancho completo */
    height: 100%; /* Altura completa del contenedor */
    min-height: 80vh; /* Altura mínima de 80vh */
    display: flex; /* Usar flexbox para la disposición */
    flex-direction: column; /* Direccionar el contenido en columnas */
    color: #fff; /* Color del texto */
    overflow: hidden; /* Para que no se desborde */
    background-size: cover; /* Mantiene la proporción y cubre el contenedor */
    background-position: center; /* Centra la imagen */
    background-repeat: no-repeat; /* Evita la repetición de la imagen */
    animation: fade 28s infinite; /* Animación para el fondo */
}


/* CARRUSEL DE IMAGENES INICIO */

@keyframes fade {
    0% {
        background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img1.jpg");
    }
    14.28% {
        background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img2.jpg");
    }
    28.56% {
        background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img3.jpg");
    }
    42.84% {
        background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img4.jpg");
    }
    57.12% {
        background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img5.jpg");
    }
    71.4% {
        background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img6.jpg");
    }
    85.68% {
        background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img7.jpg");
    }
    100% {
        background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img1.jpg");
    }
}


/* TERMINACION DE CARRUSEL */






/* Contenedor de Navegación */


/* Nav */
.nav {
    display: flex; /* Flex para alineación interna */
    align-items: flex-start; /* Cambia a flex-start para que suban más */
    justify-content: space-between; /* Logo a la izquierda y menú a la derecha */
    width: 100%; /* Asegura que el nav ocupe todo el ancho */
    height: 100%; /* Ocupa toda la altura de .nav-container */
    position: relative;
    padding: 10px 0; /* Añade padding si necesitas más espacio arriba y abajo */
}

.nav__link {
    list-style: none; /* Elimina el marcador de lista */
    padding: 0; /* Elimina el relleno por defecto */
    margin: 0; /* Elimina el margen por defecto */
}


/* Logo */
.nav__logo {
    display: flex;
    align-items: center;
    margin-left: -80px; /* Ajusta este valor para mover el logo más a la izquierda */
    transition: width 0.3s ease, margin-left 0.3s ease;
}


.logo {
    width: 250px;
    height: auto;
    margin-right: 18px;
    margin-top: 10px;
    align-self: center;
}



/* Estilos para Test de Velocidad */
.nav__test {
    display: flex;
    align-items: center;
    transition: width 0.3s ease, margin-right 0.3s ease; /* Suaviza el cambio de tamaño y posición */
    justify-content: flex-end; /* Alineación a la derecha */
}

.test {
    width: 80px; /* Tamaño de la imagen de test */
    height: auto; /* Mantiene la proporción */
    margin-left: 80px; /* Espacio a la izquierda */
    margin-top: 32px; /* Ajuste para mover hacia abajo */
    align-self: center; /* Centrado vertical */
}




/* About */
.about {
    text-align: center;
}

.subtitle {
    color: var(--color-title);
    font-size: 2rem;
    margin-bottom: 25px;
}

.about__paragraph {
    line-height: 1.7;
}

.about__main {
    padding-top: 80px;
    display: grid;
    width: 90%;
    margin: 0 auto;
    gap: 2em; /* Aumenta el espacio entre los artículos */
    overflow: hidden;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); /* Usa '1fr' para un tamaño adaptable */
}

.about__icons {
    display: grid;
    gap: 1em;
    justify-items: center;
    width: 100%; /* Cambiado a 100% para usar el espacio disponible */
    overflow: hidden;
    margin: 0 auto;
}

.about__icon {
    width: 250px; /* Aumentado el tamaño de la imagen */
    height: 250px; /* Añadido altura para mantener proporción */
    border-radius: 50%; /* Hace que la imagen sea redonda */
    object-fit: cover; /* Asegura que la imagen cubra completamente el área */
}






/* FORMULARIO */

.contact {
    text-align: center;
    padding: 40px 0; /* Espaciado superior e inferior */
    background-color: #2091F9; /* Azul claro */
}

.contact .container {
    max-width: 800px; /* Limitar el ancho del contenedor */
    margin: 0 auto; /* Centrar el contenedor */
    padding: 20px; /* Espaciado interno */
    border-radius: 8px; /* Bordes redondeados */
    box-shadow: 0 2px 10px #6593f51a; /* Sombra suave */
    background-color: #fff; /* Fondo blanco para el formulario */
}

.subtitle {
    font-size: 1.8rem; /* Tamaño del subtítulo */
    margin-bottom: 20px; /* Espaciado inferior */
}

.contact p {
    margin-bottom: 30px; /* Espaciado inferior */
    color: #021e5a; /* Color de texto suave */
}



/* FIN FORMULARIO */





/* Price */
.price {
    text-align: center;
}

.price__table {
    padding-top: 60px;
    display: flex;
    flex-wrap: wrap;
    gap: 2.5em;
    justify-content: space-evenly;
    align-items: center;

}

.price__element {
    background-color: var(--primary-bg-color);
    text-align: center;
    border-radius: 10px;
    width: 330px;
    padding: 40px;
    --color-plan: #fdfdfd;
    --color-price: #ffffff;
    --bg-cta: #fff;
    --color-cta: #546bd4;
    --color-items: #ffffff;
    background-image: url('../images/basico.jpg'); /* Imagen de fondo para el plan básico */
    background-size: cover; /* Ajustar la imagen para cubrir todo el contenedor */
    background-position: center; /* Centrar la imagen */
}


.price__element--best {
    width: 370px;
    padding: 60px 40px;
    background-color: var(--accent-color);
    --color-plan: rgba(255, 255, 255, 0.75);
    --color-price: #fff;
    --bg-cta: #fff; 
    --color-cta: #FFF;
    --color-items: #fff;
    background-image: url('../images/avanzado.jpg'); /* Imagen de fondo para el plan avanzado */
    background-size: cover; /* Ajustar la imagen para cubrir todo el contenedor */
    background-position: center; /* Centrar la imagen */
}


.price__element:nth-child(3) {
    background-image: url('../images/premium.jpg'); /* Imagen de fondo para el plan premium */
}

.price__name {
    color: var(--color-plan);
    margin-bottom: 15px;
    font-weight: 300;
}

.price__price {
    font-size: 2.5rem;
    color: var(--color-price);
}

.price__items {
    margin-top: 35px;
    display: grid;
    gap: 1em;
    font-weight: 300;
    font-size: 1.3rem; /* Tamaño base */
    margin-bottom: 50px;
    color: var(--color-items);
    list-style-type: none; /* Elimina los puntos de la lista */
}


.price__features {
    font-weight: normal; /* Cambia el peso de la fuente si es necesario */
}

.small-text {
    font-size: 0.9rem; /* Tamaño reducido de la letra para las descripciones */
}

.price__cta {
    display: block;
    padding: 20px 0;
    border-radius: 10px;
    text-decoration: none;
    background-color: #ffffff30; /* Color de fondo */
    color: #e9ecf4; /* Color de texto */
    font-weight: 600;
    box-shadow: 0 0 1px rgba(1, 6, 45, 0.1);
}

/* FIN PRICE */



/* Testimony */

.testimony {
    background-color: #e5e5f7;
    text-align: center;
    padding-top: 50px; /* Aumenta el espacio superior */
    padding-bottom: 50px;
}

.testimony__title {
    margin-top: 20px; /* Ajusta el margen superior del título */
    margin-bottom: 15px; /* Espacio entre el título y el contenido */
}

.testimony__container {
    display: grid;
    grid-template-columns: 50px 1fr 50px;
    gap: 1em;
    align-items: center;
}

.testimony__body {
    display: grid;
    grid-template-columns: 1fr max-content;
    justify-content: space-between;
    align-items: center;
    gap: 2em;
    grid-column: 2/3;
    grid-row: 1/2;
    opacity: 0;
    pointer-events: none;
}

.testimony__body--show {
    pointer-events: unset;
    opacity: 1;
    transition: opacity 1.5s ease-in-out;
}

.testimony__img {
    width: 250px;
    height: 250px;
    border-radius: 50%;
    object-fit: cover;
    object-position: 50% 30%;
}

.testimony__text {
    margin-top: 20px; 
    margin-bottom: 30px; 
    line-height: 1.6; 
}

.testimony__course {
    background-color: royalblue;
    color: #fff;
    display: inline-block;
    padding: 5px;
}

.testimony__arrow {
    width: 90%;
    cursor: pointer;
}





/* Questions */
.questions {
    text-align: center;
}

.questions__container {
    display: grid;
    gap: 2em;
    padding-top: 50px;
    padding-bottom: 100px;
}

.questions__padding {
    padding: 0;
    transition: padding .3s;
    border: 1px solid #5454D4;
    border-radius: 6px;
}

.questions__padding--add {
    padding-bottom: 30px;
}

.questions__answer {
    padding: 0 30px 0;
    overflow: hidden;
}

.questions__title {
    text-align: left;
    display: flex;
    font-size: 20px;
    padding: 30px 0 30px;
    cursor: pointer;
}

.questions__title:hover {
    color: #121f9b; /* Cambia el color al pasar el mouse */
}

__

.questions__arrow {
    border-radius: 50%;
    background-color: var(--color-title);
    width: 25px;
    height: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: flex-end;
    margin-left: 10px;
    transition: transform .3s;
}

.questions__arrow--rotate {
    transform: rotate(180deg);
}

.questions__show {
    text-align: left;
    height: 0;
    overflow: hidden; /* Añadido para evitar contenido desbordante */
    transition: height .3s;
}

.questions__img {
    display: block;
}

.questions__copy {
    width: 60%;
    margin: 0 auto;
    margin-bottom: 30px;
}



/* Sección de imagen de ancho completo */

.full-width-image {
    width: 100%;
    margin: 0;
    padding: 0;
}

.full-width-image__img {
    width: 100%; /* Asegura que la imagen ocupe todo el ancho del contenedor */
    height: auto; /* Mantiene la proporción de la imagen */
    display: block; /* Elimina el espacio inferior */
}





/* Footer */
.footer {
    background-color: #2091F9; /* Color de fondo */
    padding: 40px 0; /* Espaciado superior e inferior */
}

/* Estilo para la sección del mapa */
.footer__map {
    margin: 20px 20px; /* Margen superior e inferior */
    text-align: center; /* Centra el contenido del mapa */
}

/* Estilo para el título del mapa */
.footer__map-title {
    font-size: 2rem; /* Tamaño de fuente del título */
    font-weight: bold; /* Negrita */
    margin-top: 20px; /* Ajusta el margen superior del título */
    margin-bottom: 45px;
    color: #001a49; 
}

/* Estilo para el iframe del mapa */
.footer__map iframe {
    width: 100%; /* Ancho completo */
    height: 450px; /* Altura aumentada del mapa */
    border: 0; /* Sin borde */
}

/* Estilo para la línea de separación */
.footer__separator {
    border-top: 1px solid #fff; /* Línea blanca */
    margin: 20px 0; /* Margen superior e inferior */
}

/* Estilo para la sección de derechos de autor */
.footer__copy {
    text-align: center; /* Centrar texto */
    color: #fff; /* Color del texto */
    margin-top: 20px; /* Margen superior */
}

/* Derechos de autor */
.footer__copyright {
    font-weight: 300; /* Peso de fuente */
}


.footer__container {
    max-width: 1200px; /* Cambia este valor para ajustar el ancho máximo deseado */
    margin: 0 auto; /* Centra el contenedor */
    padding: 0 20px; /* Añade un poco de padding si lo deseas */
}





/* Sección de Contacto */


/* Variables de color */
:root {
    --contact-bg-color: #ffffff; /* Fondo en azul */
    --contact-text-color: #001a49; /* Texto en blanco */
    --icon-color: #878585; /* Color blanco para los iconos */
    --phone-number-color: #112fd8; /* Color de los números de celular */

}

.contact-section {
    background-color: var(--contact-bg-color);
    color: var(--contact-text-color);
    padding: 20px;
    text-align: center;
}

.contact-section__title {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 15px;
    color: var(--contact-text-color);
}

.contact-section__info {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
}

.contact-section__numbers {
    font-size: 1.5rem;
    font-weight: bold;
    display: flex;
    gap: 10px;
    align-items: center;
}

/* Estilo para los números de teléfono */
.contact-section__numbers a {
    color: var(--phone-number-color);
    text-decoration: none;
}

.contact-section__icons {
    display: flex;
    gap: 15px; /* Ajusta el espacio entre iconos */
}

.contact-section__icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-section__img {
    width: 30px;
    height: 30px;
}


.contact-section__email {
    margin-top: 10px;
}

.contact-section__email a {
    color: var(--contact-text-color);
    text-decoration: none;
    font-size: 1rem;
}


/* FIN Sección de Contacto */




/* Sección de imagen de ancho completo */
.full-width-image {
    width: 100%;
    margin: 0;
    padding: 0;
}

.full-width-image__img {
    width: 100%; /* Asegura que la imagen ocupe todo el ancho del contenedor */
    height: auto; /* Mantiene la proporción de la imagen */
    display: block; /* Elimina el espacio inferior */
}

/* Opcional: Estilo para el título en la sección de valores */
.company-values {
    text-align: center; /* Centra el texto */
    padding: 20px 0; /* Espaciado vertical */
}



/* Estilo para la sección de Protección y Tratamiento de Datos Personales */
.data-protection {
    background-color: #f9f9f9; /* Fondo claro */
    padding: 20px; /* Espaciado interno */
    text-align: center; /* Centra el texto */
    margin-top: 20px; /* Espaciado superior para separación */
}

.data-protection__text {
    font-size: 1rem; /* Tamaño de fuente estándar */
    line-height: 1.5; /* Altura de línea para mejor legibilidad */
    color: #333; /* Color del texto */
}




/* Media Queries 800px*/
@media (max-width: 800px) {

    .container {
        width: 90%;
        max-width: 1200px;
        margin: 0 auto;
        overflow: hidden;
        padding: var(--padding-container);
    }

    .hero {
        position: relative;
        width: 100%;
        height: 100%;
        min-height: 80vh;
        display: flex;
        flex-direction: column;
        color: #fff;
        overflow: hidden;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        animation: fade 20s infinite;
    }

    /* CARRUSEL DE IMÁGENES */
    @keyframes fade {
        0% {
            background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img1.jpg");
        }
        20% {
            background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img2.jpg");
        }
        40% {
            background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img3.jpg");
        }
        60% {
            background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img4.jpg");
        }
        80% {
            background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img5.jpg");
        }
        100% {
            background-image: linear-gradient(180deg, var(--color-bg-hero) 0%, var(--color-bg-hero)), url("../images/img1.jpg");
        }
    }

    /* Ajustes para hero en pantallas pequeñas */
    .hero {
        background-size: contain;
        background-position: center center;
        min-height: 50vh;
    }

    /* Estilos generales de precios */
    .price {
        text-align: center;
    }

    .price__table {
        padding-top: 60px;
        display: flex;
        flex-wrap: wrap;
        gap: 2.5em;
        justify-content: space-evenly;
        align-items: center;
    }

    .price__element {
        position: relative;
        text-align: center;
        border-radius: 10px;
        width: 100%;
        max-width: 330px;
        padding: 40px;
        --color-plan: #ffffff;
        --color-price: #ffffff;
        --bg-cta: #fff;
        --color-cta: #546bd4;
        --color-items: #ffffff;
        overflow: hidden;
    }

    .price__element::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-image: url('ruta/a/tu/imagen1.jpg');
        background-size: cover;
        background-position: center;
        opacity: 0.5;
        z-index: 1;
    }

    .price__element > * {
        position: relative;
        z-index: 2;
    }

    .price__element--best {
        width: 100%;
        max-width: 370px;
        padding: 60px 40px;
        background-color: var(--accent-color);
        --color-plan: rgba(255, 255, 255, 0.75);
        --color-price: #fff;
        --bg-cta: #fff;
        --color-cta: #FFF;
        --color-items: #fff;
    }

    .price__element--best::before {
        background-image: url('ruta/a/tu/imagen2.jpg');
    }

    .price__element:nth-child(3)::before {
        background-image: url('ruta/a/tu/imagen3.jpg');
    }

    /* Ajustes en pantallas pequeñas para precios */
    .price__element {
        padding: 20px;
    }

    .price__element--best {
        padding: 30px;
    }

    .price__price {
        font-size: 2rem;
    }

    .price__features {
        font-size: 1.1rem;
    }

    .small-text {
        font-size: 0.8rem;
    }

    /* Configuración de logo */
    .nav__logo {
        width: 80px;
        margin-left: 20px;
        margin-top: 10px;
    }

    /* Ajuste para nav__test */
    .nav__test {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        transition: width 0.3s ease, margin-right 0.3s ease;
        margin-right: 10px;
    }

    /* Imagen de prueba (test) */
    .test {
        width: 80px;
        height: auto;
        margin-left: 20px;
        margin-top: 34px;
        align-self: center;
    }

    .hero__title {
        font-size: 2.5rem;
    }

    /* Ajuste de secciones en pantallas pequeñas */
    .about__main {
        gap: 2em;
    }

    .about__icons:last-of-type {
        grid-column: 1 / -1;
    }

    .knowledge__container {
        grid-template-columns: 1fr;
        grid-template-rows: max-content 1fr;
        gap: 3em;
        text-align: center;
    }

    .knowledge__picture {
        grid-row: 1 / 2;
        justify-self: center;
    }

    .testimony__container {
        grid-template-columns: 30px 1fr 30px;
    }

    .testimony__body {
        grid-template-columns: 1fr;
        grid-template-rows: max-content max-content;
        gap: 3em;
        justify-items: center;
    }

    .testimony__img {
        width: 200px;
        height: 200px;
    }

    .questions__copy {
        width: 100%;
    }

    .footer__container {
        flex-wrap: wrap;
    }

    .nav--footer {
        width: 100%;
        justify-items: center;
    }

    .nav__link--footer {
        width: 100%;
        justify-content: space-evenly;
        margin: 0;
    }

    .footer__form {
        width: 100%;
        justify-content: space-evenly;
    }

    .footer__input {
        flex: 1;
    }
}

/* FIN Media Query 800px */




/* Media Query para pantallas de 600px o menos */
@media (max-width: 600px) {
    /* Ajuste para el menú de navegación */
    .nav {
        padding: 0 10px; /* Añade un poco de padding lateral */
    }

    .nav__logo {
        width: 70px; /* Aumenta el tamaño del logo (ajusta este valor según lo desees) */
        margin-left: 0; /* Mantiene el logo centrado */
        margin-top: 1px; /* Ajusta este valor para moverlo hacia abajo */
    }
    

    .logo {
        width: 100%; /* Hace que el logo ocupe el 100% del espacio disponible */
        max-width: 50px; /* Limita el ancho máximo del logo */
    }

      
    .nav__link {
        list-style: none; /* Elimina el marcador de lista */
        padding: 0;
        margin: 8px;
    }

    .nav__test {
        width: 60px; /* Ajusta el tamaño para pantallas pequeñas */
        margin-top: 15px; /* Baja la imagen */
        margin-left: -39px; /* Mueve la imagen más a la izquierda */
    }
    

    .test {
        width: 15px; /* Tamaño reducido de la imagen */
        margin-top: 9px; /* Ajuste adicional para bajar la imagen */
    }
    
   

    

    /* Otros ajustes para la sección Hero y demás elementos */
    .hero {
        height: 50vh; /* Ajusta la altura del héroe para pantallas pequeñas */
        background-size: cover; /* Mantiene la cobertura completa */
        background-position: center; /* Centra el fondo */
    }

    .hero__title {
        font-size: 2rem; /* Ajusta el tamaño de la fuente del título */
    }

    .hero__paragraph {
        font-size: 1rem; /* Ajusta el tamaño de la fuente del párrafo */
    }

    /* Estilo para subtítulos */
    .subtitle {
        font-size: 1.8rem; /* Ajusta el tamaño del subtítulo */
    }

    /* Estilo para la sección de precios */
    .price__element, .price__element--best {
        width: 90%; /* Asegúrate de que los elementos de precio ocupen el 90% del ancho disponible */
        padding: 20px; /* Ajusta el padding para mejor visualización */
    }

    .price__price {
        font-size: 2rem; /* Ajusta el tamaño de la fuente del precio */
    }

    /* Estilo para testimonios */
    .testimony {
        --padding-container: 60px 0; /* Ajusta el padding del contenedor de testimonios */
    }

    .testimony__container {
        grid-template-columns: 28px 1fr 28px; /* Define columnas en el contenedor de testimonios */
        gap: .9em; /* Espacio entre elementos */
    }

    .testimony__arrow {
        width: 100%; /* Ajusta el ancho de la flecha de testimonios */
    }

    .testimony__course {
        margin-top: 15px; /* Margen superior del curso en testimonios */
    }

    /* Estilo para preguntas */
    .questions__title {
        font-size: 1rem; /* Ajusta el tamaño de la fuente del título de preguntas */
    }

    /* Estilo para el pie de página */
    .footer__title {
        justify-self: start; /* Justifica el título del pie de página */
        margin-bottom: 15px; /* Margen inferior del título */
    }

    .nav--footer {
        padding-bottom: 60px; /* Padding inferior para el nav del pie de página */
    }

    .nav__link--footer {
        justify-content: space-between; /* Justifica el contenido de los enlaces del pie de página */
    }

    .footer__inputs {
        flex-wrap: wrap; /* Permite que los inputs del pie de página se envuelvan */
    }

    .footer__input {
        flex-basis: 100%; /* Los inputs ocupan todo el ancho */
        margin: 0; /* Margen cero */
        margin-bottom: 16px; /* Margen inferior de los inputs */
    }

    .footer__submit {
        margin-right: auto; /* Ajusta el margen derecho del botón de envío */
        margin-left: 0; /* Margen izquierdo cero */
    }

    .about__icon {
        width: 150px; /* Ajusta el tamaño de los íconos de la sección About */
        height: 150px; /* Mantiene la proporción */
    }

    .footer__icons {
        flex-direction: column; /* Cambia a columna si hay muchos íconos */
        align-items: center; /* Centra los íconos */
    }

    .footer__img {
        width: 40px; /* Ajusta el tamaño de los íconos en el pie de página */
        height: 40px; /* Mantiene la proporción */
    }
}

    /* Estilo para el título del mapa */
.footer__map-title {
    font-size: 2rem; /* Tamaño de fuente del título */
    font-weight: bold; /* Negrita */
    margin-top: 20px; /* Ajusta el margen superior del título */
    margin-bottom: 45px;
    color: #001a49; 
}

/* Estilo para el iframe del mapa */
.footer__map iframe {
    width: 100%; /* Ancho completo */
    height: 500px; /* Altura aumentada del mapa */
    border: 0; /* Sin borde */
}

/* Estilo para la línea de separación */
.footer__separator {
    border-top: 1px solid #fff; /* Línea blanca */
    margin: 20px 0; /* Margen superior e inferior */
}

/* Estilos específicos para pantallas menores de 600px */
@media (max-width: 600px) {
    .footer__map-title {
        margin-top: -200px; /* Reduce el margen superior en pantallas pequeñas */
        font-size: 1.5rem; /* Ajusta el tamaño de fuente si es necesario */
    }
}


