/* Estilos generales */
html {
    scroll-behavior: smooth;
    scroll-padding: 5rem;
}

* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}

body {
    font-family: 'HelveticaNowDisplay Bold', Arial, sans-serif;
    background: #8b552f;
    background-repeat: no-repeat;
    background-size: cover;
    overflow-x: hidden;
    touch-action: manipulation;
    zoom: reset;
    margin: 0;
    padding: 0;
}
/* Estilos para el espacio de texto */
.espacio-texto {
    background-image: url("../images/GLASSES.png");
    background-size: cover;
    text-align: center;
    padding: 22vw; /* Utilizamos unidades relativas para el espacio alrededor del texto */
    border-radius: 10px;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
    max-height: 100vh; /* Controla la altura máxima relativa al alto de la ventana */
    overflow-y: auto;
    background-position: center 50%; /* Centra la imagen verticalmente */
}

/* Estilos para el texto dentro del espacio */
.espacio-texto p {
    font-size: 4vw; /* Utilizamos unidades relativas para el tamaño del texto */
    color: #fff;
    font-family: 'Gotham', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    margin: -20vw;
    margin-bottom: auto; /* Empuja el párrafo hacia la parte superior */
}
/* Estilos para encabezados */
h3, h4, h5, h6, h7, h8 {
	font-size: 30px;
	padding-bottom: 10px;
    font-family: 'Raleway', Arial, sans-serif;
    color: #000;
}
h2{
	font-size: 50%;
	padding-bottom: 10px;
	margin-left: 6px;
    font-family: 'Raleway', Arial, sans-serif;
    color: white;
}
/* Estilos para la sección de mapa y texto */
/* Estilos para el contenedor de imagen */
.imagen {
    flex: 1;
    text-align: center;
    margin-right: 40px;
    margin-left: 40px;
}

/* Estilos para las imágenes dentro del contenedor de imagen */
.imagen img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
    /* Añade otros estilos específicos para las imágenes aquí */
}

/* Resto de los estilos */
/* ... (otros estilos) */
/* Estilos para el contenedor */
.contenedor {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px 0;
    border-radius: 10px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
    margin: 20px;
}
.contenido {
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Estilos para el contenedor de texto */
.texto {
    flex: 1;
    padding: 20px;
    border-radius: 10px;
    background-color: rgba(243, 243, 243, 0.2);
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
}

/* Estilos para los encabezados en el contenedor de texto */
.texto h2 {
    font-size: 50px;
    padding-bottom: 10px;
    font-family: 'Raleway', Arial, sans-serif;
    color: white;
}

/* Estilos para los párrafos en el contenedor de texto */
.texto p {
    font-size: 20px;
    padding: 8px;
    color: #fff;
    font-family: 'Gotham', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/* Estilos para el primer contenedor */
.contenedor1 {

}

/* Estilos para el segundo contenedor */
.contenedor2 {

}

/* Estilos para el tercer contenedor */
.contenedor3 {
   /* Cambia el color de fondo según tu preferencia */
}

/* Estilos para el mapa de Google */
.mapa {
    flex: 1;
    height: 450px; /* Ajusta la altura según tu preferencia */
    border-radius: 10px;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);


}

.mapa {
    flex: 1;
    text-align: center;
	
}
.mapa iframe {
    width: 100%;
}
.texto {
    flex: 1;
    padding: 20px;
	margin-right: 40px;
	margin-left: 40px;
    border-radius: 10px;
    background-color: rgba(243, 243, 243, 0.2);
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
}

/* Estilos para el pie de página */
footer {
	height: 350px;
    text-align: center;
    padding: 40px 0;
    background-color: #E4B78D;
    border-radius: 10px;
    box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.2);
}

/* Estilos para los párrafos */
.texto p {
    font-size: 22px;
	padding: 8px;
    color: #fff;
    font-family: 'Gotham', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
p {
    font-size: 20px;
    color: #fff;
    font-family: 'Gotham', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/* Estilos para los encabezados en el pie de página */
footer {
    /* Otros estilos para el pie de página */
	height: 400px;
    text-align: center;
    padding: 40px 0;
    background-color: #E4B78D;
    border-radius: 10px;
    box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.2);
    position: relative; /* Agregamos position: relative al pie de página */
	margin-bottom: 0px;
}

footer h8 strong {
    font-size: 20px;
    color: #000;
    position: absolute;
    bottom: 10px; /* Ajusta la distancia desde la parte inferior */
     left: 50%; /* Centra horizontalmente el elemento */
    transform: translateX(-50%); /* Ajusta para centrar completamente */
}
/* Estilos para el contenido adicional */
.contenido-adicional {
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 10px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
    padding: 20px;
    margin: 20px 0;
}

/* Estilos para las redes sociales */
.redes-sociales {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
}

.redes-sociales a {
    text-decoration: none;
    margin: 0 10px;
}

/* Estilos para las imágenes en el contenido adicional */
.contenido-adicional img {
    max-width: 100%;
    height: auto;
    margin: 10px 0;
}

/* Estilos para la sección de contacto y redes sociales */
#container4 {
    width: 50%;
    height: 10;
	max-height: 4%;
    float: left; /* Alineamos a la izquierda */
    margin-top: 0%;
    padding: 0 -10px; /* Añadimos espacio alrededor del contenido */
}

#container5 {
    width: 50%; /* Reducimos el ancho para dejar espacio a las redes sociales */
    height: -10px !important;
    float: right; /* Alineamos a la derecha */
    margin-top: 0%;
}

/* Estilos para la sección de redes sociales */
.seccion6 {
    align-content: center;
    padding-top: 0 0px;
    text-align: left;
    margin-left: 20px; /* Añadimos un margen izquierdo para separar del contenido */
}

/* Estilos para los párrafos dentro de #container4 */
#container4 p {
    font-size: 24px; /* Tamaño más pequeño para los párrafos */
    color: black;
    font-family: Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    margin-bottom: 10px; /* Añadimos espacio inferior */
}

/* Estilos para los párrafos dentro de #container5 */
#container5 p {
    font-size: 30px; /* Tamaño más pequeño para los párrafos */
    color: black;
    font-family: Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    margin-bottom: 10px; /* Añadimos espacio inferior */
}

/* Estilos para las imágenes dentro de párrafos */
p img {
    width: 80px;
    margin-left: 2%;
    display: inline-block; /* Hacemos que las imágenes se muestren en línea */
}

/* Estilos para el menú de navegación */
nav {
    background: #E4B78D;
    padding: 10px 10px;
    border: 1px #E4B78D;
    border-bottom-left-radius: 1em;
    border-bottom-right-radius: 1em;
    box-shadow: 5px 5px 30px;
}

.menu {
    list-style-type: none;
}

.menu li {
    font-size: 20px;
    padding: 10px 0px;
}

.menu li a {
    color: black;
    text-decoration: inherit;
    font-family: "prompt";
}

.menu li a:hover {
    text-decoration: underline;
    margin: 0px 0px;
}

.menu li .logo {
    padding-left: 10px;
}

.menu li .logo img {
    width: 100%;
    box-sizing: 0%;
}

/* Estilos para el botón de menú en dispositivos móviles */
.toggle {
    cursor: pointer;
}

/* Estilos para las barras del botón de menú */
.bars {
    background: #75471B;
    display: inline-block;
    height: 2px;
    position: relative;
    width: 18px;
}

.bars::before,
.bars::after {
    background: #75471B;
    content: "";
    display: inline-block;
    height: 2px;
    position: absolute;
    width: 18px;
}

.bars::before {
    top: 5px;
}

.bars::after {
    top: -5px;
}
.boton {
    display: inline-block;
    background-color: #E4B78D; /* Color de fondo del botón */
    color: #fff; /* Color del texto del botón */
    padding: 10px 20px; /* Espaciado interno del botón */
    font-size: 18px; /* Tamaño del texto del botón */
    text-align: center;
    text-decoration: none;
    border-radius: 5px; /* Bordes redondeados */
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease; /* Transición suave del color de fondo */
    margin: 0 auto; /* Centrar horizontalmente */
}

/* Estilo cuando se coloca el mouse sobre el botón */
.boton:hover {
    background-color: #75471B; /* Cambiar el color de fondo al pasar el mouse */
    color: #fff; /* Mantener el color del texto */
	
}

/* Estilo para el botón cuando se hace clic */
.boton:active {
    background-color: #75471B; /* Cambiar el color de fondo al hacer clic */
    color: #fff; /* Mantener el color del texto */
}
.boton-container {
    text-align: center; /* Centrar el contenido horizontalmente */
    margin-top: 20px; /* Añadir espacio superior */
}
/* Media queries para dispositivos móviles */
#TEC {
    display: flex;
    justify-content: center; /* Centra horizontalmente las imágenes */
    align-items: center; /* Centra verticalmente las imágenes */
    padding: 10px; /* Añade espaciado interior al contenedor */
	padding-top: 30px;
}

/* Estilos para las imágenes dentro del contenedor */
#TEC img {
    max-width: 20%; /* Ajusta el ancho máximo de las imágenes */
    height: auto; /* Mantiene la proporción de aspecto de las imágenes */
    margin: 5px; /* Añade un margen alrededor de las imágenes */
    /* Puedes agregar otros estilos específicos para las imágenes aquí */
}
@media all and (max-width: 768px) {
    .menu {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        overflow: hidden;
        max-height: 1;
    }

    .menu-open {
        max-height: 500px;
        transition: top 0.5s ease;
    }

    .toggle {
        cursor: pointer;
    }

    .menu-open .item {
        display: block;
    }

    .item {
        width: 100%;
        text-align: center;
        order: 3;
        display: none;
    }

    .item.active {
        display: block;
    }
}
@media all and (min-width: 769px) {
    .menu {
        display: flex;
        flex-direction: row; /* Cambia la dirección a fila */
        flex-wrap: nowrap; /* Evita el salto a la siguiente línea */
        justify-content: space-between;
        align-items: center;
        overflow: hidden;
        max-height: 1;
    }
     .toggle {
        display: none; /* Oculta el botón de menú */
    }
}
@media all and (max-width: 768px){
html {
    scroll-behavior: smooth;
    scroll-padding: 5rem;
}

* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}

body {
    font-family: 'HelveticaNowDisplay Bold', Arial, sans-serif;
    background: #8b552f;
    background-repeat: no-repeat;
    background-size: cover;
    overflow-x: hidden;
    touch-action: manipulation;
    zoom: reset;
    margin: 0;
    padding: 0;
}

/* Estilos para encabezados */
h3, h4, h5, h6, h7, h8 {
    font-size: 30px;
    padding-bottom: 10px;
    font-family: 'Raleway', Arial, sans-serif;
    color: #000;
}

h2 {
    font-size: 50px;
    padding-bottom: 10px;
    margin-left: 6px;
    font-family: 'Raleway', Arial, sans-serif;
    color: white;
}

/* Estilos para la sección de mapa y texto */
.contenedor {
    display: flex;
    flex-direction: column; /* Cambia la dirección a columna */
    align-items: center; /* Centra los elementos horizontalmente */
    padding: 0px 0 !important;
    border-radius: 10px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
    margin: 20px;
}

.mapa, .texto {
    width: 100%; /* Ocupa todo el ancho disponible */
    text-align: center;
    padding: 20px;
    border-radius: 10px;
    background-color: rgba(243, 243, 243, 0.2);
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
    margin: 10px 0;
}
	#container4 {
	padding: -20px;
	}
/* Estilos para el pie de página */
footer {
    height: 460px !important;
    text-align: center;
    padding: 40px 0;
    background-color: #E4B78D;
    border-radius: 10px;
    box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.2);
    position: relative;
}

footer h8 strong {
    font-size: 14px !important;
    color: #000;
    position: absolute;
    bottom: -00px !important;
    left: 50%;
    transform: translateX(-50%);
}

/* Estilos para los párrafos */
.texto p, p {
    font-size: 26px;
    padding: 8px !important;
    color: #fff;
    font-family: 'Gotham', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
 p {
    font-size: 22px !important;
    color: #fff;
    font-family: 'Gotham', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
#container4	 p {
    font-size: 22px !important;
    color: black;
	   padding: 0px !important;
    font-family: 'Gotham', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
/* Estilos para el menú de navegación */
nav {
    background: #E4B78D;
    padding: 10px 10px;
    border: 1px #E4B78D;
    border-bottom-left-radius: 1em;
    border-bottom-right-radius: 1em;
    box-shadow: 5px 5px 30px;
}

.menu {
    list-style-type: none;
}

.menu li {
    font-size: 20px;
    padding: 10px 0px;
}

.menu li a {
    color: black;
    text-decoration: inherit;
    font-family: "prompt";
}

.menu li a:hover {
    text-decoration: underline;
    margin: 0px 0px;
}

.menu li .logo {
    padding-left: 10px;
}

.menu li .logo img {
    width: 100%;
    box-sizing: 0%;
}

/* Estilos para el botón de menú en dispositivos móviles */
.toggle {
    cursor: pointer;
}

.bars {
    background: #75471B;
    display: inline-block;
    height: 2px;
    position: relative;
    width: 18px;
}

.bars::before,
.bars::after {
    background: #75471B;
    content: "";
    display: inline-block;
    height: 2px;
    position: absolute;
    width: 18px;
}

.bars::before {
    top: 5px;
}

.bars::after {
    top: -5px;
}
}

/* Estilos para el texto "Quiénes somos" cuando el ancho de la pantalla sea mayor o igual a 1245px */
@media screen and (max-width: 1245px) {
    .texto h2 {
        font-size: calc(36px + 2 * ((100vw - 960px) / 477)) !important; /* Cambia el tamaño de la fuente del título para pantallas de 1245px o menos */
    }
    .texto p {
        font-size: calc(14px + 2 * ((100vw - 960px) / 477)) !important; /* Cambia el tamaño de la fuente del párrafo para pantallas de 1245px o menos */
    }
}