*{
    margin:0;
    padding:0;
    box-sizing: border-box;
    --color1:#0000ff;
    --color2:#f5f5dc;
    --color3:#a52a2a;
    --color4:#000000; /*AFECTA A LOS TEXTOS EN BLOG Y VIDEOS*/
}
#principal{
    height: 748px;
    background-image: url(img/Nestle-fondo-index.jpg);
    background-position: center;
    background-size:cover;
}
#texto_index{ /*Para Título y Descripción del Index*/
    color: var(--color2);
}
#contenedor{    
    position:absolute;
    top:50%;
    left:50%;
    transform: translate(-50%,-50%);
    text-align: center;  
    font-family:'Franklin Gothic Medium';
}
#navegador{ /*barra de navegación en blog,galeria y videos*/
    position: sticky; /*Permite que el contenido dentro también se mueva con el cuadro*/
    top:0;
    background-color: white; /*Permite que al bajar la barra de navegación "cubra" el contenido*/
    border:1px solid white; /*Permite que al bajar la barra de navegación "cubra" el contenido*/
    z-index: 20; /*Permite que al bajar la barra de navegación "cubra" el contenido*/
}
.menu{ /*barra de navegación*/
    display: flex;
    list-style-type: none;
    justify-content: center;
    margin:10px;
}
.menu li{
    padding:10px
}
.menu li a{
    text-decoration: none;
    padding:10px;
    text-transform: uppercase;
    color: var(--color2)
}
.menu li a:hover{
    opacity: 0.5; /*opacidad en la barra de navegación*/
    text-decoration: underline brown;
}
#caf{
    border-bottom: 3px solid orangered;
}
h1{ /*Texto superior en blog, galeria y videos*/
    font-size: 80px;
    letter-spacing: 3px;
    padding:20px;
    font-style:italic;
    text-align: center;
}
h1 a{
    color:var(--color3);
    text-decoration: none; 
}
h1 a:hover{
    opacity: 50%;
}
h2{ /*Subtitulo*/
    font-size: 25px;
    margin: 20px;
    text-align: center;
}
#nestle{ /*main id*/
    width: 60%;
    margin:auto;
    height: 1700px;
}
#nestle nav ul a{ /*color de barra de navegación en blog,nosotros,galeria,videos y contactos*/
    color:var(--color1)
}
#contenido{
    padding:20px;
    color: var(--color3);
}
/*Nosotros*/
.contenido{
    display: grid;
    grid-template-areas: "sup sup sup"
                         "texto texto lateral"
                         "imagen1 imagen2 lateral"
                         "footer footer footer";
    grid-template-columns: 2fr 2fr 1fr;
    gap:20px
}
.cabecera{
    background-color: purple;
    color:white;
    text-align: center;
    grid-area: sup;
}
.seccion{
    text-align: justify;
    padding:5px;
    grid-area: texto;
}
.seccion h3{
    color: black;
    text-align: left;
}
.seccion hr{
    width: 90%;
    margin: 10px auto;
    border:1px dotted var(--color1);
}
.lateral{
    display:flex;
    justify-content: center;
    align-items: center;
    grid-area: lateral;
}
.imagen1,.imagen2{
    height: 200px;
    color:white;
    display: flex;
    justify-content: center;
    align-items: center;
}
.imagen1 img,.imagen2 img{
    width: 80%;
    box-shadow: 2px 2px 2px var(--color1);
}
.imagen1{
    grid-area: imagen1;
}
.imagen2{
    grid-area: imagen2;
}
.pie{
    height: 50px;
    margin-bottom: 10px;
    background-color: purple;
    color:white;
    display: flex;
    justify-content: center;
    align-items: center;
    grid-area: footer;
}
/*Final Nosotros*/
#fabrica img{ /*imagen principal en blog*/
    width: 100%;
}
#lateral_izq{ /*imagen lateral izquierda en blog*/
     float:left;
     margin:10px;
     width: 200px;
}
aside{ /*contenido en foto lateral derecha en blog*/
    float:right;
    text-align: center;
    font-size: 13px;
    color:var(--color4)
}
#foto{ /*foto lateral derecha en blog*/
    width:40px;
    border-radius: 50%;    
}
#contenido p{ /*párrafo*/
    text-align: justify;
    padding:20px;
    color: var(--color4);
}
footer p{
    margin-bottom: 30px;
}
#galeria{ /*flexbox para centrar las imagenes*/
  margin: auto;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.item { /*márgenes para las imagenes*/
    width: 30%;  
    margin:14px;
    text-align: center; 
}
.item img { /*sombreado en las imagenes*/
  width:100%;
  box-shadow: 5px 5px 5px var(--color4);
}
.item a{ /*opacidad de la imagen*/
    opacity: 0.8;
}
.item a:hover{
    opacity: 1; /*opacidad al pasar el cursor*/
}
#contenido .item p{ /*texto debajo de la imagen*/
    text-align: center;
    font-style: italic;
    color:var(--color3);
}
.video{ /*bordeado y centrado del video en cuadro*/
    border:5px double var(--color4);
    position:relative;
    padding-bottom: 55.5%;
    height:0 ;
    margin-top: 10px;
    box-shadow: 5px 5px 5px var(--color4);
}
.video iframe{ /*contenido al insertar un video*/
    width: 100%;
    height: 100%;
    position:absolute;
    top:0;
    left:0;
}
/*Contactos añadido*/
#contacto{
    background: linear-gradient(to top left,rgb(219, 72, 72),rgba(4, 247, 186, 0.979));
}
#contacto div{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.tabla,.formulario,.mapa{
    width: 45%;
    height: 400px;
    margin:20px;
}
.formulario{
    display: flex;
    justify-content: center;
    padding: 10px;
    color: var(--color4);
}
.tabla img{
    display: block;
    margin:5px auto;
    align-content: center;
    max-width: 45%;
    padding:5px;
    border:2px solid var(--color3);
    background-color: white;
}
.tabla table{
    display: flex;
    justify-content: center;
    border-collapse: collapse;
    padding:5px;
}
table th{
    padding:10px;
}
table td{
    padding:10px;
    border:1px solid white;
}
.izq{
    font-weight: bold;
    color: var(--color3);
}
th, h3{
    color:var(--color3);
    text-align: center;
    font-size: 20px;
    font-weight: bold;
}
td{
    color: var(--color4);
}
input,textarea{
    margin-bottom: 8px;
    padding:2px;
}
.btn{
    width:100%;
    padding:5px;
    background-color: var(--color3);
    color:bisque;
    font-weight: bold;
}
.mapa{
    width:75%;
    margin:auto;
    padding:20px;
    border:2px solid var(--color3);
    background-color: white;
}
/*Final de Contactos*/
.redes{ /*contenido dentro de etiqueta footer*/
    display: flex;
    list-style-type: none;
    justify-content: center;
}
.redes li a{
    padding: 5px; /*separación de iconos de redes*/
}
.redes li a:hover{
    opacity: 0.5; /*opacidad en iconos de redes en footer*/
}
.redes li a img{
    filter: invert(100%); /*filtro para tener los iconos png en blanco (color original negro)*/
}
#nestle .redes li a img{ /*iconos en footer dentro de blog, galeria y videos*/
    filter: invert(0); /*filtro para no perder el color negro*/
}