body {
    position: relative;
    margin: 0; /* Asegurar que no haya márgenes predeterminados */
}

* {
    padding: 0;
    margin: 0;
    text-decoration: none;
    list-style: none;
    box-sizing: border-box;
    font-family: 'Ubuntu', sans-serif;
}

html {
    scroll-behavior: smooth;
}

h


.image-container {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: bottom right; /* Centra verticalmente pero prioriza mostrar el lado derecho */
}


nav {
    background-color: #1F1F1F;
    height: 80px; /* Ajusté la altura para consistencia con el line-height del menú */
    width: 100%;
    top: 0;
    left: 0;
    position: fixed;
    z-index: 1000; /* Asegurar que la navegación esté por encima de otros elementos */
}

.enlace {
    position: absolute;
    padding: 10px 50px;
}

.logo {
    height: 60px;
}

nav ul {
    float: right;
    margin-right: 20px;
    text-align: center; /* Centra el texto de los elementos de la lista */
}

nav ul li {
    display: inline-block;
    line-height: 80px; /* Alinea verticalmente los elementos del menú con la altura de la navegación */
    margin: 0 5px;
}

/* Estilo general para la barra de navegación */
nav ul li a {
  color: white;
  font-size: 18px;
  padding: 7px 13px;
  border-radius: 3px;
  display: block;
}

/* Media Query para ajustar el tamaño de las letras según el tamaño de la pantalla */
@media (max-width: 800px) {
  nav ul li a {
      font-size: 5vw; /* Esto ajustará el tamaño de la fuente según el ancho de la pantalla */
  }
}

/* Desactivar la parte responsiva de la navbar por debajo de 420px */
@media (max-width: 420px) {
  /* Eliminar la parte del menú responsivo (hamburguesa o el botón) */
  .checkbtn {
      display: none;
  }

  /* Establecer un tamaño de fuente fijo para la navbar */
  nav ul li a {
      font-size: 16px; /* Tamaño fijo para pantallas pequeñas */
      padding: 5px 10px; /* Ajusta el padding para que se vea bien */
  }

  /* Si deseas que el navbar vuelva a su diseño original sin responsividad por debajo de 420px */
  nav {
      height: auto; /* Ajustar la altura del navbar */
  }

  nav ul {
      display: block;
      text-align: left;
  }


}

nav ul li a:hover {
    color: grey;
}

.log-in {
    font-weight: 500;
    padding: 12px 22px;
    background-color: transparent;
    color: #ffffff;
    border-radius: 10px;
    border: 2px solid #6599FF;
    transition: 0.2s;
    font-size: 16px;
    margin-left: -10px;
    cursor: pointer; /* Indica que es un botón interactivo */
    line-height: normal; /* Anula la herencia del line-height del li */
}

.log-in a {
    color: white;
    display: inline; /* Para que no ocupe todo el ancho del botón */
}

.log-in:hover {
    background-color: #6599FF;
    color: white;
}

.checkbtn {
    font-size: 30px;
    color: #ffffff;
    float: right;
    line-height: 80px;
    margin-right: 40px;
    cursor: pointer;
    display: none;
}

#check {
    display: none;
}

main {
    padding: 20px; /* Aumenté el padding para más espacio alrededor del contenido principal */
    margin-top: 10px; /* Asegurar que el contenido principal no se superponga con la navegación fija */
}

.redes {
    margin-top: 20px;
    display: grid; /* Usar grid para un diseño más flexible en diferentes tamaños de pantalla */
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); /* Crear columnas que se ajusten al contenido */
    gap: 15px; /* Espacio entre los elementos de la grid */
}

.whatsapp,
.mail,
.telefono {
    background-color: #c4c2c2;
    border-radius: 10px;
    padding: 20px; /* Reduje el padding para un diseño más compacto */
    text-align: center;
    display: flex; /* Para alinear icono y texto verticalmente */
    flex-direction: column; /* Apilar icono y enlaces */
    align-items: center; /* Centrar los elementos */
    justify-content: center; /* Espaciar el contenido verticalmente */
}

.redes span {
    font-size: 40px; /* Ajusté el tamaño del icono */
    color: black;
    margin-bottom: 10px; /* Espacio entre el icono y los enlaces */
}

.redes p {
    font-size: 18px; /* Ajusté el tamaño de la fuente de los párrafos */
    color: black;
    margin: 5px 0; /* Ajusté los márgenes para espaciado vertical */
}

.main-footer {
    padding: 40px 20px; /* Añadí padding horizontal para pantallas más pequeñas */
    display: flex;
    justify-content: space-evenly;
    background-color: #1F1F1F;
    flex-wrap: wrap; /* Permite que los elementos se envuelvan en pantallas pequeñas */
}

.main-footer ul {
    list-style: none;
    padding: 0; /* Eliminar el padding predeterminado de la lista */
    margin: 10px 0; /* Añadir margen vertical para espaciado entre secciones en pantallas pequeñas */
}

.main-footer h1 {
    font-size: 22px;
    line-height: 117%;
    color: #ffffff;
    margin-bottom: 10px;
    font-weight: 500;
}

.main-footer h2 {
    color: #ffffff;
    font-weight: 500;
    margin-bottom: 15px; /* Añadí margen inferior */
}

.main-footer ul li a {
    color: #ffffffcc;
    text-decoration: none;
    display: block; /* Para que los enlaces ocupen todo el ancho del li */
    padding: 5px 0; /* Añadí padding vertical para mejor interacción */
}

footer {
    background-color: #1F1F1F;
    border-top: 1px solid #1d2742;
    font-size: 17px;
    padding: 15px 10px; /* Añadí padding horizontal */
    color: #ffffff;
    text-align: center;
}

footer a {
    text-decoration: none;
    color: #ffffff;
}

.logoinfo p {
    color: #6EB981;
    font-size: 17px;
    margin-top: 5px;
}

.contact-details {
    margin-top: 20px;
}

.contact-details li {
    list-style: none;
    margin: 10px 0;
    display: flex; /* Para alinear icono y texto */
    align-items: center;
}

.contact-details li a {
    text-decoration: none;
    color: #f1f1f1;
    margin-left: 10px; /* Espacio entre el icono y el texto */
}

.contact-details .fa {
    color: #f1f1f1;
    margin-right: 10px;
    font-size: 1.2em; /* Ajusté el tamaño del icono */
}

.sociallogos {
    padding: 20px 0;
    display: flex; /* Para alinear los logos */
    gap: 10px; /* Espacio entre los logos */
}

.sociallogos .logobox a {
    padding: 10px; /* Añadí padding alrededor del logo */
    text-decoration: none;
    color: #ffffff;
    font-size: 22px;
    border-radius: 5px; /* Añadí un pequeño borde redondeado */
    display: inline-flex; /* Para centrar el icono dentro del "box" si fuera necesario */
    align-items: center;
    justify-content: center;
}

.com ul li {
    padding: 5px 0;
}

.info-main {
    background-color: #f4f4f4; /* Un gris claro como fondo */
    padding: 20px; /* Añadí padding alrededor de la sección principal */
}

.primer,
.segund {
    background-color: #c4c2c2; /* Un gris más claro para los contenedores */
    border-radius: 10px;
    padding: 25px; /* Ajusté el padding */
    margin-bottom: 15px;
}

.primer h2,
.segund h2 {
    margin-top: 0; /* Eliminar el margen superior predeterminado de los h2 */
    margin-bottom: 10px; /* Añadir espacio debajo de los títulos */
    color: #000000; /* Un color de texto más oscuro */
}

.primer p,
.segund p {
    color: #333; /* Un color de texto más claro para el párrafo */
    line-height: 1.6; /* Mejora la legibilidad del texto */
}

@media (max-width: 952px) {
    .enlace {
        padding-left: 20px;
    }

    nav ul li a {
        font-size: 16px;
    }
}



@media only screen and (max-width: 500px) {
    .main-footer {
        padding: 20px;
        display: grid;
        grid-template-columns: 1fr; /* Una sola columna para pantallas muy pequeñas */
    }

    .info {
        padding: 20px 0;
        text-align: center; /* Centrar el contenido en pantallas pequeñas */
    }

    .com {
        text-align: center; /* Centrar el contenido en pantallas pequeñas */
    }

    .logoinfo {
        text-align: center; /* Centrar el contenido en pantallas pequeñas */
    }

    .contact-details {
        align-items: center; /* Centrar los elementos */
    }

    .contact-details li {
        flex-direction: column; /* Apilar icono y texto */
        align-items: center;
    }

    .contact-details li a {
        margin-left: 0; /* Eliminar margen izquierdo */
        margin-top: 5px; /* Añadir espacio entre icono y texto */
    }

    .sociallogos {
        justify-content: center; /* Centrar los logos */
    }
}
@media (max-width: 600px) { /* Ajusta el ancho máximo según sea necesario */
    .telefono {
        width: 100%; /* Asegura que el recuadro ocupe todo el ancho */
        padding: 20px; /* Ajusta el espaciado interno */
        margin: 0; /* Elimina márgenes innecesarios */
        box-sizing: border-box; /* Incluye el padding en el ancho total */
    }

    .telefono span {
        display: block; /* Hace que el icono y el texto se apilen */
        margin-bottom: 10px; /* Añade espacio entre el icono y el texto */
    }
}

@media (max-width: 670px) and (min-width: 455px) {
    .redes {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); /* Ajusta el ancho mínimo según necesites */
        gap: 15px; /* Espacio entre los recuadros */
        padding: 10px; /* Añade un poco de padding alrededor si es necesario */
    }

    .whatsapp,
    .mail,
    .telefono {
        width: auto; /* Permite que los elementos se ajusten al ancho de la grid */
        margin: 0; /* Elimina márgenes individuales */
        box-sizing: border-box; /* Incluye padding y border en el ancho */
        display: flex; /* Para centrar el contenido internamente */
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 20px; /* Ajusta el padding interno según necesites */
    }

    .redes span {
        font-size: 35px; /* Ajusta el tamaño de los iconos si es necesario */
        margin-bottom: 10px;
    }

    .redes p {
        font-size: 16px; /* Ajusta el tamaño del texto si es necesario */
        text-align: center; /* Centra el texto dentro de cada recuadro */
    }
}



@media (max-width: 490px) { /* Ajusta este ancho según necesites */
    nav ul li a {
        font-size: 16px; /* Reduce el tamaño de la fuente */
        padding: 5px 7px; /* Reduce también el padding si es necesario */
    }

    .log-in {
        font-size: 15px; /* Reduce el tamaño de la fuente del botón */
        padding: 8px 16px; /* Reduce también el padding del botón */
        margin-left: -5px; /* Ajusta el margen si es necesario */
    }






}
